国产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,具有低功耗、高性能、高集成度以及快速移植等特性。凭借优异的系统性能、丰富的协处理功能以及灵活的使用体验,有助于用户缩短产品设计时间、降低开发成本、实现性能最优化。目前可广泛应用于工业控制、医疗设备、汽车电子以及智慧家庭等领域。 时间线路图
|
型号还挺多!