《高性能8位单片机程序设计与实践》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:余小清,万旺根,邓继军,王亚男编著
  • 出 版 社:上海:上海大学出版社
  • 出版年份:2012
  • ISBN:9787567101630
  • 页数:379 页
图书介绍:本书作者结合实践经验,从单片机基础知识点开始,内容循序渐进,分八个部分详细介绍了单片机应用程序范例的开发知识、开发思路及系统设计: EM78F6xx芯片体系结构、汇编语言程序设计、 C语言程序设计及C编译器、C语言控制硬件的相关编程、 eUIDE软件的介绍及开发工具使用、 基本应用实例、实际应用范例、UWTR烧录器的介绍及使用。

第1章 EM78F6xx芯片体系结构 1

1.1 EM78F6xx单片机功能特点 1

1.2 EM78F6xx单片机引脚功能 8

1.2.1 引脚分布图 8

1.2.2 引脚功能说明 9

1.3 EM78F6xx单片机中央处理器CPU 13

1.3.1 结构概述 13

1.3.2 通用寄存器 13

1.3.3 特殊功能寄存器 35

1.4 EM78F6xx单片机复位、唤醒和中断 38

1.4.1 单片机复位 38

1.4.2 休眠和唤醒 40

1.4.3 单片机中断 42

1.4.4 外部上电复位电路 44

1.5 TCC/WDT及预分频器Prescaler 44

1.6 数据EEPROM 45

1.6.1 数据EEPROM控制寄存器 46

1.6.2 编程步骤及实例演示 46

1.7 I/O端口 47

1.8 A/D转换器 50

1.8.1 A/D转换控制寄存器 50

1.8.2 A/D采样时间 52

1.8.3 A/D转换时间 52

1.8.4 休眠模式时的A/D转换 53

1.8.5 编程事项 53

1.9 脉宽调制 55

1.9.1 概述 55

1.9.2 增量定时器/计数器 56

1.9.3 PWM周期(PRDX:PRDA或PRDB) 56

1.9.4 PWM占空比(DTX:DTA/DTB) 56

1.9.5 PWM编程步骤 56

1.10 定时器/计数器 57

1.10.1 定时器/计数器1 57

1.10.2 定时器/计数器2 58

1.10.3 定时器/计数器3 59

1.11 通用异步收发器(UART) 61

1.11.1 Bank 2 RA URC1(UART控制器寄存器1) 61

1.11.2 Bank 2 RB URC2(UART控制器寄存器2) 62

1.11.3 Bank 2 RC URS(UART状态寄存器) 63

1.11.4 Bank 2 RD URRD(UART接收数据缓冲器) 63

1.11.5 Bank 2 RE URTD(UART发送数据缓冲器) 63

1.11.6 UART模式 65

1.11.7 UART发送过程 65

1.11.8 UART接收过程 65

1.11.9 UART波特率发生器 66

1.12 串行外围接口(SPI) 66

1.12.1 简介和特点 66

1.12.2 SPI功能描述 68

1.12.3 SPI信号及引脚描述 69

1.12.4 相关寄存器编程 69

1.12.5 SPI模式时序 71

1.12.6 SPI软件应用 72

1.13 振荡器 74

1.13.1 晶体振荡器/陶瓷晶振器 75

1.13.2 外部RC振荡器模式 76

1.13.3 内部RC振荡器 77

1.14 代码选项 77

1.14.1 代码选项寄存器(Word 0) 77

1.14.2 代码选择寄存器(Word 1) 79

1.14.3 用户ID寄存器(Word 2) 80

第2章 汇编语言程序设计 81

2.1 编译器和链接器工作流程 81

2.2 汇编语言语法 82

2.3 数据类型 84

2.4 汇编算术操作 84

2.5 程序指令 84

2.6 条件汇编 91

2.7 保留字 92

2.7.1 指令和操作符 92

2.7.2 指令集 93

