当前位置:首页 > 工业技术
单片机原理及其应用
单片机原理及其应用

单片机原理及其应用PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:袁涛,李月香,杨胜利编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2012
  • ISBN:9787302278016
  • 页数:396 页
图书介绍:本书介绍了嵌入式系统的基本原理与应用设计。
《单片机原理及其应用》目录

第1章 单片机介绍 1

1.1 μPD78F0485单片机简介 1

1.2 μPD78F0485单片机功能及结构 2

1.2.1功能 2

1.2.2引脚配置 3

1.2.3功能结构 4

1.2.4引脚的端口和非端口功能 4

1.2.5引脚功能描述 10

1.3 μPD78F0485单片机的应用举例 14

第2章CPU结构 15

2.1存储器结构 15

2.1.1内部程序存储器空间 15

2.1.2内部数据存储器空间 17

2.1.3特殊功能寄存器(SFR)区域 17

2.2处理器寄存器 18

2.2.1控制寄存器 18

2.2.2通用寄存器 19

2.2.3特殊功能寄存器(SFR) 19

2.3存储器、寄存器使用举例 25

第3章 输入/输出端口 27

3.1端口功能及作用 27

3.2端口配置及电路 28

3.2.1端口1(P1) 28

3.2.2端口2(P2) 29

3.2.3端口3(P3) 32

3.2.4端口4(P4) 33

3.2.5端口8~端口10和端口13~端口15 34

3.2.6端口11(P11) 35

3.2.7端口12(P12) 38

3.3端口功能控制寄存器 39

3.3.1端口模式寄存器(PM1~PM4、PM8~PM15) 39

3.3.2端口寄存器(P1~P4、P8~P15) 39

3.3.3上拉电阻选择寄存器(PU1、PU3、PU4、PU8~PU15) 41

3.3.4端口功能寄存器1、2(PF1、PF2) 41

3.3.5端口功能寄存器ALL(PFALL) 42

3.4 I/O端口功能使用 42

第4章 时钟发生器 44

4.1时钟发生器的功能 44

4.1.1主系统时钟 44

4.1.2副系统时钟 45

4.1.3内部低速振荡时钟 45

4.2时钟发生器的硬件组成 45

4.2.1控制寄存器和振荡器 45

4.2.2时钟发生器电路框图 45

4.3时钟发生器控制寄存器 47

4.3.1时钟操作模式选择寄存器(OSCCTL) 48

4.3.2处理器时钟控制寄存器(PCC) 48

4.3.3内部振荡模式寄存器(RCM) 49

4.3.4主振荡控制寄存器(MOC) 50

4.3.5主时钟模式寄存器(MCM) 50

4.4外部系统时钟振荡器的连接 51

4.4.1 X1振荡器连接电路 51

4.4.2 XT1振荡器连接电路 51

4.4.3外部系统时钟振荡器的连接要点 52

4.5上电时的时钟发生器操作 53

4.6时钟的控制 53

4.6.1高速系统时钟控制 53

4.6.2内部高速振荡时钟控制 55

4.6.3副系统时钟控制 55

4.6.4内部低速振荡时钟控制 56

4.6.5 CPU和外围硬件使用的时钟 57

4.6.6 CPU时钟状态转换图 57

4.6.7外围硬件与源时钟 57

4.6.8时钟发生电路应用举例 59

第5章 时钟输出和蜂鸣器输出 61

5.1时钟输出、蜂鸣器输出电路的功能 61

5.2时钟输出、蜂鸣器输出控制电路的硬件组成 61

5.2.1时钟输出、蜂鸣器输出控制电路的配置 62

5.2.2时钟输出、蜂鸣器输出控制电路框图 62

5.3时钟输出、蜂鸣器输出控制器的寄存器 63

5.3.1时钟输出选择寄存器(CKS) 63

5.3.2端口模式寄存器PM1和端口寄存器P1 64

5.3.3端口模式寄存器PM3和端口寄存器P3 64

5.4时钟输出、蜂鸣器输出控制器的操作 64

5.4.1时钟输出控制器的操作 64

5.4.2蜂鸣器输出控制器的操作 65

5.4.3蜂鸣器输出应用举例 66

第6章10位和16位A/D转换 68

6.1 10位逐次逼近型A/D转换电路的功能 68

6.2 A/D转换电路的硬件组成及工作原理 68

