首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

51单片机如何转型到ARM设计?

51单片机如何转型到ARM设计?

1.ARM的汇编没必要去精通的,能够大概看懂就行了。我一般在调试的时候才需要


看看。如果一个速度要求苛刻到需要你使用汇编的话,我认为可能你更需要的是转


变思路,修改算法。比如使用查表代替计算等。我做了5年ARM开发,完成了n个项


目,至今没写过一句汇编。
2.工业控制方面因为有实时性和成本要求,我一般不使用操作系统,但我会自己实


现一些内存管理,事件管理,邮箱之类的东西。这些需要时间积累,平时写程序注


意尽量通用化,然后建立自己的库,以后再用就爽了。以前使用过一些操作系统,


发现并没有提高我的开发速度,而且还造成了调试困难的问题,出了bug找都没法


找。
3.对于公司来说,如果项目很大需要用到操作系统、网络、gui、文件系统等,自


己做还不如直接买个板子,人家都已经做好了,而且bug很少,自己只要做应用就


行了。量大的话还可以定制,算上开发成本,可能更便宜。如果你是个人兴趣,那


当我没说。
4.现在对于外设一般都有现成的库,我建议能不用还是不要用吧。因为想要用好这


些库,你必须对外设寄存器比较熟悉才行,这时候你自己写一个就行了,而且简单


的一个寄存器赋值,函数库往往需要调用一个函数来实现,太奢侈了。但是对于运


算库还是要用的,比如DSP库等,毕竟人家写的肯定效率要高点。
5.用好中断,这对51和ARM是一样的。能用中断的地方绝对不用轮询,中断是单片


机的灵魂,你的所有程序都应该围绕中断展开。
6.学好C语言,注意形成自己的编程风格,起好函数名和变量名,多写注释。不要


怕麻烦,这些很重要,我一直认为最好的程序风格是使人不需要看注释就能立刻理


解程序的意思也就是:程序即注释。我有时候会写出a=b-2-1之类的东西,不要认


为这很傻,其实是因为2和1分别代表了两个东西,你直接写成3就给理解增加了难


度,而且这也不会降低效率,编译器会把它翻译成a=b-3的。
7.对于C语言多罗嗦一句,用好指针,如果说中断是单片机的灵魂,那么指针就是C


的灵魂。
总之一句话,做ARM和做51差不多,关键还是各种外设的寄存器操作。
返回列表