[应用方案]

国产MCU之光 第26期:国产真香?极海APM32 应用经验分享

[复制链接]
1517|6
手机看帖
扫描二维码
随时随地手机跟帖
21ic小能手|  楼主 | 2022-9-20 16:27 | 显示全部楼层 |阅读模式
国产MCU之光 第26期:国产真香?极海APM32替换STM32经验分享


*阅读说明:详细过程及源码资料等请戳原链接查看


国产APM32F103ZET6替换STM32F103ZET6经验分享
以下是我使用APM32F103ZET6替换STM32F103ZET6的一些分享,参考了网上各路大神的资料后作的总结。
1 从手册中分析资源,基础信息一模一样
1.1 引脚定义
1.2 结构框图
1.3 存储地址映射
1.4 时钟树
1.5 最小系统电路

2 用STM32F103xE的Keil工程、代码烧录到APM32F103xE中,实现基本烧录功能
2.1 编译工具
2.2 烧录器
2.3 烧录接口
2.4 编译下载
2.5 脱机编程器
2.6 JTAG ID不同


国产APM32F103ZET6替换STM32F103ZET6经验分享(二)
3 参数与电气特性的差异
在使用过程中,我们发现APM32F103ZE和STM32F103ZE的参数和电气特性不一样,在这种情况下,我们可能会遇到一些问题,以下通过手册对比总结了一些模块的差异。

3.1 时钟
3.1.1 温度、电压的环境引起HSI的精度差异
3.1.2 HSE起振时间差异引起系统时钟配置存在差异

3.2 FLASH
3.2.1 APM32F103xE的页擦时间、片擦时间、写时间比STM32F103xE的快
3.2.2 Flash等待周期的配置差异
3.2.3 Flash擦写过程中关闭中断

3.3 功耗
3.4 GPIO3.4.1 GPIO配置为浮空输入的抗干扰能力
3.5 USBD与CAN共用
3.6 运行代码的速度有差异
3.7 Boot0引脚接地问题

4 总结


[国产替代正当时] 极海MCU初体验——APM32F103 MINI开发板
最近由于公司有国产替代需求,所以评估国产的MCU。通过之前参加的展会了解到极海MCU是pin to pin 全兼容ST芯片的,听说代码都不用改,焊上芯片,把代码烧烧进去就能运行的。这也是最吸引我的一点;直接用极海芯片替代ST,即满足公司需求,我们又省了很多工作。
接下来,我们来研究下是不是真的是全兼容。

对比下来确实都差不多,极海的主频96Mhz比ST还高,
接下来下载他们的SDK跑跑看,下载路径:技术支持=》APM32微控制器=》软件支持
接下来,验证下ST的代码是不是不用改直接烧到极海芯片上就能用。

目前初步验证极海MCU是pin topin 全兼容ST芯片的,代码也不用改。那替换起来就省心多了。


基于STM32F105移植极海E103&F103CAN2——(一)移植流程
产品介绍
APM32F103xC系列(如F103RC/VC)、以及APM32E103xE(E103RE/VE/ZE)系列产品,相较于市面常见的F103系列产品,新增了CAN2资源。对于一些汽车前装、后装的应用来说,可以用来移植替换原有方案上的Sxx32F105(如果只是用到了双CAN资源,并不需要F105的USB OTG功能)。

测试条件
1、基于Keil MDK 5.29 +Segger Jlink(ST-Link也可以)
2、调试终端客户提供的测试代码(基于STM32F105标准库,移植PM32后CAN2异常)

移植流程:
1、修改工程宏定义(从STM32F10X_CL改成STM32F10X_HD)。
2、使用startup_stm32f10x_hd.s启动文件(作下述对应修改)、并在stm32f10x.h中做相应CAN2中断向量号的修改。
3、CAN_FilterInit()、CAN_ConfigFilter()函数优化
4、注意,对应的接收中断处理函数,也需要跟启动文件.s中的对应。否则会导致中断响应出错、CAN2接收中断无法进入等异常。

结语
测试代码、参考文档等


基于STM32F105移植极海E103&F103CAN2——(二)CAN filter差异
继续往下剖析下APM32F103/E103和STM32F105的CAN2差异。
二者差异
1、让我们先回到代码层面来分析CAN_FilterInit()这个关键函数
2、在STM32F105的平台上,貌似只要配置了以CAN1为偏移值的某部分寄存器(FMR、FA1R),CAN2外设的filter也会同时生效?
3、我们再查看下APM32对CAN1 CAN2的描述
4、额外补充——关于STM32F105的filter号分配

代码实测
基于APM32 SDK的双CAN例程,仿真实测——实际CAN2对应filter偏移地址的寄存器,是被赋值了,跟上述推论一样:
“APM32的CAN1、CAN2,都有其单独关联、激活filter相关的寄存器,有独立的寄存器。”


关于 APM32微型控制器
APM32是基于Arm®Cortex®-M0+/M3/M4内核的优质国产32位通用MCU,具有低功耗、高性能、高集成度以及快速移植等特性。凭借优异的系统性能、丰富的协处理功能以及灵活的使用体验,有助于用户缩短产品设计时间、降低开发成本、实现性能最优化。目前可广泛应用于工业控制、医疗设备、汽车电子以及智慧家庭等领域。
APM32-cn.png
时间线路图

使用特权

评论回复
评论
cooldog123pp 2022-9-30 08:09 回复TA
型号还挺多! 
cooldog123pp| | 2022-9-25 16:04 | 显示全部楼层
极光应该是国产MCU后起之秀?雅特力,GD,航顺用过,极光还没接触过。

使用特权

评论回复
评论
Zhang123D 2022-9-26 14:26 回复TA
可以试试 
firefly2k| | 2022-9-26 15:07 | 显示全部楼层
他们家开发板贵的要命,感觉他们家就是靠卖开发板赚钱的

使用特权

评论回复
iamrookie| | 2022-9-27 12:15 | 显示全部楼层
开发板赚不了多少钱,开发板去哪里买?

使用特权

评论回复
Stahan| | 2022-10-4 20:03 | 显示全部楼层
开发板去哪里可以买啊:?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则