6.2.1 10位逐次逼近型A/D转换电路组成 68

6.2.2 10位逐次逼近型A/D转换电路原理 69

6.3 10位逐次逼近型A/D转换器的寄存器 71

6.3.1转换器模式寄存器(ADM) 71

6.3.2 A/D转换结果寄存器ADCR和ADCRH 72

6.3.3模拟输入通道选择寄存器(ADS) 73

6.3.4 A/D端口配置寄存器(ADPC0) 73

6.3.5端口功能寄存器2(PF2) 73

6.3.6端口模式寄存器2(PM2) 74

6.4 10位逐次逼近型A/D转换器的使用 75

6.4.1 A/D转换器的设置方法 75

6.4.2 A/D转换器设置过程举例 75

6.4.3输入电压和转换结果的关系 76

6.4.4 10位逐次逼近型A/D转换器的主要技术参数描述 76

6.5 10位逐次逼近型A/D转换器应用举例 77

6.6 16位△∑型A/D转换器介绍 79

6.6.1 16位△∑型A/D转换器的功能和电路结构 79

6.6.2 16位△∑型A/D转换器的寄存器 81

6.6.3 16位△∑型A/D转换器的操作及应用举例 84

第7章 中断功能和按键返回功能 87

7.1中断功能的类型 87

7.1.1可屏蔽中断 87

7.1.2软件中断 87

7.2中断源及配置 88

7.2.1中断源 88

7.2.2中断功能的电路配置 89

7.2.3中断功能电路所使用的寄存器 91

7.3中断响应操作 94

7.3.1可屏蔽中断请求响应操作 94

7.3.2软件中断响应操作 94

7.3.3中断嵌套 94

7.4可屏蔽中断功能应用举例 95

7.5按键返回功能 96

7.5.1按键返回中断功能的硬件配置 96

7.5.2按键返回功能应用举例 97

第8章LCD控制器/驱动器 99

8.1 LCD控制器/驱动器电路功能及结构 99

8.1.1 LCD控制器/驱动器电路的功能 99

8.1.2各种显示模式下显示的最多像素 100

8.1.3 LCD控制器/驱动器的硬件配置及电路 100

8.2 LCD控制器/驱动器的控制寄存器格式和位定义 102

8.2.1 LCD模式寄存器(LCDMD) 102

8.2.2 LCD显示模式寄存器(LCDM) 102

8.2.3 LCD时钟控制寄存器(LCDC0) 103

8.2.4端口功能寄存器2(PF2) 104

8.2.5端口功能寄存器ALL(PFALL) 104

8.3 LCD控制器/驱动器的设置过程 105

8.4 LCD显示数据存储器 105

8.5不同的偏压方式、显示模式下的COM和SEG信号 106

8.5.1不同显示模式下的COM信号电压及波形 106

8.5.2不同偏压方式下COM信号和SEG信号电压和相位 108

8.5.3静态显示模式LCD和单片机的连接及信号控制 110

8.5.4 2分时显示模式LCD和单片机的连接及信号控制 110

8.5.5 3分时显示模式LCD和单片机的连接及信号控制 112

8.5.6 4分时显示模式LCD和单片机的连接及信号控制 113

8.6 LCD驱动电源电压VLC0.VLC1.VLC2和VLC3 116

8.7 LCD驱动器/控制器应用举例 116

第9章UART串行通信 118

9.1串行接口UART0的电路功能及结构 118

9.1.1 UART0的功能 118

9.1.2 UART0的硬件配置 118

9.1.3 UART0的电路原理 119

9.1.4 UART0的数据寄存器 119

9.2 UART0控制寄存器的格式和位定义 121

9.2.1异步串行接口操作模式寄存器0(ASIM0) 121

9.2.2异步串行接收错误状态寄存器0(ASIS0) 122

9.2.3波特率发生器控制寄存器0(BRGC0) 122

9.2.4端口功能寄存器1(PF1) 123

9.2.5端口模式寄存器1(PM1) 124

9.3串行接口UART0的操作描述 124

9.3.1操作停止模式 124

9.3.2异步串行接口(UART)模式 125

9.3.3发送/接收数据的格式和波形 125

9.3.4发送过程 126

9.3.5接收过程 126

9.3.6波特率的计算 126

9.4单片机与计算机USB串行通信应用举例 126

