《单片机C高级语言程序设计及其应用》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:袁涛等编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2001
  • ISBN:7810771175
  • 页数:226 页
图书介绍:C高级语言是目前流行的一种计算机高级语言,主要用于单片机和一般微型计算机。本书具体叙述了C高级语言,包括变量类型、变量定义、函数、可执行语句、浮点运算、与硬件有关的操作、C语言与汇编语言的交叉使用,且有大量经过笔者调试的程序实例;还叙述了编译和连接操作,给出了具体包含上机操作在内的完整程序实例,以及程序固化的操作实例;同时对单片机硬件也进行了相应叙述。<br>本书通俗易懂,很适合初学者使用。本书可作为高等院校和培训班的教材或参考书,也适合从事单片机开发的科技人员和自学读者使用。<br>

上篇 1

第1章 C高级语言基本知识 1

1.1 概述 3

1.1.1 C高级语言及其特点 3

1.1.2 使用C高级语言的必要性 4

1.2 字符集和标识符 4

1.2.1 字符集 4

1.2.2 标识符和保留字 5

1.2.3 符号、分界符和空符号的作用 5

1.2.4 注释 6

1.3 常量 6

1.3.1 整型常量 6

1.3.2 实型常量 7

1.3.3 字符常量和字符串常量*7++++1.4 变量及变量定义 7

1.4.1 整型变量 7

1.4.2 实型变量 8

1.4.3 字符变量 8

1.4.4 各种类型变量的数值范围 8

1.5 运算、表达式及规则 8

1.5.1 运算对象 8

1.5.2 表达式 9

1.5.3 算术运算及其表达式 9

1.5.4 关系运算及其表达式 10

1.5.5 逻辑运算及其表达式 10

1.5.6 表达式计算 11

1.6 数组和结构 12

1.6.1 数组 12

1.6.2 数组元素的引用 13

1.6.3 结构 13

1.6.4 结构体数组和结构体内数组 14

第2章 C可执行语句 15

2.1 赋值语句和赋值表达式 15

2.1.1 赋值语句 15

2.1.2 赋值表达式 15

2.2 循环控制语句 16

2.2.1 while语句 16

2.2.2 do-while语句 16

2.2.3 for语句 17

2.3 条件(if)语句 17

2.3.1 if语句 17

2.3.2 嵌套if语句 18

2.4 语句标号和goto语句 18

第3章 函数 20

3.1 概述 20

3.2 函数定义的一般形式 20

3.2.1 函数参数 21

3.2.2 函数的返回值 21

3.3 函数的调用 22

第4章 指针 23

4.1 指针的概念 23

4.2 指针与数组 24

第5章 扩展功能 27

5.1 CC78KO编译系统扩展的保留字 27

5.2 存储器 28

5.3 #pragma指令 28

5.4 callt函数(callt/__callt) 29

5.5 寄存器变量 30

5.6 saddr存储区的使用 30

5.7 特殊功能寄存器(SFR)的使用 32

5.8 位变量的使用 32

5.9 在C语言中使用汇编语句 34

5.10 中断功能的使用 35

5.11 开中断函数EI()和关中断函数DI() 37

5.12 CPU控制指令 38

5.13 绝对地址存取指令 39

5.14 位段的声明 40

5.15 二进制常数 42

5.16 循环移位 42

5.17 乘法函数 43

5.18 除法函数 44

5.19 BCD操作函数 45

5.20 寄存器直接存取功能 47

5.21 callf函数(callf/__callf) 49

5.22 noauto函数 50

5.23 norec函数 51

5.24 中断函数限定符(__interrupt、__interrupt_brk)的使用 52

第6章 编译与连接 54

6.1 编译控制项的设置 54

6.1.1 编译预处理选项(1.Preprocess) 54

6.1.2 存储器中的变量分配(2.Memory Arrange) 55

6.1.3 程序化化(3.Optimize) 56

6.1.4 调试和输出(4.Debug/Output) 57

6.1.5 编译选项的其他控制(5.Others) 58

6.2 连接控制项的设置 59

第7章 程序设计实例 60

7.1 样本程序1(计算一组数据的均值、残差、方差、标准差) 60

7.2 样本程序2(分类程序) 66

附录 69

附录A saddr存储区的符号名 69

A.1 通常模式 69

A.2 静态模式 70

附录B 程序限制 71

下篇 74

第1章 uPD780058单片机介绍 74

1.1 NEC单片机简介 75

1.2 uPD780058单片机 75

1.2.1 uPD780058单片机的性能 75

1.2.2 引脚配置、功能及注意事项 76

