嵌入式应用技术基础教程

嵌入式应用技术基础教程
作 者: 王宜怀 刘晓升
出版社: 清华大学出版社
丛编项: 嵌入式技术与应用
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: 嵌入式计算机
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《嵌入式应用技术基础教程》作者简介

内容简介

全书共18章,分三个部分。第1部分共7章,为相关基础知识及HC08系列单片机入门,主要介绍嵌入式应用的硬件与软件基础。同时给出了HC08系列单片机的基本入门知识,包括基本结构、汇编语言及08C语言基础,介绍了实验环境,提供了第一个实例。第2部分共6章,为HC08系列单片机的功能模块及基本应用,包括GP32的SCI、SPI、键盘、A/D、定时器、Flash存储器在线编程及其他功能模块,还给出了LCD与LED的编程,该部分为本书的重点内容。第3部分共5章,为常用外设的应用扩展,包括USB接口、CAN通信接口、编程器的开发、嵌入式以太网接口,以及非接触式IC卡读写器等开发实例,该部分内容来自于实际的开发项目,主要目的是给出一些常用接口的应用范例,供读者实际应用时参考。各章都附有练习与思考题。本书可供大学有关专业的高年级学生和研究生用作教材或参考读物,也可供从事嵌入式系统开发与研究人员用作参考和进修资料。

图书目录

第1部分相关基础知识及08系列单片机入门

第1章嵌入式应用技术概述2

1.1嵌入式系统的基本含义2

1.1.1嵌入式系统与单片机2

1.1.2MCU的主要应用领域4

1.2MCU发展概况5

1.2.1MCU的发展简史5

1.2.2MCU在我国的应用简况6

1.3MCU发展新特点及选型原则7

1.3.1MCU发展的新特点7

1.3.2MCU的选型原则7

1.4如何学习嵌入式应用技术9

1.5嵌入式产品的一般构成与开发方法10

1.5.1嵌入式产品的一般构成10

1.5.2嵌入式产品的一般开发方法11

第2章嵌入式应用技术的硬件基础15

2.1数字电路基础知识15

2.1.1嵌入式应用技术中常用的数制及其转换15

2.1.2数字电路中几个名词解释17

2.1.3门电路18

2.2嵌入式应用的常用元器件20

2.2.1二极管20

2.2.2晶体管21

2.2.3锁存器25

2.2.4可编程逻辑器件PLD25

2.3嵌入式应用技术的常用术语28

第3章高级语言的串行通信编程31

3.1VisualBasic6.0编程简介31

3.1.1VisualBasic6.0概述31

3.1.2面向对象的程序设计概念32

3.1.3事件驱动的程序设计33

3.1.4VisualBasic6.0开发系统34

3.1.5VisualBasic6.0的帮助系统36

3.2VisualBasic6.0语言基础36

3.2.1编码基础36

3.2.2基本语句38

3.3VisualBasic6.0的常用控件41

3.4VisualBasic6.0的串行通信控件MSComm42

3.4.1串行接口通信编程42

3.4.2MSComm控件的引用43

3.4.3MSComm控件的主要属性43

3.4.4MSComm控件的事件47

3.4.5MSComm控件通信的方式48

3.5VisualBasic6.0的串行通信编程实例48

3.5.1实例概述48

3.5.2窗体设计49

3.5.3程序设计及测试50

第4章Freescale08系列MCU概述53

4.108系列MCU简介53

4.1.1Freescale半导体公司MCU的命名规则53

4.1.208系列MCU资源简介54

4.2HC08系列MCU56

4.2.1MC68HC908GP32MCU的性能概述56

4.2.2内部结构简图与引脚功能57

4.2.3GP32存储器组织60

4.3HCS08系列MCU61

4.3.1HCS08系列MCU的基本特征61

4.3.2MC9S08GB60的内部结构简图与引脚功能62

4.3.3GB60存储器组织64

第5章HC08CPU与汇编基础66

5.1HC08CPU基本构成66

5.2寻址方式68

5.3指令系统73

5.3.1数据传送类指令74

5.3.2算术运算类指令76

5.3.3逻辑运算类指令80

5.3.4位操作类指令81

5.3.5移位类指令81

5.3.6程序控制类指令83

5.3.7其他指令85

5.4HCS08CPU与HC08CPU的比较87

5.508汇编语言基础88

5.5.108汇编源程序格式88

5.5.208伪指令89

第6章普通I/O与第一个汇编程序91

6.1MC68HC908GP32的普通I/O91

6.1.1A接口92

6.1.2B接口93

6.1.3C接口.D接口和E接口94

6.2汇编程序编程框架95

6.2.108汇编主程序组成96

6.2.2第一个可执行的08汇编程序97

6.308汇编语言编译过程所涉及的文件98

6.4SD-HC08嵌入式MCU在线编程集成开发系统101

6.4.1硬件系统说明101

6.4.2软件使用说明103

第7章08C语言107

7.1MCU的C语言编程概述107

7.1.1MCU编程语言107

7.1.2CPU的C语言108

