
STM32F4相对于STM32F1的改进不只一点点,为了便于初学者了解,我们比对相关资料将改进点进行了汇总。; o) q* Y* m- C1 u- c ( Q; n0 U% O: F7 k. z F1采用Crotex M3内核,F4采用Crotex M4内核。: L+ S! b, S2 n( q* G4 h& y# d/ J6 D1 g & @3 ^+ ]! B% e7 i# q F1最高主频 72MHz, F4最高主频168MHz。 ! g9 Q! A+ B& Y$ g O F4具有单精度浮点运算单元,F1没有浮点运算单元。 F4的具备增强的DSP指令集。F4的执行16位DSP指令的时间只有F1的30%~70%。F4执行32位DSP指令的时间只有F1的25% ~ 60%。9 C+ E3 m" ^5 W% U0 A$ `) A$ J F1内部SRAM最大64K字节, F4内部SRAM有192K字节(112K+64K+16K)。 F4有备份域SRAM(通过Vbat供电保持数据),F1没有备份域SRAM。- X; e& v9 Z F4 V; ^ F4从内部SRAM和外部FSMC存储器执行程序的速度比F1快很多。F1的指令总线I-Bus只接到Flash上,从SRAM和FSMC取指令只能通过S-Bus,速度较慢。F4的I-Bus不但连接到Flash上,而且还连接到SRAM和FSMC上,从而加快从SRAM或FSMC取指令的速度。 5 u R6 s9 e: s7 m0 d$ \; Y F1最大封装为144脚,可提供112个GPIO;F4最大封装有176脚,可提供140个GPIO。) Q7 M( k; V! q. K- \# W. Y( p F1的GPIO的内部上下拉电阻配置仅仅针对输入模式有用,输出时无效。而F4的GPIO在设置为输出模式时,上下拉电阻的配置依然有效。即F4可以配置为开漏输出,内部上拉电阻使能,而F1不行。 ( e, C7 v- ^# [# z. M F4的GPIO最高翻转速度为84MHz,F1最大翻转速度只有18MHz。 F1最多可提供5个UART串口,F4最多可以提供6个UART串口。 F1可提供2个I2C接口,F4可以提供3个I2C接口。1 @0 }+ N6 j* M a f7 v0 O ' L8 Y/ R" [9 h/ O3 v8 ?) H F1和F4都具有3个12位的独立ADC,F1可提供21个输入通道,F4可以提供24个输入通道。F1的ADC最大采样频率为1Msps,2路交替采样可到2Msps(F1不支持3路交替采样)。F4的ADC最大采样频率为2.4Msps,3路交替采样可到7.2Msps。$ p& P* a, D. G8 y, O + [' N1 O6 i- P9 x2 g1 Z F1只有12个DMA通道,F4有16个DMA通道。F4的每个DMA通道有4*32位FIFO,F1没有FIFO。 P" r! R8 P# J9 v+ Y9 L ( d0 l9 K$ i9 Z. b6 N F1的SPI时钟最高速度为 18MHz, F4可以到37.5MHz。2 K1 w7 h* {* X0 |! |! N) Z- n F1没有独立的32位定时器(32位需要级联实现),F4的TIM2和TIM5具有32位上下计数功能。 F1和F4都有2个I2S接口,但是F1的I2S只支持半双工(同一时刻要么放音,要么录音),而F4的I2S支持全双工,放音和录音可以同时进行。, T. r9 Y# ]# v {! F4 Y9 i 1 S6 F! L5 n4 C/ k% D3 K, l8 x# f 作为Cortex M3市场的最大占有者,ST公司在2011年又推出基于Cortex M4内核的STM32F4系列产品,相对与STM32F1/F2等Cortex M3产品,STM32F4最大的优势,就是新增了硬件FPU单元以及DSP指令,同时,STM32F4的主频也提高了很多,达到168Mhz(可获得210DMIPS的处理能力),这使得STM32F4尤其适用于需要浮点运算或DSP处理的应用,也被称之为:DSC,具有非常广泛的应用前景。 STM32F4相对于STM32F1,主要优势如下: 8 E5 k) P) D: V. U' u8 E0 q 1, 更先进的内核。STM32F4采用Cortex M4内核,带FPU和DSP指令集,而STM32F1采用的是Cortex M3内核,不带FPU和DSP指令集。 2, 更多的资源。STM32F4拥有多达192KB的片内SRAM,带摄像头接口(DCMI)、加密处理器(CRYP)、USB高速OTG、真随机数发生器、OTP存储器等。 3, 增强的外设功能。对于相同的外设部分,STM32F4具有更快的模数转换速度、更低的ADC/DAC工作电压、32位定时器、带日历功能的实时时钟(RTC)、IO复用功能大大增强、4K字节的电池备份SRAM以及更快的USART和SPI通信速度。! `1 y" _: K! H. q& L0 A , X0 f* h/ K2 D1 M P- X8 G 4, 更高的性能。STM32F4最高运行频率可达168Mhz,而STM32F1只能到72Mhz;STM32F4拥有ART自适应实时加速器,可以达到相当于FLASH零等待周期的性能,STM32F1则需要等待周期;STM32F4的FSMC采用32位多重AHB总线矩阵,相比STM32F1总线访问速度明显提高。/ n6 P, m: z6 j+ Y/ u 5, 更低的功耗。STM32F40x的功耗为:238uA/Mhz,其中低功耗版本的STM32F401更是低到:140uA/Mhz,而STM32F1则高达421uA/Mhz。$ K# C0 d% {0 ^. i2 K 3 J |5 g$ b1 ?! T |
【经验分享】STM32F1 GPIO工作原理
【经验分享】STM32F0xx_DMA收发USART数据配置详细过程
【经验分享】STM32F1和STM32F4 区别
【经验分享】STM32F1系列之常用外设说明
【经验分享】STM32介绍
【经验分享】STM32F1x系列——Flash 模拟 EEPROM
【经验分享】STM32F1在MDK下新建标准库函数工程
【经验分享】stm32f1的存储器与复位
【经验分享】STM32F10X-架构
【经验分享】stm32F1 us延时函数