9.4.1 USB通信环境的搭建 127

9.4.2单片机UART发送、接收程序举例 129

9.5 UART6功能简介 131

第10章3线串行通信 133

10.1串行接口CSI10的电路功能及结构 134

10.1.1串行接口CSI10的功能 134

10.1.2串行接口CSI10的配置 134

10.2串行接口CSI10的数据寄存器 136

10.2.1发送缓存寄存器10(SOTB10) 136

10.2.2串行I/O移位寄存器10(SIO10) 136

10.3串行接口CSI10的控制寄存器 136

10.3.1串行操作模式寄存器10(CSIM10) 136

10.3.2串行时钟选择寄存器10(CSIC10) 136

10.3.3端口功能寄存器1(PF1) 138

10.3.4端口模式寄存器1(PM1) 138

10.4串行接口CS110的操作描述 139

10.4.1操作停止模式 139

10.4.2 3线串行I/O模式 139

10.5 3线串行通信应用举例 145

第11章16位定时器/事件计数器 147

11.1 16位定时器/事件计数器00的功能及结构 147

11.1.1 16位定时器/事件计数器00的功能 147

11.1.2 16位定时器/事件计数器00的硬件配置及电路原理 148

11.2 16位定时器/事件计数器00的数据寄存器 148

11.2.1 16位定时器计数器00(TM00) 148

11.2.2 16位定时器捕获/比较寄存器CR000和CR010 150

11.3 16位定时器/事件计数器的控制寄存器 151

11.3.1 16位定时器模式控制寄存器00(TMC00) 151

11.3.2捕获/比较控制寄存器00(CRC00) 152

11.3.3 16位定时器输出控制寄存器00(TOC00) 152

11.3.4预分频模式寄存器00(PRM00) 154

11.3.5输入切换控制寄存器(1SC) 155

11.3.6端口模式寄存器3(PM3) 155

11.4 16位定时器/事件计数器的几种操作模式 156

11.4.1停止操作模式 156

11.4.2自由运行模式 156

11.4.3 TI000引脚有效沿输入时进入清零并启动运行模式 156

11.4.4 TM00和CR000相等时进入清零并启动运行模式 157

11.5 16位定时器/事件计数器应用举例 157

11.5.1间隔定时器 157

11.5.2方波输出 159

11.5.3外部事件计数 160

第12章8位定时器/事件计数器5 163

12.1 8位定时器/事件计数器5的功能及结构 163

12.1.1 8位定时器/事件计数器50、51和52的功能 163

12.1.2 8位定时器/事件计数器50、51和52的寄存器配置 163

12.2 8位定时器/事件计数器50、51、52的数据寄存器 165

12.2.1 8位定时器计数器5n(TM5n) 165

12.2.2 8位定时器比较寄存器5n(CR5n) 165

12.3 8位定时器/事件计数器的控制寄存器 166

12.3.1定时器时钟选择寄存器5n(TCL5n) 166

12.3.2 8位定时器模式控制寄存器5n(TMC5n) 167

12.3.3输入切换控制寄存器ISC 169

12.3.4端口模式寄存器PM3和PM4 169

12.4 8位定时器/事件计数器5的操作及举例 170

12.4.1用作间隔定时器的操作及举例 170

12.4.2用作外部事件计数器的操作及举例 171

12.4.3用作方波输出功能的操作及举例 172

12.4.4用作PWM输出功能的操作及举例 173

第13章8位定时器H 175

13.1 8位定时器H的功能及寄存器配置 175

13.1.1 8位定时器H的功能 175

13.1.2 8位定时器H的寄存器配置 175

13.2 8位定时器H的数据寄存器 179

13.2.1 8位定时器H比较寄存器0n(CMP0n) 179

13.2.2 8位定时器H比较寄存器1n(CMPln) 179

13.3 8位定时器H0、Hl和H2的控制寄存器 179

13.3.1定时器H模式寄存器TMHMDn 179

13.3.2 8位定时器H载波控制寄存器TMCYCl 182

13.3.3端口模式寄存器PM3 183

13.4 8位定时器H的操作及举例 183

13.4.1用作间隔定时器/方波输出的操作及举例 183

13.4.2用作PWM输出功能的操作及举例 185

13.5载波发生器功能 188

13.5.1载波信号的发生 188

13.5.2载波输出控制 189