7.2标准C语言的基本语法108

7.2.1数据类型109

7.2.2运算符109

7.2.3流程控制110

7.2.4函数114

7.2.5指针115

7.2.6结构体116

7.2.7编译预处理118

7.2.8用typedef定义类型119

7.308C语言的使用119

7.3.1寄存器和I/O端口的使用119

7.3.2使用汇编指令120

7.3.3中断处理121

7.3.408C语言的常用库函数122

7.408C语言程序编程框架123

7.4.1实践环境123

7.4.208C语言程序的组成124

7.4.3第一个08C语言例程124

7.508C语言的编译过程126

7.5.1编译过程127

7.5.2编译文件输出127

7.608C编程技巧133

7.6.1数据类型的选用133

7.6.2算法设计问题134

7.6.3数据存储器的分配134

7.6.4MCU08C语言与汇编语言的混合编程135

第2部分HC08系列MCU的功能模块及基本应用

第8章串行通信接口(SCI)与串行外设接口(SPI)138

8.1串行通信基本知识概要138

8.1.1基本概念138

8.1.2RS-232C总线标准140

8.2SCI的外围硬件电路与基本编程原理142

8.2.1SCI的外围硬件电路142

8.2.2SCI的基本编程原理143

8.3SCI模块的编程结构144

8.3.1SCI的寄存器145

8.3.2串行接口初始化与收发编程的基本方法149

8.4串行通信编程实例150

8.4.108汇编语言串行通信子程序150

8.4.208汇编语言串行通信测试实例153

8.4.308C语言串行通信子程序与测试实例158

8.5SPI模块的编程结构及应用实例162

8.5.1SPI的基本工作原理163

8.5.2SPI的寄存器164

8.5.3SPI编程基本方法166

8.6SPI应用实例——高位A/D扩展接口167

8.6.1TLC2543芯片简介167

8.6.2TLC2543与GP32MCU接口扩展169

第9章键盘中断模块与A/D转换模块174

9.1键盘基本问题与GP32的键盘中断接口174

9.1.1键盘的基本问题174

9.1.2MC68HC908GP32MCU的键盘中断模块175

9.2汇编语言键盘中断模块编程实例177

9.2.1按键识别与键盘定义子程序177

9.2.2键盘中断编程举例180

9.308C语言键盘中断模块编程实例183

9.3.1按键识别与键盘定义函数183

9.3.2键盘中断编程08C语言举例185

9.4MC68HC908GP32MCU内部的A/D转换模块187

9.4.1A/D转换相关基础知识187

9.4.2MC68HC908GP32A/D转换模块的寄存器188

9.4.3A/D转换模块的基本编程方法189

9.5MC68HC908GP32MCUA/D转换编程实例190

9.5.1A/D转换汇编语言编程实例190

9.5.2A/D转换08C语言编程实例193

第10章定时接口模块196

10.1计数器/定时器的基本工作原理196

10.1.1实现计数与定时的基本方式196

10.1.2MC68HC908GP32MCU的定时接口的基本原理概述197

10.2定时器模块的编程基础199

10.2.1定时器模块的3个基本寄存器199

10.2.2定时溢出中断编程汇编程序例201

10.2.3定时溢出中断编程C语言程序例205

10.3定时器模块的输入捕捉功能208

10.3.1输入捕捉功能的基本含义208

10.3.2输入捕捉的寄存器209

10.3.3输入捕捉中断编程实例211

10.4定时器模块的输出比较功能214

10.4.1输出比较功能的基本含义215

10.4.2输出比较的寄存器215

10.4.3不带缓冲输出比较与带缓冲的输出比较216

10.5定时器模块的脉宽调制输出功能217

10.5.1脉冲宽度调制器PWM217

10.5.2用定时器通道实现PWM218

10.5.3不带缓冲脉宽调制输出与带缓冲脉宽调制输出218

10.5.4PWM编程汇编语言例219

10.5.5PWM编程C语言例221

第11章Flash存储器的在线编程224

11.1Flash存储器概述与编程模式224

11.1.1Flash存储器的基本特点与编程模式225

11.1.2M68HC08系列MCUFlash存储器的特点与编程模式225

11.2MC68HC908GP32MCUFlash存储器编程方法227

11.2.1Flash存储器编程的基本概念227

11.2.2Flash存储器的编程寄存器228

11.2.3Flash存储器的编程过程229

11.3GP32MCUFlash在线编程汇编语言实例231

11.3.1Flash存储器的擦除及写入汇编子程序231

11.3.2Flash存储器在线编程汇编主程序及计算机方程序235

11.4GP32MCUFlash存储器在线编程C语言实例242

11.4.1Flash存储器的擦除及写入C语言子函数242

11.4.2Flash存储器在线编程C语言主函数245

11.5HCS08系列MCU的Flash存储器编程方法246

11.5.1Flash存储器的编程寄存器246

11.5.2Flash存储器的编程过程249

11.5.3Flash存储器的安全性251

第12章GP32MCU的其他功能模块253

12.1CONFIG寄存器253

