第一章 STM32移植AT32 概述
前言
雅特力科技于2016年在重庆成立的国产MCU品牌,全系列产品采用55nm先进工艺主打M4内核的高性能32位单片机,目前正式发布的有AT32F403、AT32F413、AT32F415、AT32F403A、AT32F407、AT32F421、AT32F425、AT32WB415、AT32F435、AT32F437等系列。
一、替换概述
雅特力最初发布的403/413/403A/407等系列主要是走的替换STM32F1系列的方式,是高度兼容STM32F1系列的芯片。403A是403的升级版本,同时403的基本也都不再出了,所以后续都是403A为主。
403/413/403A/407这些系列在硬件和软件上都是可以pin to pin的去替换STM32F1系列的对应的型号的,在命名规则方面,后缀(也就是封装、flash内存)这个和STM32的是一样的,比如,AT32F403AVGT7就是对应的STM32F103VGT6,其他6和7只是温度的差距,7是代表-40~105度,6代表-40~85度。虽然AT32的是M4的内核,STM32F1的是M3的内核,但是M4相对比于M3主要是多了浮点等功能,同时雅特力的外设的地址是和STM32的一样,所以基本上都可以直接跑stm32f103的代码。
二、兼容度
最高:
AT32F403A 替换 STM32F103 相同型号系列, AT32F403A最大的封装是VG,默认RAM是96k。
AT32F413 替换 STM32f103 相同型号系列,AT32F413 最大的封装是RC,同时默认的RAM是32K,AT32F413系列可以通过写选项字节把RAM配置到64K。
高:
AT32F415替换STM32F103 相同系列型号,AT32F415 最大封装是RC,同时所有型号RAM只有32K,以及ERTC,USB OTG也不兼容等。
AT32F407 替换 STM32F107 相同型号系列, AT32F407最大的封装是VG,默认RAM是96k。时钟配置部分有差异,以及can2、eth有些差异。
AT32F403A 替换 STM32F105 相同型号系列, AT32F403A最大的封装是VG,默认RAM是96k。AT32F403A没有USB OTG,时钟部分、can2也有差异。
低:
AT32F421主要是替换STM32F030系列的,但是是硬件方面兼容,软件方面需要重做。
AT32F403A/407替换STM32F4系列的,硬件方面64LQFP的封装的调整stm32的VCAP脚的电容为0欧电阻即可。100LQFP的封装的话,除了VCAP脚之外的调整,还需要主要第19PIN的模拟地和stm的VCC是相反的,直接把100PIN的AT32上STM32F4上面会短路。软件方面需要底层重做。
AT32F435/437替换STM32F4系列的,硬件方面可以通过调整VCAP脚的调整,就可以达到硬件兼容的目的。软件方面也是需要底层重做。
三、工具环境
在软件调试方面,仿真工具支持第三方工具jlink,就是驱动版本建议高一些,一直是使用的6.30d的版本,正常没有问题,可在keil下进行仿真调试、下载。通过安装补丁pack包后也可以使用jflash来对芯片进行烧录。也可以使用雅特力官方的ICP工具,通过jlink来里连接MCU,可以进行下载、选型字节等的配置。
总结
总结起来就是STM32f103可以从AT32F403/413/403A/407中选择对于型号,即可兼容;STM32f105/107的在AT32F403A/407中选择,小改就可以达到兼容;至于STM32F4的根据使用的外设资源等可以先评估403A/407系列的,不行可以选择F435/437系列,就是软件方面底层都必须重写;STM32F0系列的只能在AT32F421系列中选择,然后重做底层。
有问题的也可加qq群,技术交流。