2.8 伪指令 93

第3章 C语言程序设计及C编译器 95

3.1 C语言程序设计 95

3.1.1 注释 95

3.1.2 保留字 95

3.1.3 预处理命令 96

3.1.4 常量 99

3.1.5 基本数据类型 100

3.1.6 枚举类型 101

3.1.7 结构体和共用体 101

3.1.8 数组 102

3.1.9 指针 102

3.1.10 运算符 102

3.1.11 程序结构设计 105

3.1.12 函数 108

3.2 C编译器 109

3.2.1 C编译器的使用 109

3.2.2 C编译器的调试 115

第4章 C语言控制硬件的相关编程 117

4.1 寄存器页面 117

4.2 I/O控制页面 119

4.3 RAM寻址空间 120

4.3.1 位类型 121

4.3.2 Data/LCD RAM的间接寻址 122

4.4 ROM寻址空间 122

4.4.1 分配C函数到程序ROM 122

4.4.2 在程序ROM中存储数据 123

4.5 嵌入式汇编器 124

4.5.1 保留字 124

4.5.2 在嵌入式汇编代码中使用C变量 124

4.6 宏的使用 126

4.7 中断程序 126

4.7.1 中断保存操作 126

4.7.2 中断服务程序 127

4.7.3 保留的一般寄存器的相关操作 127

第5章 eUIDE软件的介绍及开发工具使用 131

5.1 eUIDE软件简介 131

5.1.1 系统要求 131

5.1.2 软件安装 131

5.1.3 与ANSI标准的兼容 131

5.2 eUIDE软件的界面 132

5.2.1 工程窗口 132

5.2.2 编辑窗口 134

5.2.3 特殊寄存器窗口 139

5.2.4 堆栈窗口 140

5.2.5 通用寄存器(RAM区)窗口 143

5.2.6 监视窗口 144

5.2.7 数据RAM窗口 148

5.2.8 LCD RAM窗口 149

5.2.9 EEPROM窗口 151

5.2.10 输出窗口 152

5.3 eUIDE的菜单和相关设定 153

5.3.1 Edit菜单 153

5.3.2 View菜单 154

5.3.3 Project菜单 154

5.3.4 Debug菜单 155

5.3.5 Tool菜单 157

5.3.6 Option菜单 159

5.3.7 Window菜单 166

5.3.8 Help菜单 167

5.4 eUIDE的工具栏、文件栏、状态栏 167

5.4.1 工具栏 167

5.4.2 文件栏 169

5.4.3 状态栏 169

5.5 eUIDE软件的使用 169

5.5.1 创建一个新项目 171

5.5.2 在文件夹或项目中编辑源文件 178

5.5.3 编译工程 178

5.5.4 下载程序 180

5.5.5 调试工程 180

第6章 基本应用实例 183

6.1 输入输出程序范例 183

6.1.1 I/O端口功能说明 183

6.1.2 I/O端口相关寄存器 183

6.1.3 使用步骤 185

6.1.4 例程 185

6.2 中断/Timer控制程序范例 188

6.2.1 中断功能说明 188

6.2.2 中断相关寄存器 189

6.2.3 使用步骤 191

6.2.4 例程 191

6.2.5 Timer1功能介绍 194

6.2.6 Timer1相关寄存器 194

6.2.7 Timer1定时模式 195

6.2.8 Timer1计数器模式 199

6.2.9 Timer1捕捉模式 199

6.2.10 Timer2功能介绍 199

6.2.11 Timer2相关寄存器 200

6.2.12 Timer2定时器模式 201

6.2.13 Trmer2计数器模式 204

6.2.14 Timer2窗口模式 205

6.2.15 Timer3功能介绍 208

6.2.16 Timer3相关寄存器 208

6.2.17 Timer3定时器模式 210

6.2.18 Timer3计数器模式 213

6.2.19 Timer3 PDO输出模式 213