12.2时钟发生模块与锁相环254

12.2.1PLL的基本概念255

12.2.2MC68HC908GP32的CGM结构及外部连接器件256

12.2.3CGM的编程基础258

12.2.4PLL参数计算与编程步骤262

12.2.5初始化及PLL编程实例263

12.3中断265

12.3.1中断源与中断向量地址265

12.3.2IRQ引脚中断267

12.3.3断点模块与软件中断指令267

12.4复位与系统集成模块268

12.4.1复位268

12.4.2系统集成模块268

12.5低功耗模式与看门狗功能269

12.5.1低功耗模式269

12.5.2系统正常操作监视模块270

12.6监控模块MON271

12.7定时基模块272

第13章LCD与LED编程273

13.1LCD概述273

13.1.1LCD的特点273

13.1.2LCD的分类274

13.2点阵字符型LCD的接口特性274

13.2.1点阵字符型LCD模块的基本特点275

13.2.2HD44780的引脚与时序275

13.2.3HD44780的编程结构277

13.2.4HD44780的指令集279

13.3点阵字符型LCD编程实例280

13.3.1LCD编程汇编程序例281

13.3.2LCD编程C语言程序例286

13.4数码管编程实例288

13.4.1扫描法LED显示编程原理288

13.4.2接口编程实例290

第3部分常用外部设备的应用扩展

第14章USB接口296

14.1USB通信基本知识概要296

14.1.1有关基本概念296

14.1.2USB总线标准299

14.2USB的通信协议299

14.2.1包300

14.2.2封包格式301

14.2.3事务302

14.2.4控制传输304

14.2.5设备列举305

14.3USB模块的编程方法309

14.3.1USB功能模块310

14.3.2USB复位信号310

14.3.3USB悬挂310

14.3.4USB低速设备311

14.3.5USB寄存器311

14.3.6USB中断317

14.3.7USB接口初始化与数据的收发编程318

第15章CAN通信接口327

15.1现场总线概述327

15.2CAN技术规范328

15.2.1CAN的基本概念328

15.2.2CAN总线的位数值表示与通信距离329

15.2.3报文传输和帧结构330

15.2.4错误处理333

15.2.5故障界定334

15.2.6位定时与同步334

15.3MSCAN08模块及其外围接口硬件电路335

15.3.1MSCAN08模块335

15.3.2总线驱动芯片PCA82C250336

15.3.3MSCAN08通信接口硬件电路337

15.3.4MSCAN08编程原理337

15.4MSCAN08模块的编程结构338

15.4.1报文存储338

15.4.2控制寄存器340

15.4.3CAN接口初始化与CAN报文收发编程的基本方法348

15.5MSCAN08编程实例350

第16章08系列MCU编程器的开发355

16.1编程器技术基础355

16.1.1HC08系列MCU的监控模式355

16.1.2HC08系列MCU的监控ROM程序356

16.1.3HC08系列MCU在监控模式下的工作过程357

16.1.4HC08系列MCU的监控命令359

16.2HC08系列MCU编程器的实现方法361

16.2.1HC08编程器硬件设计方案361

16.2.2HC08编程器软件设计思想362

16.3HC08系列MCU编程器实例363

16.3.1硬件设计363

16.3.2主控MCU发送和接收1个字节子程序364

16.3.3主控MCU发送保密字节366

16.3.4发送监控命令367

16.3.5针对目标芯片JB8的编程368

16.3.6基板中主控MCU的编程371

16.4HCS08系列MCU编程器原理374

16.4.1两种系列MCU的结构差异374

16.4.2激活的背景工作模式375

16.4.3数据通信格式375

16.4.4BDC命令378

第17章工业以太网380

17.1工业以太网概要380

17.1.1技术概要380

17.1.2工业以太网的优势381

17.1.3工业以太网互连模型382

17.1.4工业以太网技术应解决的问题及相关措施383

17.28位MCU的嵌入式以太网接口设计实例384

17.2.1嵌入式以太网接口分析385

17.2.2硬件设计388

17.2.3工业以太网接口驱动程序设计388

第18章非接触式IC卡及其读写设备395

18.1智能卡基本知识概要395

18.1.1关于智能卡395

18.1.2智能卡的接口设备396

18.1.3智能卡的国际标准396

18.2非接触式IC卡397

18.2.1非接触式IC卡397

18.2.2非接触卡的应用398

18.2.3非接触式IC卡Mifare399

18.2.4非接触式IC卡标准ISO/IEC14443401

18.3非接触式IC卡读写设备设计402

18.3.1概述402

18.3.2硬件设计404

18.3.3低端软件设计408

18.3.4计算机软件设计415

附录

附录AGP32寄存器及中断向量简表417

附录BMC9S08GB60的寄存器和向量表422

附录CCPU08按字母索引的指令系统427

附录DHC08标准头文件(GP32汇编语言用)437

附录EHC08标准头文件(GP32C语言用)439

附录F08C函数库441

附录G射频读写芯片MFRC500寄存器445

参考书目448