零基础学嵌入式Linux C编程-附光盘

节选

[

《零基础学嵌入式Linux C编程》分为4篇,共20章,主要内容包括:嵌入式系统基础知识,Linux环境下C语言的开发,构建嵌入式Linux开发环境,Linux下c编程基础,数据、运算符和表达式,数据的输入和输出,基本语句,数组,函数、编译预处理,动态内存的堆与栈,指针、回调函数、结构体与共同体,Linux C语言嵌入汇编语言与移植性问题,嵌人式Linux环境下GUI开发技术,嵌入式Linux设备驱动开发,Linux文件操作,进程控制,线程控制,嵌入式网络防御体系设计实例,Linux 视频采集与传输实例,ARM Linux 指纹识别实例等。全书重点突出,层次分明,注重知识的系统性、针对性和先进性;注重理论联系实践,培养工程应用能力。《零基础学嵌入式Linux C编程》不仅介绍详细的理论基础知识,还提供大量的开发案例作参考,可读性和实用性强。适合没有或者缺乏嵌入式Linux 程序设计经验的初学者作为嵌入式Linux 语言开发的自学教材,同时也适合已掌握C语言基础编程技术,需要提高嵌入式C语言编程实践能力,以及对嵌入式Linux编程感兴趣的程序员阅读。《零基础学嵌入式Linux C编程》的配套光盘给出了书中的实例文件、开发过程的操作录像文件、常用元器件及芯片等丰富的拓展资源,极大地方便了读者自学,动手实践。

]

相关资料

[

插图:1.1.3 嵌入式系统的发展历史嵌入式系统于20世纪70年代起源于微型机时代,近几年网络、通信和多媒体技术的发展为嵌入式系统的应用开辟了广阔的天地。嵌入式系统经过独立发展的单片机时代,至今已经有30多年的历史了,伴随着硬件和软件的交替发展,嵌入式技术的发展可以划分为以下几个阶段。1.始于微型机时代的嵌入式应用.数字计算机诞生于1946年,在其后漫长的历史进程中,计算机始终是供养在特殊的机房中,实现数值计算的大型昂贵设备。直到20世纪70年代微处理器的出现,计算机才有了历史性的变化。1971年11月Intel公司成功地把算术运算器和控制器电路集成在一起,推出第一款微处理器Inte14004。以微处理器为核心的微型计算机具有体积小、功耗低、结构简单、可靠性高、使用方便、性能价格比高等一系列优点,使其迅速走出机房、获得广泛的应用。微型机表现出的智能化水平引起了控制专业人士的兴趣,要求将微型机嵌入到一个对象体系中,实现对象体系的智能化控制。以微处理器为核心的系统广泛应用于仪器仪表、家用电器、医疗设备等领域。这样一来,计算机便失去了原来的形态与通用的计算机功能。为了区别于原有的通用计算机系统,把嵌入到对象体系中、实现对象体系智能化控制的计算机称作嵌入式计算机系统。因此,嵌入式系统诞生于微型机时代,嵌入式系统的嵌入性本质是将一个计算机嵌入到一个对象体系中去,这些是理解嵌入式系统的基本出发点。2.现代计算机技术的两大分支由于嵌入式计算机系统要嵌入到对象体系中,实现的是对象的智能化控制,因此,它有着与通用计算机系统完全不同的技术要求与技术发展方向。通用计算机系统的技术要求是高速、海量的数值计算;技术发展方向是总线速度的无限提升,存储容量的无限扩大。而嵌入式计算机系统的技术要求则是对象的智能化控制能力;技术发展方向是与对象系统密切相关的嵌入性能、控制能力与控制的可靠性。早期,人们将通用计算机系统进行改装,在大型设备中实现嵌入式应用。

]

本书特色

[

你想从零开始,系统学习嵌入式Linux C编程吗?你想快速上手,真正学会嵌入式Linux C的软件开发吗7你想举一反三,稍事修改就可以移植到自己的系统中吗?《零基础学嵌入式Linux C编程》将给予你学习、实践与移植的全部答案!《零基础学嵌入式Linux C编程》由嵌入式科研与教学的一线专家联合编著。全书基于嵌入式Linux平台,从基本概念、Linux C的基本语法、Linux C内嵌汇编、Linux移植、GUI开发、驱动开发到图像采集与指纹识别等综合实例,示例与案例结合,理论与实践融汇,娓娓道来,深入浅出,全面阐释了嵌入式Linux C编程的思想、方法与技巧。为了便于读者快速动手实践,《零基础学嵌入式Linux C编程》配有精心制作的多媒体视频光盘,涵盖了书中实例文件、开发过程录像文件及常用学习交流网址等。涵盖内容嵌入式系统基础知识构建嵌入式Linux开发环境C语言中的数据、运算符和表达式C语言中的基本语句和数组C语言中的指针、回调函数、结构体与共同体嵌入式Linux环境下GUI开发技术文件操作和进程控制Linux环境下C语言的开发Linux下C编程基础C语言中数据的输入/输出C语言中的函数、编译预处理与动态内存Linux C语言嵌入汇编语言与移植性问题嵌入式Linux设备驱动开发线程控制综合实例嵌入式字符设备驱动开发嵌入式网络设备驱动开发基于GTK+的图形界面编程嵌入式网络防御体系设计ARM Linux视频采集与传输ARM Linux指纹识别

]

