Chinaunix首页 | 论坛 | 博客
  • 博客访问: 36113
  • 博文数量: 18
  • 博客积分: 392
  • 博客等级: 一等列兵
  • 技术积分: 210
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-22 18:10
文章分类
文章存档

2011年(18)

我的朋友
最近访客

分类: 嵌入式

2011-03-04 20:17:14

      怎样做才能快速的成为嵌入式高手呢? 其实,做工程是没有捷径可走的.听听下面一个大牛人写的!看看有何真经?

       先说做硬件:

       把你的数字电路教材和模拟电路的教材读熟,暂时先把重点放在数字电路上面,接着把微机原理和接口技术读熟悉了,最好能用汇编写几个简单的程序上机调试一下,这是很重要的。

       完成上面的工作大概需要半年,不管你有多么的聪明,除非你以前这个基础就打的不错,否则,还是老老实实花上至少半年的时间!还是那句话,没有捷径可走,如果你相信那些什么“21天学通xx”什么的,那么我告诉你,放弃做工程吧!再说,你这么容易就学会了,别人也能的,你确定能拿到高薪吗?
下一步,就是选择一个DSP(或其它的嵌入式CPU)平台作为你的目标平台,先熟悉它的架构和与外围电路的接口,然后学习她的指令集,也要写一些小程序去跑一下。这个时候,你应该去买一个开发板了,一般的厂家附带会给你一些demo程序,看懂它,理解它,修改它,在你的板子上跑一跑。

       完成上面两步,说明你已经入了这个行业的门了,下一步,想成为高手的话,就是自己去设计一些项目了,这个阶段所花的时间每个人都是不同的,要看你的造化(主要是前面的基础是否牢固)了。

       再说说软件:

       在嵌入式行业,你想做软件开发的话,没别的,那就深入理解C语言,尤其是C的指针,如果你以前学过C,但是没有意识到C相比其它的高级语言的优点的话(不是听别人说的,你自己的体会),你可以按下面步骤来理解C:

       1、重新翻一遍C的教材,记住一些常用的C语法,但不要死抠语法;

       2、从编译器的角度来理解C;

        从编译原理的角度来理解你工作中使用的高级语言,如果你做到这一点,至少有两个好处:

        第一个好处是避免一大堆低水平重复出现的编译错误。一名优秀的Coder平均在一个工作日中应该完成200行以上的源码,其编译错误应该控制在5个以下,要知道这200行源码不是一次完成的,所以大多数情况下你都要追求一次编译通过;

       第二个好处是可以提高源码的可读性和效率。规范地编写你的代码使你自己的逻辑清晰,因为你明白多加几个括号和空行、多换行对齐、多注释,编译器是会自动识别的,不影响程序执行的效率,反过来,控制好递归调用和循环内的if语句才是提高程序效率的关键,要全力避免递归,但要深刻理解递归,能通过自己建立堆栈来把递归程序转换成非递归程序,要求还是较高的哦!

       3、从硬件的角度来理解C。

       完成上面3步,你就是C的高手了,接下来应该去看看软件工程方面的书了,这个我还不太懂,不敢妄言。

       另外说说教材的选择:学一门东西,选好你的教材,只要一本就可以了。坚决防止这种情况的出现:去图书馆借很多本书,像抢劫似的,而只是每一本都翻翻,就又还给图书馆了的!注意上面我把汇编语言放在硬件学习的板块里面,是由于汇编跟硬件的关系太紧密了,以至于是先学汇编还是先学习硬件电路和CPU架构成了要分清到底是“先有鸡还是先有蛋”的千年哲学难题了。

       嵌入式操作系统一览

       其实,嵌入式系统并不是一个新生的事物,从八十年代起,国际上就有一些IT组织、公司,开始进行商用嵌入式系统和专用操作系统的研发。这其中涌现了一些著名的嵌入式系统:

       Windows CE

       Microsoft Windows CE是从整体上为有限资源的平台设计的多线程、完整优先权、多任务的操作系统。它的模块化设计允许它对于从掌上电脑到专用的工业控制器的用户电子设备进行定制。操作系统的基本内核需要至少200K的ROM。

       VxWorks

       VxWorks是目前嵌入式系统领域中使用最广泛、市场占有率最高的系统。它支持多种处理器,如x86、i960、Sun Sparc、Motorola MC68xxx、MIPS RX000、POWER PC等等。大多数的VxWorks API是专有的。采用GNU的编译和调试器。

阅读(1096) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~