13.5.3载波发生器功能的操作 189

13.5.4载波发生器模式操作时序 191

第14章 实时计数器 195

14.1实时计数器的功能及结构 195

14.1.1实时计数器的功能 195

14.1.2实时计数器的硬件配置及电路原理 195

14.2实时计数器的控制寄存器 197

14.2.1实时计数器时钟选择寄存器 197

14.2.2实时计数器控制寄存器0 197

14.2.3实时计数器控制寄存器1 199

14.2.4实时计数器控制寄存器2 200

14.2.5副计数寄存器 200

14.2.6秒计数寄存器 201

14.2.7分计数寄存器 201

14.2.8时计数寄存器 201

14.2.9日计数寄存器 202

14.2.10周计数寄存器 202

14.2.11月计数寄存器 202

14.2.12年计数寄存器 203

14.2.13钟表校准寄存器 203

14.2.14分钟报警寄存器 203

14.2.15小时报警寄存器 204

14.2.16星期报警寄存器 204

14.3实时计数器的操作流程 205

14.4实时计数器应用举例 207

第15章 看门狗定时器 209

15.1看门狗定时器的功能及结构 209

15.1.1看门狗定时器的功能 209

15.1.2看门狗定时器的寄存器配置及电路原理 210

15.2看门狗定时器的操作 212

15.2.1看门狗定时器的控制操作 212

15.2.2看门狗定时器溢出时间的设置 212

15.2.3看门狗定时器窗口打开时间区域的设置 212

15.3看门狗定时器应用举例 213

第16章 待机功能 215

16.1待机功能的两种模式 215

16.1.1 HALT模式 215

16.1.2 STOP模式 215

16.2控制待机功能的寄存器 216

16.2.1振荡稳定时间计数器的状态寄存器(OSTC) 216

16.2.2振荡稳定时间选择寄存器(OSTS) 216

16.3待机功能的操作 217

16.3.1 HALT模式的操作 217

16.3.2 STOP模式的操作 220

16.4待机功能的应用举例 222

第17章 低电压检测功能 225

17.1低电压检测器的功能 225

17.2低电压检测器的电路配置 226

17.2.1低电压检测器电路框图 226

17.2.2低电压检测器的寄存器 226

17.3低电压检测器的应用 228

17.3.1检测供电电压(VDD)等级产生中断的操作 228

17.3.2检测外部引脚输入电压(EXLVI)产生中断的操作 229

17.3.3低电压检测应用举例 231

第18章 综合应用举例 233

18.1声光彩灯设计举例 233

18.2流水灯设计举例 235

18.3在液晶显示屏上显示A/D转换值的设计 242

18.4一个简易的电子温度计设计 245

18.5电子日历钟设计 250

18.6 GSM数据通信设计 260

第19章 低功耗设计 266

19.1低功耗设计的硬件基础 266

19.1.1选用低功耗的单片机 266

19.1.2选用多振荡源、多工作频率可在线改变的单片机 267

19.1.3选用低功耗外围元器件 267

19.1.4选用漏电流低的外围驱动器件 268

19.1.5上拉电阻的重要作用 268

19.2低功耗设计的软件基础 268

19.2.1能用整数运算时不要使用浮点数运算 268

19.2.2减少不必要的空循环 269

19.2.3减少软件循环延时程序,使用硬件定时器 269

19.2.4减少复杂运算公式,表格与计算相结合 269

19.2.5避免不必要的状态灯持续显示 269

19.3低功耗设计的算法基础 269

19.3.1低功耗设计须注意算法选择 269

19.3.2低功耗设计应该注意算法中的离线计算 270

19.3.3低功耗设计应该注意算法中的特殊性 270

第20章 基于模型设计方法——代码自动生成 271

20.1嵌入式系统传统设计手段的缺陷 271

20.2嵌入式系统开发新方法的意义和目的 271

20.3基于模型的设计新方法与相关工具 272

20.4设计示例 272

第21章C高级语言基础 297

21.1 C高级语言及其特点 297

21.2使用C高级语言的必要性 298

21.3字符集和标识符 299

21.3.1字符集 299

21.3.2标识符和保留字 299

21.3.3符号分界符和空符号的作用 299

21.3.4注释 300

21.4常量 300

21.4.1整型常量 300

21.4.2实型常量 301

