近几年,随着计算机技术、通信技术、软件技术以及互联网技术的发展,嵌入式系统更是取得了突飞猛进的发展,各种嵌入式设备层出不穷,完全渗透到我们生活的各个角落,不知不觉的改变着人们的生产、生活习惯。iPhone, iPAD 和以 Android 为平台的智能终端设备的热销、普及,对嵌入式行业的发展更是如火上浇油,使得嵌入式系统的发展如火如荼。
课程名称 | 课程内容 | |
嵌入式系统开发 | 智能家居&智能车项目实战、应用软件开发、部署、ARM体系结构与编程、嵌入式Linux系统部署、Linux驱动程序开发 | |
UINX高级开发 | ZIGBEE无线通讯、摄像机、音频视频、3G彩信/短信、QT&UI编程、多线程编程、网络编程、数据库、文件操作 | |
C/C++语言基础 | C语言、C++语言、数据结构&算法、Linux操作系统 |
一、C开发经验
条件:c语言
c语言也被称为是上帝的语言,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言。
C语言怎么学?对于计算机专业的人来讲,大部分人的第一种编程语言就是c语言,所以这门学科对于他们来讲并不是什么难事。0基础学习C语言,可以多看书、看视频,有时间可以到达内免费训练营听一下,明白了一些基础的概念后,就该写代码了,动手才是最重要的,当你动手了,遇到问题了,再反过来学习,反过来查查课本,那时的收获就不是你死看书能得到的。
二、网络、操作系统、体系结构
条件:Linux,各种书,算法、例程。
应该把系统的管理理解一下,比如进程、线程,系统如何来分配资源的,系统如何来管理硬件的,通过C编程实现简单的网络等知识的算法和过程。
开发者应该对操作系统有所了解,驱动分为两种,一种是没有操作系统的驱动程序,也就是直接用c语言来对硬件进行编程,那么另外一种就是有操作系统的驱动程序,需要集合操作系统的接口来编写驱动程序才可正常使用,当然在两种模式中,使用最多且就业需求最多的就是第二种有操作系统的驱动程序,所以想要写驱动程序首先需要掌握操作系统的相关知识,而嵌入式的驱动程序大多是用linux系统,所以应该熟练掌握linux操作系统是成为开发嵌入式驱动的必要条件(切记不是唯一的条件,因为还有wince等其他操作系统)。
三、嵌入式系统概念
条件:各个嵌入式网站,讨论组,书籍
少提问(尤其是等着天上掉馅饼,这主要是防止增长惰性,也解决不了实际问题),多思考。 还有应该学习嵌入式系统,如linux或者wince下的编程,这些对以后做应用的编程很有帮助,当然,如果做手机的话,那可以学习MTK、塞班、Android等操作系统,Android是以后发展的趋势,现在很热门,Android也是基于linux系统封装的,所以建议先学习下linux。
四、嵌入式开发实践
条件:各种嵌入式系统开发工具的demo版,包括编译器,仿真器。可以找高手们要,也可以下载。
这里有两个分支,一个是基于MCU/MDSP的嵌入式系统开发,一个是象PalmOS,WinCE,uC/OS II等RTOS下的应用软件开发。对硬件感兴趣,想成为真正高手的由第一个分支入手,以后进入第二个分支;如果十分厌烦硬件,只想停留在软件开发上的,可以只由第二个分支入手,以后就和pc上的开发没有什么本质上的区别了,找份不错的工作应该没问题,可以不用进行下面的步骤了,感兴趣可以参考第6条。还有,应该学习下单片机或者ARM或者MIPS,很多人说我没有单片机的经验,直接学ARM可以吗?我觉得那完全没有问题的,当然如果你学习过单片机,那最好不过了,以后学习ARM就更简单了。