新書推薦:
《
安全感是内心长出的盔甲
》
售價:NT$
305.0
《
快人一步:系统性能提高之道
》
售價:NT$
505.0
《
我们为什么会做梦:让梦不再神秘的新科学
》
售價:NT$
352.0
《
算法图解(第2版)
》
售價:NT$
356.0
《
科学的奇幻之旅
》
售價:NT$
352.0
《
画艺循谱:晚明的画谱与消闲
》
售價:NT$
653.0
《
新民说·现实政治史:从马基雅维利到基辛格
》
售價:NT$
454.0
《
宽容是件奢侈品(人生360度·一分钟经典故事)
》
售價:NT$
203.0
|
編輯推薦: |
书中首先介绍嵌入式系统的基础理论和开发环境的安装、配置,然后讲述ARM基本指令、Linux常用命令的使用以及嵌入式C语言等相关基础知识,再结合硬件原理图,逐个分析硬件部件的工作原理及编程,最后介绍基于Qt平台的嵌入式开发,最终实现“学完本书即可做出一个完整嵌入式系统”的目标。
|
內容簡介: |
《嵌入式Linux操作系统——基于ARM处理器的移植、驱动、GUI及应用设计(微课视频版)》系统论述了ARM嵌入式Linux应用开发的全过程,内容包括: 宿主机开发环境搭建与配置,常用开发工具的安装与使用,嵌入式编程基础知识以及ARM处理器常用命令与ATPCS规则等; 嵌入式C语言编程基础知识,常用硬件部件的使用与编程方法; 自定义交叉工具链制作,U-Boot、Linux内核的分析、配置与移植,rootfs根文件系统的构造; 内核调试与硬件驱动程序编写及移植(I2C、Flash、网络、USB、SD卡、LCD、ADC等); 基于设备树的Linux 5.8.1的系统移植(设备树基础知识、基于设备树的中断子系统、pinctrl/gpio子系统); 基于Qt 5.12的嵌入式应用程序开发(从编译环境配置到源码编译、移植、tslib移植等)和Qt Quick应用软件开发。 由于篇幅有限,嵌入式编程基础知识、NAND Flash控制器、LCD控制器、ADC和触摸屏接口、I2C总线接口、Linux驱动程序移植、设备树与内核异常处理机制等内容以电子资源(PDF)提供,详见本书配套资源补充资料。同时本书还提供了微课视频、工程文件、电子教案、教学大纲、教学课件等供读者学习使用,获取方式详见前言。 《嵌入式Linux操作系统——基于ARM处理器的移植、驱动、GUI及应用设计(微课视频版)》由浅入深,循序渐进,既可作为高等院校相关专业嵌入式系统开发的教材,也可供嵌入式Linux的初学者和广大嵌入式系统开发人员参考。
|
目錄:
|
第一篇 工欲善其事,必先利其器
第1章 嵌入式系统概述
1.1嵌入式系统基础知识
1.1.1嵌入式系统简介
1.1.2嵌入式系统的特点
1.1.3嵌入式系统的发展历史
1.1.4嵌入式系统的组成
1.1.5嵌入式操作系统简介
1.1.6嵌入式系统开发概述
1.2基于ARM架构的处理器
1.2.1ARM处理器概述
1.2.2ARM处理器的结构特点及其应用
1.2.3典型ARM处理器
第2章 常用开发工具和Linux基本操作
2.1Windows环境下的工具
2.1.1代码阅读、编辑工具Source Insight
2.1.2文件传输工具FileZilla
2.1.3终端仿真工具PuTTY
2.2Linux环境下的工具
2.2.1代码阅读、编辑工具
2.2.2终端访问工具
2.3Linux基本操作
2.3.1编辑命令vi(vim)
2.3.2常用13个命令介绍
2.3.3SD卡烧写命令df、dd
2.3.4shell命令解析器
第3章 嵌入式Linux开发环境搭建
3.1交叉开发模式
3.1.1嵌入式交叉开发模式
3.1.2硬件需求
3.2软件环境搭建与配置
3.2.1宿主机Linux操作系统的安装
3.2.2配置宿主机Linux操作系统
3.2.3在宿主机上安装、配置开发环境
3.2.4制作交叉编译工具链
第二篇 千里之行,始于足下
第4章 基于ARMv7的S5PV210启动流程
4.1S5PV210启动流程概述
4.1.1外部启动介质
4.1.2iROM启动的优势
4.2S5PV210上电初始化及内存空间分布
4.2.1启动流程
4.2.2空间分布
4.2.3SD卡引导块分配情况
4.2.4iROM中的时钟配置
4.3S5PV210上的程序烧写
4.3.1程序烧写概述
4.3.2制作启动代码头信息
4.3.3烧写SD卡
4.3.4制作Shell脚本
第5章 通用输入/输出接口GPIO
5.1GPIO硬件介绍
5.1.1GPIO概述
5.1.2S5PV210的GPIO寄存器
5.1.3实验用到的寄存器详解
5.2S5PV210的GPIO应用实例
5.2.1GPIO实验
5.2.2程序设计与代码详解
第6章 通用异步收发器UART
6.1UART介绍及其硬件使用方式
6.1.1UART通信的基本原理
6.1.2S5PV210的UART
6.2S5PV210的UART应用实例
6.2.1UART实验
6.2.2程序设计与代码详解
6.2.3实例测试
第7章 中断体系结构
7.1S5PV210中断体系结构
7.1.1中断体系结构概述
7.1.2中断控制寄存器
7.2S5PV210的中断应用实例
7.2.1中断实验
7.2.2程序设计与代码详解
7.2.3实例测试
第8章 系统时钟和定时器
8.1S5PV210的时钟体系结构
8.1.1S5PV210的时钟域和时钟源
8.1.2S5PV210的时钟应用和配置流程
8.1.3S5PV210时钟控制寄存器
8.2S5PV210 PWM定时器
8.2.1S5PV210 PWM定时器概述
8.2.2S5PV210定时器
8.2.3PWM定时器寄存器
8.3S5PV210时钟和定时器应用实例
8.3.1时钟实验
8.3.2程序设计与代码详解
8.3.3实验测试
第9章 存储控制器
9.1S5PV210存储控制器介绍
9.1.1存储控制器概述
9.1.2DRAM存储控制器
9.1.3与外设的接线方式
9.1.4DDR2概述
9.1.5S5PV210 DDR2初始化顺序
9.1.6存储控制器的寄存器介绍
9.2存储控制器应用实例
9.2.1存储控制器实验
9.2.2程序设计与代码详解
9.2.3实验测试
第三篇 欲穷千里目,更上一层楼
第10章 移植UBoot
10.1Bootloader介绍
10.1.1Bootloader概述
10.1.2Bootloader的结构和启动方式
10.1.3Bootloader操作模式和安装位置
10.1.4如何编写Bootloader
10.1.5Bootloader与内核之间的交互
10.2UBoot介绍与移植到S5PV210开发板
10.2.1UBoot简介
10.2.2UBoot源码结构
10.2.3UBoot配置、编译与SPL介绍
10.2.4UBoot启动过程源码分析
10.2.5UBoot下的驱动移植
10.2.6添加启动菜单
第11章 移植Linux内核
11.1Linux内核概述
11.1.1Linux内核发展及其版本特点
11.1.2Linux内核源码获取
11.1.3内核源码结构及Makefile分析
11.1.4Linux内核的Kconfig介绍
11.1.5Linux内核配置选项
11.2Linux内核移植
11.2.1Linux内核启动过程概述
11.2.2Linux内核启动源码分析
11.2.3修改内核支持S5PV210
第12章 构建Linux根文件系统
12.1Linux文件系统概述
12.1.1文件系统概述
12.1.2Linux根文件系统目录结构
12.1.3Linux文件属性
12.1.4文件系统工作原理
12.2移植Busybox
12.2.1Busybox介绍
12.2.2Busybox的目录结构
12.2.3内核init进程及用户程序启动过程
12.2.4配置/编译/安装Busybox
12.2.5构建根文件系统
第13章 Linux驱动程序移植
13.1Linux驱动程序概述
13.1.1驱动程序、内核和应用程序之间的关系
13.1.2驱动程序分类
13.1.3Linux设备模型介绍
13.1.4驱动程序开发步骤
13.1.5驱动程序的加载和卸载
13.2网卡驱动移植
13.2.1DM9000网卡特性
13.2.2DM9000驱动移植
第四篇 万事俱备,只欠东风
第14章 嵌入式Linux GUI应用开发
14.1嵌入式Linux应用开发概述
14.1.1Linux应用开发介绍
14.1.2嵌入式Linux GUI应用开发流程
14.2移植Qt 5.12到目标板
14.2.1Qt 5.12介绍
14.2.2移植Qt 5.12
14.3嵌入式Qt编程基础
14.3.1Qt桌面开发环境
14.3.2移植Qt 5.12应用程序
第15章 Qt 5.12快速入门
15.1Qt Creator快速入门
15.1.1窗口部件
15.1.2布局管理
15.1.3信号与槽
15.1.4主窗口
15.1.5事件处理
15.1.6数据处理
15.1.7通信编程
15.1.8国际化
15.1.9应用程序发布
15.2基于Qt Quick的应用开发
15.2.1Qt Quick与Qt Design Studio介绍
15.2.2QML与C 混合编程
15.2.3基于Qt Quick的DAQSystem系统
参考文献
|
內容試閱:
|
一、 为什么要写本书
在科技高速发展的今天,各种技术的发展都是日新月异的。短短十多年的时间,芯片从单核发展到双核,再到多核,我国嵌入式操作系统也从无到有(华为鸿蒙操作系统用户数量已超2亿)。如今我国的智能制造、人工智能、数字强国在神州大地落地生根、开花结果,随之而来对专业技术人员的需求也呈爆发式增长,嵌入式系统行业也在其列。智慧城市、智慧工厂、自动驾驶、智慧医疗等热门的领域都离不开嵌入式系统,可以说我们工作与生活的方方面面都与嵌入式系统息息相关。
虽然编者从事嵌入式系统设计开发已经有很多年了,在CSDN等技术博客上撰写了很多文章,但想写好一本嵌入式系统开发相关的技术书籍,在编者看来依然是一个庞大的工程,其难度并不亚于设计一款好的嵌入式系统。如今,嵌入式系统行业已经走到风口浪尖上,很多同行、博友都建议编者全面介绍嵌入式系统开发的内容,而现在,读者手中捧着的这本书,就是这部系统介绍嵌入式系统应用开发的书籍。真诚地希望读者可以用心去阅读这本书,因为每多掌握一份知识,就会多一份喜悦。
二、 内容特色
本书具有可读性和实用性,许多实例都经过精心的考虑,既能帮助理解知识,又具有启发性。书中还特别增加了基于Linux 5.8.1的设备树知识,以及Qt 5.12的嵌入式应用程序开发。
1. 循序渐进,由浅入深
涵盖了ARM嵌入式Linux应用开发的全过程,从如何入手嵌入式系统开发到上层应用程序开发的方方面面。
2. 完整系统,即学即用
首先介绍ARM裸机开发(含软硬件知识),随后对嵌入式操作系统开发方法进行介绍,最后介绍基于Qt平台的嵌入式应用软件开发知识。
3. 例程丰富,注释翔实
本书许多章节后面都有实验,书中给出了丰富的实验代码,代码后面附有详细的分析注释,这些代码都在开发板上进行了验证。
4. 配套资源,超值服务
工程文件(约1.2GB)、电子教案、教学大纲、教学课件(PPT)等资料,可以扫描下方二维码下载,也可以到清华大学出版社网站本书页面下载。
超值补充资源: 除书稿内容外,嵌入式编程基础知识、NAND Flash控制器、LCD控制器、ADC和触摸屏接口、I2C总线接口、Linux驱动程序移植、设备树与内核异常处理机制等内容以电子资源(PDF)提供,详见配套资源补充资料。
微课视频(43集,共450分钟),请扫描本书各章节中对应位置的二维码观看。
关注编者的微信公众号(见配套资源),可以获得更多嵌入式系统开发等学习资源,亦可与编者互动交流。
配套资源
三、 内容结构
全书分四篇,共15章。
第一篇(第1~3章)着重介绍嵌入式Linux系统开发前的准备。第1章介绍嵌入式系统基础知识; 第2~3章介绍嵌入式开发环境使用,常用开发工具的使用,嵌入式开发交叉工具链的使用,Linux操作系统的基本使用方法与设置,常用Shell脚本的使用,目标板烧写脚本制作等内容。
第二篇(第4~9章)着重介绍硬件部件的使用与编程。第4章主要介绍ARM平台相关的知识,为后续部件编程打下基础; 第5~9章讲述GPIO、UART编程,中断体系结构原理与编程控制,系统时钟与定时器的使用,DDR2存储器及NAND Flash控制器的使用,LCD控制器与触摸屏的原理与操控方法,ADC转换、I2C总线控制器使用等。
第三篇(第10~13章)为嵌入式操作系统的构建。第10~12章着重介绍基于ARMv7处理器的Bootloader系统引导程序(UBoot)的源码分析、移植方法等,嵌入式Linux系统的源码分析、工作原理与系统移植的方法,根文件系统的原理、源码结构与系统构建等; 第13章介绍Linux下设备驱动的开发与移植,以及基于Linux 5.8.1介绍设备树相关内容。
第四篇(第14~15章)为嵌入式系统用户交互系统的开发。第14章主要罗列了Linux下常见的应用程序开发,基于Qt 5.12的环境搭建、配置、源码移植等; 第15章介绍了Qt应用程序开发、Qt Quick、QML与C 混合编程、项目演练等内容。
四、 致谢
本书由李建祥和瞿苏共同编写,李建祥负责全书统稿。在此,要特别感谢瞿苏老师的鼎力相助,使整本书的知识体系更加完整。另外,仇善梁、丁传伟两位领导对本书写作提供了大力支持,在此表示感谢。本书从写作到出版曾得到张爱明、秦柯、陈浩的指导,他们对本书做了内容建议、勘误检查、代码纠错的工作,并对我个人给予了大力支持,在此一并表示感谢。
限于编者的水平和经验,加之时间比较仓促,书中疏漏或者错误之处在所难免,敬请读者批评指正,联系邮箱见配套资源。
李建祥
2022年6月
|
|