6.2.20 Timer3 PWM输出模式 215

6.3 ADC/COMP使用程序范例 218

6.3.1 AD转换的介绍和功能 218

6.3.2 相关寄存器 218

6.3.3 AD转换的精度调整 220

6.3.4 AD转换的实现 221

6.3.5 范例 221

6.3.6 COMP相关寄存器 233

6.3.7 COMP程序设计步骤 234

6.3.8 范例 235

6.4 UART/SPI控制程序范例 237

6.4.1 UART相关寄存器 237

6.4.2 UART程序设计步骤 240

6.4.3 UART例程 241

6.4.4 SPI相关寄存器 245

6.4.5 SPI程序设计步骤 248

6.4.6 SPI例程 248

6.5 EEPROM使用程序范例 259

6.5.1 EEPROM的功能 259

6.5.2 相关寄存器 259

6.5.3 程序设计步骤 260

6.5.4 例程 261

6.6 PWM控制范例 264

6.6.1 相关寄存器 264

6.6.2 PWM功能设置步骤 266

6.6.3 计算公式 267

6.6.4 例程 267

第7章 实际应用范例 270

7.1 应用范例之微波炉控制器 270

7.1.1 功能说明 270

7.1.2 硬件电路框图 271

7.1.3 芯片管脚分配 272

7.1.4 程序变量功能说明 274

7.1.5 程序模块功能说明 275

7.1.6 堆栈深度检查 276

7.1.7 程序总体流程图及对应的主程序代码 276

7.1.8 按键扫描模块流程图及对应的程序代码 283

7.1.9 按键处理模块流程图及对应的程序代码 287

7.1.10 负载控制模块流程图及对应的程序代码 292

7.1.11 显示控制模块流程图及对应的程序代码 295

7.2 应用范例之饮水机控制器 299

7.2.1 功能说明 299

7.2.2 硬件电路框图 301

7.2.3 芯片管脚分配 302

7.2.4 程序变量功能说明 303

7.2.5 程序模块功能说明 305

7.2.6 堆栈深度检查 306

7.2.7 程序总体流程图及对应的程序代码 306

7.2.8 按键扫描模块流程图及对应的程序代码 315

7.2.9 按键处理模块流程图及对应的程序代码 319

7.2.10 负载控制模块流程图及对应的程序代码 323

7.2.11 显示控制模块流程图及对应的程序代码 325

7.2.12 ADC采样模块流程图及对应的程序代码 332

7.2.13 ADC校正模块流程图及对应的程序代码 336

第8章 UWTR烧录器的介绍与使用 340

8.1 简介 340

8.1.1 概述 340

8.1.2 UWTR烧录器硬件特性 341

8.1.3 UWriter烧录模式 344

8.1.4 系统应用中硬件的注意事项 346

8.1.5 编程操作的流程图 346

8.2 系统安装 346

8.2.1 系统要求 346

8.2.2 硬件安装和设置 347

8.2.3 软件安装(UWriter程序&UWTR驱动) 348

8.2.4 卸载软件(UWriter程序&UWTR驱动) 352

8.3 UWriter系统入门 354

8.3.1 UWriter软件的启动 354

8.3.2 加载源文件到UWTR缓冲器 357

8.3.3 保存文件 363

8.3.4 OTP/FLASH芯片编程 363

8.3.5 计数报告 365

8.3.6 对一套新的OTP/FLASH芯片编程 366

8.3.7 擦除闪存(FLASH Chip)中的内容 366

8.3.8 滚动编码 366

8.3.9 UWTR固件升级 368

8.4 UWTR的其他软件功能 369

8.4.1 窗口布局的修改 369

8.4.2 窗口布局的修改 371

8.4.3 日志设置 372

8.4.4 UWTR自检 374

8.4.5 字体设置 374

8.4.6 自定义UWTR用户界面 375

附录 UWTR支持的集成电路 379