STM32F107和STM32F103的区别
两个系列的处理器都是以“stm32”为开头的,即这两个都是stm32芯片,是意法半导体为ARM Cortex-M3内核出的用于自动控制领域的微处理器。F107是互联型接口,且内部资源较多,F103是增强型(比F101强),相比F103,F107加入IEEE以太网接口,2个IIS音频接口(做音频解码用),全部64KByte的SRAM缓存。除此之外,两系列的芯片基本相同。
这两个芯片的开发方法和调用的库函数都是一样的,通过官方称他们为STM32f10X就知道了,引脚绝大部分也是兼容的。那么在使用中,如果开发产片偏向于以太网和IIS音频设备,建议选用F107系列产品,否则F103就可以了。
两者使用相同的stm32f10xxx reference manual,只是F107属于互联型设备,比F103多了OTG USB和Ethernet模块。通常电路板上,stm32f103采用8MHz外部晶振,stm32f107(互联型,STM32F10_CL)采用25MHz外部晶振(这时候默认时钟不用修改)。
程序在F103和F107间移植时只用改变:
Options-》Device,名称更改。Options-》C/C+±》Define,预编译头文件更改,F103对应STM32F10X_HD(大容量),F107对应STM32F10X_CL。
Options-》Debug-》Settings-》Flash Download-》Programming Algorithm,F107对应STM32F10x Connectivity Line Flash。
注意各个时钟频率,一个外部8M,一个外部25M,设定值影响时钟树。
替换程序启动文件。F103对应startup_stm32f10x_hd.s(大容量),F107对应startup_stm32f10x_cl.s,仅和OTG、Ethernet中断有关。