购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

前言

本教程是为了适应时代发展,普及嵌入式开发技术编写的。随着信息化、智能化、网络化的发展,嵌入式技术将全面展开,现在嵌入式已经成为通信和消费类产品的共同发展方向。总体来说,嵌入式系统分别在硬件和软件方面获得发展。在软件方面,主要是嵌入式系统的裁剪、定制,以及硬件驱动程序的编写与移植。本教程的编写目的正是为了普及嵌入式开发的软件开发技术。在嵌入式领域使用的操作系统中,Linux以其开源、免费及高度可裁剪定制的优势占半数以上。本教程将以最新的技术来讲授嵌入式Linux系统设备驱动开发。

本教程由深圳信盈达嵌入式学院的高级工程师编写,他们都是该领域的精英,有着非常丰富的项目开发经验。他们以多年的开发经验与体会,并参考大量的同类书籍而编写本教程。市面上的关于嵌入式开发的书籍琳琅满目,但是多数都是在讲解深奥晦涩的设备驱动理论。没有相关行业经验的人,看了之后还是不知道如何去在自己的项目中移植或编写设备驱动程序,也不知道如何裁剪系统等。本教程正是基于这一点,以实用性为目标编写而成。教程尽量避免枯燥的理论分析,着眼于实用性来讲解嵌入式的开发理论。教程基于2.6及2.6以后版本的内核,书中每个章节都配有相关的实验以及实验用到的驱动和测试应用程序源码。每个实验都在2440开发板上测试过,保证了代码的完整性及正确性。

本书对嵌入式开发的各个环节都做了详细的分析。第1章是Linux系统操作的基础,讲解常用命令、shell脚本和Makefile等基础技能。第2章讲解嵌入式Linux开发环境的搭建,包括交叉编译器的安装和使用,串口终端工具的使用,u-boot的使用和设置,内核的裁剪,根文件系统制作以及J-Link调试工具使用等。第3章讲解Linux设备驱动的基本概念,包括虚拟地址空间的划分,进程上下文与中断上下文,设备号,模块编译等。第4章讲解关于模块编译相关知识,如模块符号导出、多文件编译模块等。第5章介绍字符设备驱动开发的相关概念和相关的设备注册、注销的API。第6章以LED为例讲解字符设备驱动的实现以及应用程序访问硬件的方法。第7章至第21章讲解内核各个子系统的内容。

本书主要由深圳信盈达电子有限公司陈志发、周中孝、李志超三位嵌入式软件工程师编写,编写期间得到了信盈达其他软硬件工程师和总经理牛乐乐的大力支持。编写本书过程中也参考了互联网上的许多资料,在此向这些知识分享者表示感谢。

我们相信,通过认真研读本教程并完成对应实验练习,每位读者都会有很大的收获。这一定会对每一个希望进军嵌入式领域的工程师起到一个领路人的作用。

由于编著者的水平有限,书中难免存在错误和疏漏之处,敬请广大读者批评指正,以期进一步完善。

编著者
2014年8月 nfXvHZe+yof2yUghLl2qmMcJ9fJU5aykSslflm2PtEgxjM95XNJZ/t3o7H7Rsrk0

点击中间区域
呼出菜单
上一章
目录
下一章
×