嵌入式软件就是给专门的嵌入式系统设计的软件,它和一般的PC软件差别在什么地方呢?粤嵌深圳嵌入式培训为你解析。
一个嵌入式系统一般都包含以下几个部分:cpu,存储器,电源,接口,功能模块电路。也就是用来驱动硬件工作以达到系统的工作目的。与PC软件主要的区别在嵌入式系统对功耗和内存大小上有严格的限制,所以嵌入式软件一定要精简,高效。
由于嵌入式系统的内存有限,所以软件大部分是由C语言写的,因为C++,java等语言虽然方便,但是很费内存。
嵌入式领域其为应用的高度定制,造成了以效率、应用为优先的特点。封装层次太多必然对效率有所伤害,同时规模变大,测试变得复杂,开发周期变长,所以嵌入式的层次结构相对于PC系统,边界没那么清晰,封装考虑的问题没有那么全面。完成同样的一个工作,需要了解的内容更多,才能做得更好。
作为一个嵌入式软件工程师,深圳嵌入式培训(http://www.gec-edu.org/)表示需要了解一下一些知识:
1、C是必须会的,而且水平要比较高。嵌入式软件的编程用到很多C里面平时不常用的语法,比如内联,静态等。以及要清楚所有数据类型所占用的内存。
2、会看懂英文用户手册和硬件原理。应为这方面的很多硬件都是外国生产的,所以要能看懂这些文档。对于软件工程师来说,硬件就是一堆寄存器,所以你要看懂硬件里有哪些寄存器,每个有什么作用。
3、知道如何将软件一直到新的处理器架构上,这个要了解主流的处理器架构的特性。
4、知道如何调试自己的程序,仿真调试或者片上调试,反正就那几个调试方法。
5、高级的嵌入式系统需要RTOS,所以也要懂操作系统。
嵌入式软件一层一层的覆盖在硬件上的,最底层的应该是硬件层,这一层直接对硬件的寄存器操作,是对硬件的第一层抽象。然后应该是驱动层,这一层提供一些硬件的功能函数。最后是接口层,这一层提供最终的函数给上一层的工程师,例如ledLight()这种函数,上层的人可以直接用这个函数来点亮led,而不用知道下面的细节。
学习嵌入式的方法多种多样,但最好的办法是去培训,而且一定要勤奋,编程是一种体力+脑力的活,选择培训可让嵌入式的学习事半功倍。粤嵌深圳嵌入式培训由衷地希望大家都能够学有所成,在这一行业取得好的成就。Tel/WX:133--52--86--80--59
|