嵌入式开发经验
任何开发都依赖硬件,在嵌入式领域。
CPU的外设很重要,我们一般都是根据外设进行开发。其实CPU的核心(ARM、PowerPC等)反而对于我们而言并不是那样重要。
开发时,一个好的硬件测试平台很重要。包括调试器和开发环境。
同时,芯片数据手册和参考手册很重要。但是绝对不是硬生生地像阅读一本教科书一样进行开发。
我们需要一种更加规范的,效率更高的开发方式。我们可以从GNU/LINUX操作系统上找到开发嵌入式的灵感。上面的一些软件开发的哲学非常适合我们。
嵌入式开发是一个很矛盾的地方,既需要关心底层的硬件的电路板,又需要关心寄存器,又需要关心上面的操作系统和应用。需要操心的东西是比较多的,这些东西是需要时间去积累的。
一般的应用开发,比如
windows下面的开发:基于windows提供的开发环境(比如visual studio)
GUN/Linux的开发:基于GUN工具集(make、gcc、gdb等等),编辑器有vim、EMACS等
ARM开发:keil、trueStudio等等
PowerPC开发:使用官方推荐的免费的S32DS等
软件开发路线的选择:
设想我们使用的PC机,这是一种很通用的系统。理论上我们必须要基于操作系统提供的服务,然后可以有很多应用被开发出来,这个道理其实是一样的。任何开发绝对不是无根之基。
下面是一些tips:
1、阅读 APPLICATION NOTE
2、检查硬件的连接
3、使用示波器检查晶振,关键点的电压
4、使用万用表检查关键点的电压
5、准备硬件的基本软件测试用例。用于判断问题的位置。
计算机是一个工程化的,很多情况下并不能称之为科学。工程化的东西也就意味着经验。
所以,这也是慢慢在 实际的工作中才能体会到的东西。
到最后都会发现,任何一个工程化的应用都是需要经验的。