6 j- s( `( K8 B: g" }5 W8 ~( E 卡位入门级应用的大闪存需求,STM32C071子系列内存大幅升级 5 P% i! l4 A! s O: Z$ T, J最新上市的STM32C0子产品线STM32C071,内存大幅升级,Flash高达128 KB,RAM高达24KB;相较于较早上市的STM32C031,内存配置提高了四倍。以往受内存限制而不得不采用更高性能微控制器的应用场景,现在有了STM32C071入门级MCU选择,让产品更具竞争力。这类应用多采用USB供电,STM32C071添加了一个无晶振USB控制器。此外,STM32C071的内部时钟可以降低系统对外部晶振的需求,从而降低BOM成本和PCB板布局的复杂性。" \# M, f! t: y5 D! B. c) b 尽管STM32C071集成了更大的闪存和RAM,但仍提供与已上市STM32C0相同的TSSOP20封装(6.5毫米x 4.4毫米)。这个封装非常适用于空间受限的USB外接应用,大闪存小封装让这类场景可以实现更复杂的应用程序。 STM32C071让GUI更普及 3 ]6 F5 l5 ~* U' X通常,基于STM32C071的图显系统成本包括一个没有触摸功能的2.4 TFT显示器、STM32C071、4MB外部闪存,采用2层PCB设计,BOM成本大约5美元。这样的BOM成本和芯片性能让更多的嵌入式系统用得起GUI,比如很多用按键或数码管显示的小家电,可以升级为图显系统,突出产品优势。 以电饭煲UI为例,基于TouchGFX 软件工具开发的代码仅102KB,而部分帧缓冲区和UI框架需要20.8KB的RAM。GUI应用程序大约需要900KB的外部闪存,而STM32C071的SPI接口提供了足够的带宽防止画面卡顿。 当开发者选型时,如果需要STM32G0的降维产品,STM32C071是非常好的选择,它弥合了STM32C0其他系列与STM32G0的性能差,拥有一个USB控制器、新增的SPI和I2C接口、一个32位定时器,相比STM32C011、STM32C031子产品线,可以实现更多功能。STM32C071新增64引脚封装,所有封装与STM32G0引脚全兼容。 ▲ STM32C071功能图 + R! @" E$ K- W' ^& D" M从STM32C0开始创建入门级应用 6 C- D ~" W; |8 G6 L3 s9 k# r3 ] 尽管8位MCU还有一定的市场份额,但多数情况下,选用8位MCU的终极原因是价格。开发者为了降低BOM成本而选用8位MCU,但在降低成本的表象背面是忽略了8位架构后期的高昂潜在成本,也就是说可升级性极为有限。 开发者在MCU选型阶段,会计算目标系统需要的内存、计算吞吐量、引脚等,如果选用8位MCU,后续升级的可能性几近于零;8位MCU的固有局限性也意味着开发者必须对多个设备进行资质认证,这往往会拉长产品上市时间,错失市场先机。同时,嵌入式应用市场以不可逆的迭代方式从8位向32位MCU迈进,在这样的市场条件下还坚持选用8位MCU,那么后续升级到32位时,以前的软件栈和现有代码都不可复用,需要重新开发。 因此,开发者从现在开始,用新型32位MCU STM32C0开始创建入门级应用是一个明智的选择。作为一款用于入门级应用的新型微控制器STM32C0系列,其价格与8位MCU一样便宜,基于Cortex-M0+内核,主频为48 MHz,CoreMark跑分114分,各方面性能远超8位MCU。STM32软硬件生态全面兼容STM32C0,这将为开发者带来极大的便利性。 为了帮助工程师尽可能高效地将系统从8位MCU升级到32位MCU,ST发布了一份从STM8L或STM8S迁移到STM32C0的应用笔记,这份文档不仅详细诠释了外围设备迁移方法,同时还表明,多数情况下,8位迁移到32位架构通常意味着代码大小仅增加6%至15%。STM32的软件开发环境,如STM32CubeMX 和 STM32CubeIDE等软件工具、STM32CubeProgrammer等调试软件或STM32Cube expansion packages 会大幅优化工作流程,可以方便地重用代码或模块,加快开发速度。 此外,值得一提的是,开发者如果选用了STM32C0,当产品性能需要升级时,可快速迁移到STM32G0,两者拥有相同的Vdd和Vss电源,相似的ADC、定时器和高速RC振荡器,引脚全兼容,无需添加外部组件。9 `( J- k2 R. t, T STM32C0产品路线 ) C" S% h; Z }6 S; t/ A9 `- x5 W 近期,STM32C0系列还将发布STM32C051、STM32C091和STM32C092子产品线。 STM32C051的内存是STM32C031的两倍,即64KB的闪存和12KB的RAM,为开发人员提供更多选择。 STM32C091和STM32C092几乎完全相同,配有高达256KB的闪存、两条I2C和两条SPI总线、四个USART接口以及一个最多19个通道的12位ADC,以及比其他型号更多的通用定时器,来支持更复杂的应用程序。两者的主要区别在于,STM32C092有一个FDCAN控制器和30KB的RAM;而STM32C091没有这个控制器,其RAM是36KB。 ) Y8 {- i: d1 ^ " F* [8 F/ q+ {, `$ P( U - \, k+ A6 p9 q6 g+ `- ~8 J5 Q7 Q |
有奖直播 | 详解最新入门级32位MCU-STM32C071
【STM32C0评测】追光小实验
【NUCLEO-C0评测】硬件OLED显示
【Stm32C0测评】学习PWM比较实现呼吸灯
【STM32C0测评】外部中断控制小灯
【STM32C0评测】3、基于Nucleo-c031c6开发板的MAX6675温度采集实验
【STM32C031 评测】ADC采样测试
【STM32C0评测】5、娱乐一下,分享2048游戏
【STM32C0评测】4、驱动Lorasx126x,实现透传
【NUCLEO-C031C6】FOC开环测试
带个TFT屏还是挺好的,芯片能从5刀能降到1~2刀那基本市场稳了。