8位应广单片机与32位M0单片机开发差异总结

最近做一个项目,需要用到大的RAM和比较高速的ADC配合数据采集,应广单片机已经无能无力了。因此选用了普冉的030单片机。对于习惯使用应广单片机进行处理的人来说,突然转向M0操作,有电不适应,通过对比发现有不一样的地方。下面最做一个小的总结。其中M0使用的是HAL库。

总体感觉:就是应广开发是好比是原子操作,除了数据运算之外,所有的操作都围绕IO和寄存器在转,因此熟悉手册寄存器尤其重要。M0的开发好好比是分子操作,必须熟悉HAL结构体说明,所以的操作基本围绕结构体在转,因此熟悉结构体所表述的意思尤为重要。

1.应广单片机开发必须熟悉规格书和寄存器操作。M0单片机已经把寄存器封装成结构体和对应的意义了,熟悉外设功能和结构体就OK了

2.应广单片机基本所有操作都必须手搓,而M0单片机很多的功能都已经模块化了,只有配置相应的结构体就行了。

3.应广单片机数据运算能力有限,需要注意运算时间和关注数据溢出问题,M0单片机数据运算能力强,可以直接调库使用,虽然是32bit长度,但仍要关注数据溢出问题,因为数据长度变长了,数据溢出问题可能会更加隐秘。

4.应广单片机不用考虑回调函数问题,M0单片机可能涉及到回调函数,回调函数有个个好处就是使程序更加集中,方便查看和管理。

5.应广单片机仿真不是所见即所得,需要用到仿真器进行仿真,然后烧录芯片测试。而M0单片机是在芯片上调试,所见即所得,开发调试也非常方便。

6.应广单片机的代码量一般比较少,任何细节都需要精雕细琢,因此需要对手册非常熟悉,即配即用比较多。而M0单片机经过数据机构的封装之后,基本操作都是先配置,再启动。

7.应广单片机内部时钟简单,一般即配即用,而M0单片机时钟比较复杂和庞大,很多时候再配置参数之前一定要记得打开时钟开关,否则可能出现配置好,无法启动/或是启动无效的问题。

8.应广单片机的外设只能说是够用的样子,而M0单片机有很多外设可以使用,比如Tmr都有N个,而且每个TM都有各自的身手,可以组合使用,配合使用,比如DMA,很多时候配置好了就放在那边不用管了,等中断或是检测完成标记就可以了。

总之,一个是原子操作,一个是分子操作。一个要熟悉手册,要多配寄存器,调试功能;一个要熟悉功能,多改demo,熟悉结构体应用。

相关推荐
悠哉悠哉愿意5 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
一个人旅程~5 天前
如何用命令行把win10/win11设置为长期暂停更新?
linux·windows·经验分享·电脑
Lester_11015 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元5 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133975 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315205 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
Factory_Audit5 天前
亚马逊社会责任验厂审核标准及注意事项
大数据·经验分享
江南小书生5 天前
制造业系统赋能成熟度自测表(实操版)
经验分享·非标制造
Alaso_shuang5 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
三流架构师5 天前
述职报告资源合集
经验分享