1.2.3 功能结构 78

1.2.4 uPD780058单片机的应用举例 84

第2章 CPU结构和存储器空间 85

2.1 存储器空间 85

2.1.1 存储器结构 85

2.1.2 内部程序空间 86

2.1.3 内部数据空间 86

2.1.4 内部存储器直接地址读/写操作举例 87

2.2 处理器寄存器 87

2.2.1 控制寄存器(PC、PSW、SP) 87

2.2.2 通用寄存器 88

2.2.3 通用寄存器的使用举例 89

2.2.4 特殊功能寄存器 89

2.2.5 特殊功能寄存器的使用举例 92

2.3 外部器件扩展 93

2.3.1 功能 93

2.3.2 功能结构框图 93

2.3.3 控制寄存器(MM、IMS) 94

2.3.4 外部扩展存储器及I/O器件的存取操作举例 95

第3章 输入/输入(I/O)端口操作 96

3.1 端口功能 96

3.2 端口配置 98

3.2.1 端口0(P0) 98

3.2.2端口1(P1) 98

3.2.3端口2(P2) 98

3.2.4端口3(P3) 99

3.2.5端口4(P4) 99

3.2.6端口5(P5) 99

3.2.7端口6(P6) 99

3.2.8端口7(P7) 99

3.2.9端口12(P12) 99

3.2.10端口13(P13) 100

3.3 端口功能控制寄存器 100

3.3.1 端口模式寄存器(PM0~PM3、PM5~PM7、PM12、PM13) 100

3.3.2 上拉电阻选择寄存器(PUOL和PUOH) 101

3.3.3 存储器扩展模式寄存器(MM) 101

3.4 I/O端口功能的使用 102

第4章 时钟发生电路 103

4.1 时钟发生器的功能 103

4.1.1 主系统时钟发生器 103

4.1.2 副系统时钟发生器 103

4.2 时钟发生器的配置 103

4.2.1 时钟发生器的配置 103

4.2.2 时钟发生器的电路框图 103

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

4.3.1 振荡模式选择寄存器(OSMS) 104

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

4.4 系统时钟振荡器 105

4.4.1 主系统时钟振荡器 105

4.4.2 副系统时钟振荡器 106

4.5 时钟发生器使用举例 106

第5章 多功能定时器/计数器 107

5.1 uPD780058单片机内部定时器/计数器概述 107

5.2 16位定时器/计数器 108

5.2.1 16位定时器/计数器的功能 108

5.2.2 16位定时器/计数器的配置 108

5.2.3 16位定时器/计数器电路框图 109

5.2.4 16位定时器/计数器输出控制电路框图 109

5.2.5 寄存器(CR00、CR01、TM0) 110

5.2.6 控制寄存器(TCL0、TMC0、CRC0、TOC0、PM3、INTM0、SCS) 111

5.2.7 16位定时器/计数器的使用 115

5.3 8位定时器/计数器 125

5.3.1 8位定时器/计数器模式的功能 125

5.3.2 8位定时器/计数器的配置 125

5.3.3 8位定时器/计数器电路框图 125

5.3.4 8位定时器/计数器输出控制电路框图 125

5.3.5 寄存器(CR10、CR20、TM1、TM2) 125

5.3.6 控制寄存器(TCL1、TMC1、TOC1、PM3) 127

5.3.7 8位定时器/计数器的使用 130

5.4 钟表定时器 138

5.4.1 钟表定时器的功能 138

5.4.2 钟表定时器的配置 139

5.4.3 钟表定时器电路框图 139

5.4.4 控制寄存器(TCL2、TMC2) 139

5.4.5 钟表定时器的使用 141

5.5 看门狗定时器 143

5.5.1 看门狗定时器的功能 143

5.5.2 看门狗定时器的配置 144

5.5.3 看门狗定时器电路框图 144

5.5.4 控制寄存器(TCL2、WDTM) 144

5.5.5 看门狗定时器的使用 145

第6章 时钟、蜂鸣器输出控制电路和实时输出端口 149

6.1 时钟输出控制电路 149

6.1.1 时钟输出控制电路的功能 149

6.1.2 时钟输出控制电路的配置 149

6.1.3 时钟输出控制电路框图 149

6.1.4 控制寄存器(TCL0、PM3) 150

6.1.5 时钟输出控制电路的使用 150

6.2 蜂鸣器输出控制电路 151

6.2.1 蜂鸣器输出控制电路的功能 151

6.2.2 蜂鸣器输出控制电路的配置*151++++6.2.3 蜂鸣器输出控制电路框图 151

