返回列表 发新帖我要提问本帖赏金: 30.00元(功能说明)

[AT32F403/403A] 国产替代进口:雅特力AT32F403ZGT6取代STM32F103VET6

[复制链接]
9459|19
 楼主| abner_ma 发表于 2021-9-3 16:37 | 显示全部楼层 |阅读模式
#申请原创#
   由于疫情STM32被炒上天了。原来二十元芯片炒到几百元,还的等货。
   原来板子用的STM32:这片子被吵到300元还供货不稳定。采用雅特力雅特力AT32F403ZGT6取代STM32F103VET6完全OK,感谢国产!使得产品更稳定。
AT32F403ZGT6取代STM32F103VET6相同点:
1) 管脚定义PIN to PIN 兼容:相同封装管脚定义相同。为扩增的外设作管脚复用定义延伸,电源 VSS 晶振都相同。更换上去就可以了。
2) 寻址空间:内存与寄存器逻辑地址相同。扩增的外设占用SXX32保留空间
3) 编译工具:完全相同,例如Keil, IAR


      Q1.jpg


不同点:AT32F403ZGT6比STM32F103VET6更高,更快,更强!主频240M,所有,哪些对时序敏感的要做延时兼容。

替换步骤:
1,步骤一:解焊SXX32F103,换成AT32F403对应型号
Q2.jpg

2,keiL添加:Keil.AT32F4xx_DFP.1.3.7.pack

Q7.jpg



3,startup_stm32f10x_atf403a.s替换  AT32标准库(BSP)模板建立 参见附件文档 “AT32F4xx标准库BSP&Pack应用指南



完美替换!

AT32F403A 兼容性解析:


q3.jpg

  时钟处理:系统时钟源采用HSE, 为了确保量产稳定性, 请修改时钟初始化源代码, 方法如下:打开 system_at32f4xx.c 找到当前的系统时钟频率配置函数,如 168MHz 函数:static void SetSysClockTo168(void)然后按如下方式配置自动顺滑频率切换功能。
  1. /* Wait till PLL is ready */
  2. while((RCC->CR & RCC_CR_PLLRDY) == 0)
  3. {
  4. }
  5. *((unsigned int *)0x40021054) |= (0x30);// 开启自动滑顺频率切换功能
  6. /* Select PLL as system clock source */
  7. RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));
  8. RCC->CFGR |= (uint32_t)RCC_CFGR_SW_PLL;
  9. /* Wait till PLL is used as system clock source */
  10. while ((RCC->CFGR & (uint32_t)RCC_CFGR_SWS) != (uint32_t)0x08)
  11. { }
  12. //此时不需再等待 200us
  13. *((unsigned int *)0x40021054) &=~ (0x30); //关闭自动滑顺频率切换功能
BSP工程替换:
Q4.jpg
Q5.jpg
内部温度传感器存在差异:
描述:AT32F403A 温度传感器为正温度系数,SXX32F103 为负温度系数
解决方法:
按照数据手册中的值并利用下列公式得出温度:
温度(℃) = {(V25 - VSENSE) / Avg_Slope} + 25
这里:V25 = VSENSE 在 25°C 时的数值
  Avg_Slope = 温度与 VSENSE 曲线的平均斜率 (单位为 mV/℃).
  V25 和 Avg_Slope 必须根据数据手册中的典型值参与运算, AT32F403A 与 SXX32F103 不同。

ADC 要求较长的采样时间
描述:ADC 采样电路为适应采样率提升至 2Msps,内部等效 RADC 和 CADC值较大,要求较长的采样时
间。特别在 ADC 输入源阻抗较大时,需满足足够的采样时间以获得准确的转换数据并消除不同
ADC 输入通道转换时的 cross-talk。 
解决方法:
使用时若遇到转换值不如预期,可先尝试设置采样时间至最大 239.5 个 ADC 时钟,再逐步减小
采样时间至合适设置。若可接受较长采样间隔,在不同通道转换间插入 VREFINT 转换也有让转换
数据准确的效果



AT32F4xx标准库BSP&Pack应用指南.pdf (1013.81 KB, 下载次数: 69)



打赏榜单

21小跑堂 打赏了 30.00 元 2021-09-07
理由:恭喜通过原创文章审核!请多多加油哦!

评论

感谢分享,MARK一下,学习了  发表于 2023-6-29 13:40
 楼主| abner_ma 发表于 2021-9-3 16:38 | 显示全部楼层
@21小跑堂   @21小跑堂    @21小跑堂
 楼主| abner_ma 发表于 2021-9-3 16:41 | 显示全部楼层
@21小跑堂
xqp1984 发表于 2021-9-4 12:34 | 显示全部楼层
  "不同点:AT32F403ZGT6比STM32F103VET6更高,更快,更强!主频240M" -- 403 和 403A  作者都弄不清楚,麻烦看清楚说明书,再来讲这些有的没的               
 楼主| abner_ma 发表于 2021-9-4 17:04 | 显示全部楼层
xqp1984 发表于 2021-9-4 12:34
"不同点:AT32F403ZGT6比STM32F103VET6更高,更快,更强!主频240M" -- 403 和 403A  作者都弄不清楚,麻 ...

雅特力科技AT32F403A,A带 Advance 系列,主推型号403已经没有了。
qiao958092084 发表于 2021-9-4 19:28 | 显示全部楼层
ZG怎么会和VE兼容?
muyichuan2012 发表于 2021-9-5 09:14 来自手机 | 显示全部楼层
就是啊  楼主是不是写错了,V系列只能和V系列兼容,都是100脚。
stn13135 发表于 2021-9-6 20:39 | 显示全部楼层
微微的问一下,原来STM32F103VET6的bin能下再到AT32F403ZGT6里么?程序能正常远行么?
caigang13 发表于 2021-9-7 08:02 来自手机 | 显示全部楼层
IO兼容还是很容易做到的
自己的灌饼 发表于 2021-9-7 09:04 | 显示全部楼层
终于找到你了。
哈啊哈!
海滨消消 发表于 2021-9-8 16:11 来自手机 | 显示全部楼层
完美代替,nice
自己造声卡 发表于 2021-9-10 10:15 | 显示全部楼层
这个可以完美的替换,楼主是高手,很棒。
musich 发表于 2021-9-11 22:41 | 显示全部楼层
关键 也不好买啊
liaotian001 发表于 2021-9-11 23:14 | 显示全部楼层
启动时间,唤醒时间太长,系统的实时响应性能AT32较差
2860419417 发表于 2021-9-11 23:42 来自手机 | 显示全部楼层
这么厉害,跟gd很像
muyichuan2012 发表于 2021-9-12 16:50 来自手机 | 显示全部楼层
liaotian001 发表于 2021-9-11 23:14
启动时间,唤醒时间太长,系统的实时响应性能AT32较差

当然,也有优点嘛,自己的项目满足就行。
x_hzx 发表于 2021-9-13 17:14 | 显示全部楼层
疫情过后。ST还能回归吗。好像认识的同行基本上都在搞国产替代
AKOO 发表于 2021-9-17 14:36 | 显示全部楼层
那么,哪里才能买得到呢?
sparrow054 发表于 2021-10-9 13:58 | 显示全部楼层
zg和VE管脚一样的?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:项目经理
简介:资深嵌入式开发工程师

104

主题

191

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部