单片机
返回首页

新手入门ARM汇编 没你想象的那么难

2021-01-29 来源:eefocus

笔者对C已经有10多年的经验,汇编用的很少。后来因为项目需要转到了ARM。一开始对ARM什么都不懂,看了本《ARM体系结构与编程》也是云里雾里的。但是也许是因为无知者无畏吧,直接就在mdk中建立一个工程,添加了自带的启动文件,然后做了个main函数,里面一个死循环没有操作任何硬件,居然跑起来了。然后以此为基础,慢慢的开始控制GPIO和串口通信。


其实,开发ARM还是很简单的,特别是使用mdk的话,会C语言也就能做一些简单的开发了。不要被那些稀奇古怪的东西给搞糊涂了。边开发边学习,项目做深了,那些东西自然就懂了。


罗嗦这么久,说几点建议吧:


1、ARM的汇编没必要去精通的,能够大概看懂就行了。如果一个速度要求苛刻到需要使用汇编的话,我认为可能你更需要的是转变思路,修改算法,比如使用查表代替计算等;


2、工业控制方面因为有实时性和成本要求,一般不使用操作系统,但需要实现一些内存管理,事件管理,邮箱之类的东西。这些需要时间积累,平时写程序注意尽量通用化,然后建立自己的库,以后再用就很方便;


3、对于公司来说,如果项目很大需要用到操作系统、网络、gui、文件系统等,自己做还不如直接买个板子,人家都已经做好了,而且bug很少,自己只要做应用就行了。量大的话还可以定制,算上开发成本,可能更便宜;


4、现在对于外设一般都有现成的库,建议能不用还是不要用吧。因为想要用好这些库,必须对外设寄存器比较熟悉才行,这时候你自己写一个就行了,而且简单的一个寄存器赋值,函数库往往需要调用一个函数来实现,太奢侈了。但是对于运算库还是要用的,比如DSP库等,毕竟人家写的肯定效率要高点;


5、用好中断,这对51和arm是一样的。能用中断的地方绝对不用轮询,中断是单片机的灵魂,你的所有程序都应该围绕中断展开;


6、学好C语言,注意形成自己的编程风格,起好函数名和变量名,多写注释。不要怕麻烦,这些很重要,我一直认为最好的程序风格是使人不需要看注释就能立刻理解程序的意思也就是:程序即注释;


7、对于C语言,用好指针,如果说中断是单片机的灵魂,那么指针就是C的灵魂;


总之,做ARM和做51差不多,关键还是各种外设的寄存器操作。


进入单片机查看更多内容>>
相关视频
  • 【TI MSPM0 应用实战】智能小车+工业角度编码器+血氧仪+烟雾探测器!硬核参考设计详解!

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

  • 直播回放: Microchip Timberwolf™ 音频处理器在线研讨会

  • 基于灵动MM32W0系列MCU的指夹血氧仪控制及OTA升级应用方案分享

精选电路图
  • 1瓦四级调频发射机

  • 500W MOS场效应管电源逆变器,12V转110V/220V

  • 12V 转 28V DC-DC 变换器(基于 LM2585)

  • 红外开关

  • 12V转110V/220V 500W逆变器

  • DS1669数字电位器

    相关电子头条文章