21.4.3字符常量和字符串常量 301

21.5变量及变量定义 301

21.5.1整型变量 301

21.5.2实型变量 302

21.5.3字符变量 302

21.5.4各种类型变量的数值范围 302

21.6运算表达式及规则 303

21.6.1表达式 303

21.6.2算术运算及其表达式 303

21.6.3关系运算及其表达式 304

21.6.4逻辑运算及其表达式 304

21.6.5表达式计算 305

21.7数组和结构 306

21.7.1数组说明 306

21.7.2数组元素的引用 307

21.7.3结构 307

21.7.4结构体数组和结构体内数组 308

21.8赋值语句和赋值表达式 309

21.8.1赋值语句 309

21.8.2赋值表达式 310

21.9循环控制语句 310

21.9.1 while语句 310

21.9.2 do-while语句 310

21.9.3 for语句 311

21.10条件(if)语句 311

21.10.1 if语句 311

21.10.2嵌套if语句 312

21.11语句标号和GOTO语句 313

21.12函数 313

21.12.1函数定义的一般形式 313

21.12.2函数参数 314

21.12.3函数的返回值 314

21.12.4函数的调用 315

21.13指针 316

21.13.1指针的概念 316

21.13.2指针与数组 317

21.14扩展功能 319

21.14.1 CC78K0编译系统扩展的保留字 319

21.14.2 callt、callf和norec指令 320

21.14.3#pragma指令 321

21.14.4 callt函数(callt/_callt) 321

21.14.5寄存器变量 322

21.14.6 saddr存储区的使用 322

21.14.7特殊功能寄存器(SFR)的使用 324

21.14.8位变量的使用 325

21.14.9在C语言中使用汇编语句 326

21.14.10中断功能的使用 327

21.14.11开中断函数EI()和关中断函数DI() 329

21.14.12 CPU控制指令 329

21.14.13绝对地址存取指令 330

21.14.14位段的声明 331

21.14.15二进制常数 332

21.14.16循环移位 333

21.14.17乘法函数 334

21.14.18除法函数 335

21.14.19 BCD操作函数 336

21.14.20寄存器直接存取操作函数 338

21.14.21 callf函数(callf/_callf) 340

21.14.22 noauto函数 341

21.14.23 norec函数 342

21.14.24中断函数限定符 343

21.14.25 SADDR存储区的符号名 345

21.14.26程序限制 346

附录A EZ/EM-1开发工具的安装与使用 348

A.1开发工具硬件组件 348

A.2开发环境支持软件 348

A.3开发环境支持软件的安装步骤 349

附录B μPD78F0485单片机实验培训系统 353

B.1实验培训系统介绍 353

B.1.1外观图 353

B.1.2端口、引脚分配表 353

B.1.3电路原理图 355

B.1.4 PCB图 356

B.2实验培训系统提供的基本实验 358

附录C浮点数处理实验及开发工具使用 360

C.1实验设备 360

C.2实验内容 360

C.3程序流程图及程序源代码 360

C.4实验步骤 362

C.5选项字设置程序 365

C.6 PM plus环境下常用操作快捷键 365

附录D用仿真工具操作硬件电路的方法 366

D.2键盘操作 367

D.3直流电压表操作 367

D.4 A/D转换器操作 367

D.5蜂鸣器操作 368

D.6 LED小灯测试 368

D.7液晶显示屏测试 368

D.8实时计数器控制秒定时小灯测试 369

附录E GSM无线模块数据通信实验 370

E.1实验设备 370

E.2实验内容 370

E.3实验步骤 370

E.4实验示例 373

E.4.1短信指令解析 373

E.4.2短信指令应用举例 376

附录F选项字节 381

F.1选项字节的功能 381

F.1.1定义0080H字节设置内部低速振荡器和看门狗定时器 381

F.1.2定义0081 H字节设置内部上电清零模式(POC) 381

F.1.3定义0084H字节设置片上调试操作控制 382

F.2选项字节的格式 382

F.3选项字节设置举例 383

附录G Flash存储器容量设置及编程 385

G.1 Flash存储器容量设置 385

G.2用Flash编程器写入数据时的电路连接 386

G.2.1 On-board编程 386

G.2.2 Off-board编程 387

附录H 78KO系列单片机指令集 389

参考文献 396

相关图书
作者其它书籍
返回顶部