目录

前言**篇 开发基础第1章 嵌入式系统基础知识1.1 嵌入式系统概述1.1.1 嵌入式系统的定义1.1.2 嵌入式系统的特点1.1.3 嵌入式系统的发展历史1.1.4 嵌入式系统的应用领域1.1.5 嵌入式系统与PC之间的区别1.2 嵌入式系统的组成1.3 典型的嵌入式操作系统1.4 ARM处理器平台介绍1.5 嵌入式系统开发1.6 嵌入式Linux软件设计1.6.1 嵌入式Linux软件需求分析1.6.2 嵌入式Linux软件架构设计1.7 实践拓展1.8 思考与练习第2章 Linux环境下C语言的开发2.1 C语言简单回顾2.2 Linux下的C语言开发环境2.3 嵌入式Linux语言的开发2.4 Linux系统2.4.1 Linux的安装、启动与关闭2.4.2 Linux的基本使用2.4.3 Linux的常用命令2.5 嵌入式Linux中程序的运行原理2.6 实践拓展2.7 思考与练习第3章 构建嵌入式Linux开发环境3.1 嵌入式系统开发环境的构建3.2 移植U-Boot3.2.1 BooLoader概述3.2.2 U-Boot分析与移植3.3 嵌入式Linux操作系统内核编译3.3.1 内核的配置3.3.2 内核编译的过程3.4 内核的移植3.5 实践拓展3.6 思考与练习第二篇 基础编程第4章 Linux下C编程基础4.1 嵌入式Linux语言编程概述4.2 嵌入式Linux编辑器4.2.1 Vi的基本模式4.2.2 Vi的基本操作4.2.3 Vi的使用实例分析4.3 嵌入式Linux编译器GCC4.3.1 GCC编译流程分析4.3.2 GCC编译选项分析4.3.3 GCC使用的库函数4.4 嵌入式Linux调试器GDB的使用4.4.1 GDB使用实例4.4.2 GDB的帮助命令4.4.3 设置/删除断点4.4.4 数据相关命令4.4.5 调试运行环境相关命令4.4.6 堆栈相关命令4.5 make工程管理器4.5.1 Makefile文件的构成4.5.2 Makefile变量4.5.3 make的使用4.6 Emacs综合编辑器4.6.1 Emacs的启动与退出4.6.2 Emacs的基本编辑4.6.3 Emacs的C模式4.6.4 Emacs的Shell模式4.7 实践拓展4.8 思考与练习第5章 数据、运算符和表达式5.1 C程序的结构和语法规则5.2 c程序语句概述5.3 基本概念5.3.1 标识符5.3.2 关键字5.3.3 常量5.3.4 变量5.4 基本数据类型5.4.1 整型变量及其常量5.4.2 浮点型变量及其常量5.4.3 字符型变量及其常量5.4.4 长整型、短整型和无符号整型5.4.5 类型定义typecdef5.5 算术运算符、赋值运算符及翼表达式5.5.1 算术运算符和算术表达式5.5.2 赋值运算符和赋值表达式5.6 关系运算符、逻辑运算符及舅表达式5.6.1 关系运算符和关系表达式5.6.2 逻辑运算符和逻辑表达式5.7 逗号运算符和逗号表达式5.8 变量的初始化5.9 不同类型数据之间的转换5.9.1 自动类型转换5.9.2 强制类型转换5.1 0实践拓展5.1 1思考与练习第6章 数据的输入和输出6.1 数据的输出6.1.1 字符输出函数putchar()6.1.2 格式输出函数printf()6.2 数据的输入6.2.1 字符输入函数getchar()6.2.2 格式输入函数scanf()6.3 实践拓展6.4 思考与练习第7章 基本语句7.1 结构化程序设计概述7.2 语句和复合语句7.3 条件语句7.3.1 if语句7.3.2 条件运算符7.3.3 switch语句7.4 循环控制7.4.1 while循环语句7.4.2 do-while循环语句7.4.3 for循环语句7.4.4 got0语句7.4.5 break语句和continue语句7.5 实践拓展7.6 思考与练习第8章 数组8.1 一维数组8.1.1 一维数组的定义和引用8.1.2 一维数组元素的初始化8.2 二维数组8.2.1 二维数组的定义和引用8.2.2 二维数组元素的初始化8.3 字符数组和字符串8.3.1 字符数组8.3.2 字符串和字符串结束标志8.3.3 字符串处理函数8.4 实践拓展8.5 思考与练习第9章 函数、编译预处理9.1 函数的概念9.2 函数的定义和调用9.2.1 函数的定义9.2.2 函数的调用9.3 函数的返回值9.4 函数的参数及其传递方式9.4.1 非数组作为函数参数9.4.2 数组作为函数参数9.5 函数的嵌套调用和递归调用9.5.1 函数的嵌套调用9.5.2 函数的递归调用9.6 变量的作用域及其存储类型9.6.1 局部变量及其存储类型9.6.2 全局变量及其存储类型9.7 内部函数和外部函数9.8 编译预处理9.8.1 宏定义9.8.2 文件包含处理9.8.3 条件编译9.9 实践拓展9.10 思考与练习第10章 动态内存的堆与栈10.1 程序内存区域的使用10.1.1 C语言程序的存储区域10.1.2 C语言中的动态内存10.2 C程序中栈的应用10.3 c程序中堆空间的使用10.4 堆内存和栈内存使用的比较10.5 实践拓展10.6 思考与练习第11章 指针、回调函数,结构体与共同体11.1 指针11.1.1 指针的概念11.1.2 变量的指针和指向变量的指针变量11.1.3 数组的指针和指向数组的指针变量11.1.4 字符串的指针和指向字符串的指针变量11.1.5 函数的指针和指向函数的指针变量11.1.6 指针数组和指向指针的指针11.2 回调函数11.2.1 回调函数的概念与作用11.2.2 回调函数的语法11.3 结构体11.3.1 结构体类型变量11.3.2 结构体数组11.3.3 指向结构体类型数据的指针11.3.4 用指针处理链表11.4 共同体11.5 实践拓展11.6 思考与练习第12章 Linux C语言嵌入汇编语言与移植性问题12.1 嵌入汇编语言12.1.1 C和汇编的接口12.1.2 内嵌汇编的语法12.1.3 memory描述符12.1.4 GCC对内嵌汇编语言的处理方式12.2 嵌入式Linux可移植性问题12.2.1 字长和数据类型:12.2.2 数据对齐12.2.3 字节顺序12.3 实践拓展12.4 思考与练习第三篇 高级编程第13章 嵌入式Linux环境下GUI开发技术13.1 嵌入式图形用户界面概述:13.2 Linux下几种主流的GUI13.2.1 MiniGUI13.2.2 Qt/Embedded13.2.3 Micr0Windows13.2.4 OpenGUI13.2.5 GTK+13.3 基于G1x+的图形界面编程13.3.1 GTK+程序的初始化与退出13.3.2 GTK+预定义的函数和数据类型13.3.3 回调函数13.3.4 GTK+的事件处理13.3.5 使用GTK+实现“Hell0World程序13.3.6 编译GTK+程序13.3.7 在GTK+中排列控件13.3.8 常用控件13.4 实践拓展13.5 思考与练习第14章 嵌入式Linux设备驱动开发14.1 Linux设备驱动程序概述14.2 Linux设备驱动程序与内核的关系14.3 Linux设备驱动程序开发基础14.3.1 内存管理问题14.3.2 中断处理14.3.3 I/O端口14.3.4 DMA处理14.3.5 时间流14.4 字符设备驱动14.4.1 字符设备驱动相关函数和结构体14.4.2 字符设备驱动程序实例……第15章 Linux文件操作第16章 进程第17章 线程控制第四篇 综合实例第18章 嵌入式网络防御体系设计第19章 ARM Linux视频采集与传输第20章 ARM Linux指纹识别附录A 嵌入式Linux函数索引附录B Linux Shell常用命令索引参考文献

封面

零基础学嵌入式Linux C编程-附光盘

书名:零基础学嵌入式Linux C编程-附光盘

作者:陈立伟

页数:423页

定价:¥55.0

出版社:机械工业出版社

出版日期:2010-08-01

ISBN:9787111307181

PDF电子书大小:147MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注