6.2.4 控制寄存器(TCL2、PM3) 151

6.2.5 蜂鸣器输出控制电路的使用 152

6.3 实时输出端口 153

6.3.1 实时输出端口的功能 153

6.3.2 实时输出端口的配置 153

6.3.3 实时输出端口电路框图 153

6.3.4 实时输出端口缓冲寄存器(RTBL和RTBH) 154

6.3.5 实时输出端口控制寄存器(RTPM、RTPC、PM12) 154

6.3.6 实时输出端口的使用 155

第7章 模数、数模转换器 156

7.1 模数(A/D)转换器 156

7.1.1 A/D转换器的功能 156

7.1.2 A/D转换器的配置 156

7.1.3 A/D转换器电路框图 157

7.1.4 A/D转换控制寄存器(ADM、ADIS、INTM1) 157

7.1.5 A/D转换器的使用 159

7.2 数模(D/A)转换器 160

7.2.1 D/A转换器功能 160

7.2.2 D/A转换器的配置 161

7.2.3 D/A转换电路框图 161

7.2.4 D/A转换器模式寄存器(DAM) 161

7.2.5 D/A转换器的使用 162

第8章 异步串行通信接口 164

8.1 串行通信接口通道2 164

8.1.1 串行通信接口道通道2的电路框图 164

8.1.2 串行通信接口道通道2的功能 165

8.1.3 串行通信接口道通道2的配置 166

8.1.4 寄存器(TXS、RXS、RXB) 166

8.1.5 控制寄存器(CSIM2、ASIM、ASIS、BRGC、SIPS) 166

8.1.6 收信/发信波特率时钟的产生 169

8.2 通信操作 171

8.2.1 数据格式 171

8.2.2 校验类型和操作 171

8.2.3 数据发送 171

8.2.4 数据接收 172

8.2.5 UART模式操作时的注意事项 172

8.3 异步串行通信接口UART的使用 173

第9章 中断功能和检测功能 177

9.1 中断功能类型 177

9.1.1 非屏蔽中断(NMI) 177

9.1.2 可屏蔽中断(INT) 177

9.1.3 软件中断 177

9.1.4 检测输入 177

9.2 中断源及配置 177

9.2.1 中断源 177

9.2.2 中断功能的基本配置 178

9.3 中断功能控制寄存器 179

9.3.1 中断请求标志寄存器(IFOL、IFOH、IFlL) 180

9.3.2 中断屏蔽标志寄存器(MKOL、MKOH、MKlL) 181

9.3.3 中断优先顺序指定标志寄存器(PR0L、PROH、PRIL) 181

9.3.4 外部中断模式寄存器(INTM0、INTM1) 181

9.3.5 采样时钟选择寄存器(CSC) 182

9.3.6 程序状态字(PSW) 184

9.4 中断服务操作*184+++9.4.1 非屏蔽中断请求响应操作 184

9.4.2 可屏蔽中断请求响应操作 185

9.4.3 软件中断响应操作 186

9.4.4 中断保留 186

9.5 可屏蔽中断请求响应举例 186

9.6 测试功能 188

9.6.1 测试功能 188

9.6.2 测试功能控制寄存器(IF1L、MK1L、KRM) 188

9.6.3 测试输入信号响应操作 189

第10章 后备功能及复位功能 190

10.1 后备功能及配置 190

10.1.1后备功能 190

10.1.2 后备功能控制寄存器(OSTS) 190

10.2 后备功能操作 191

10.2.1 HALT模式 191

10.2.2 STOP模式 193

10.3 后备功能使用举例 194

10.4 复位功能 196

10.4.1 产生复位动作的操作 196

10.4.2 复位后各硬件部分的状态 196

10.4.3 复位功能电路 198

10.4.4 各种复位信号产生的复位时序 199

第11章 综合应用举例 200

11.1 开关量的输入/输出 200

11.2 电子日历 202

附录 210

附录A 开发工具及使用步骤 210

A.1 建立仿真环境的操作步骤 210

A.2 注意事项 210

A.3 编译及仿真调试的操作步骤 210

附录B 编译及仿真调试软件的安装 211

B.1 软件安装过程 211

B.2 注意事项 211

附录C FlashMASTER编程器的使用方法 212

C.1 FlashMASTER软件的安装 212

C.2 FlashMASTER编程器与微机、单片机板的连接 212

C.3 编程 214

C.4 说明 216

附录D 汇编语言指令系统 217

D.1 操作表达式、描述方法和指令操作表 217

D.2 操作栏的说明 225

D.3 标志位栏的说明 226