本帖最后由 STM新闻官 于 2024-9-27 13:51 编辑
STM32C0推出新产品线 — STM32C071,拥有高达128 KB的闪存和24 KB RAM,可以通过SPI接口驱动320 x 240的小型图显系统,为小家电及白色家电类产品提供高性价比解决方案。
卡位入门级应用的大闪存需求,STM32C071子系列内存大幅升级 最新上市的STM32C0子产品线STM32C071,内存大幅升级,Flash高达128 KB,RAM高达24KB;相较于较早上市的STM32C031,内存配置提高了四倍。以往受内存限制而不得不采用更高性能微控制器的应用场景,现在有了STM32C071入门级MCU选择,让产品更具竞争力。这类应用多采用USB供电,STM32C071添加了一个无晶振USB控制器。此外,STM32C071的内部时钟可以降低系统对外部晶振的需求,从而降低BOM成本和PCB板布局的复杂性。
尽管STM32C071集成了更大的闪存和RAM,但仍提供与已上市STM32C0相同的TSSOP20封装(6.5毫米x 4.4毫米)。这个封装非常适用于空间受限的USB外接应用,大闪存小封装让这类场景可以实现更复杂的应用程序。
STM32C071让GUI更普及 通常,基于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功能图
从STM32C0开始创建入门级应用 尽管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振荡器,引脚全兼容,无需添加外部组件。
STM32C0产品路线 近期,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。
|