电子设计从零开始(第2版).part2
电子设计从零开始(第2版).part2
STM32F2xx 技术手册
STM32F2xx 技术手册
8051系列单片机C程序设计完全手册_清晰版_2-2
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5
8051系列单片机C程序设计完全手册_清晰版_2-1
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
Windows_防火墙与网络封包截获技术
Windows_防火墙与网络封包截获技术.rar
TCP-IP详解卷3:TCP事务协议,HTTP,NNTP和UNIX域协议.rar
目 录
译者序
前言
第一部分 TCP事务协议
第1章 T/TCP概述 1
1.1 概述 1
1.2 UDP上的客户-服务器 1
1.3 TCP上的客户-服务器 6
1.4 T/TCP上的客户-服务器 12
1.5 测试网络 15
1.6 时间测量程序 15
1.7 应用 17
1.8 历史 19
1.9 实现 20
1.10 小结 21
第2章 T/TCP协议 23
2.1 概述 23
2.2 T/TCP中的新TCP选项 23
2.3 T/TCP实现所需变量 25
2.4 状态变迁图 27
2.5 T/TCP的扩展状态 28
2.6 小结 30
第3章 T/TCP使用举例 31
3.1 概述 31
3.2 客户重新启动 31
3.3 常规的T/TCP事务 33
3.4 服务器收到过时的重复SYN 34
3.5 服务器重启动 35
3.6 请求或应答超出报文段最大长度MSS 36
3.7 向后兼容性 39
3.8 小结 41
第4章 T/TCP协议(续) 43
4.1 概述 43
4.2 客户的端口号和TIME_WAIT状态 43
4.3 设置TIME_WAIT状态的目的 45
4.4 TIME_WAIT状态的截断 48
4.5 利用TAO跳过三次握手 51
4.6 小结 55
第5章 T/TCP协议的实现:插口层 56
5.1 概述 56
5.2 常量 56
5.3 sosend函数 56
5.4 小结 58
第6章 T/TCP的实现:路由表 59
6.1 概述 59
6.2 代码介绍 59
6.3 radix_node_head结构 60
6.4 rtentry结构 61
6.5 rt_metrics结构 61
6.6 in_inithead函数 61
6.7 in_addroute函数 62
6.8 in_matroute函数 63
6.9 in_clsroute函数 63
6.10 in_rtqtimo函数 64
6.11 in_rtqkill函数 66
6.12 小结 69
第7章 T/TCP实现:协议控制块 70
7.1 概述 70
7.2 in_pcbladdr函数 71
7.3 in_pcbconnect函数 71
7.4 小结 72
第8章 T/TCP实现: TCP概要 73
8.1 概述 73
8.2 代码介绍 73
8.3 TCP的protosw结构 74
8.4 TCP控制块 74
8.5 tcp_init函数 75
8.6 tcp_slowtimo函数 75
8.7 小结 76
第9章 T/TCP实现:TCP输出 77
9.1 概述 77
9.2 tcp_output函数 77
9.2.1 新的自动变量 77
9.2.2 增加隐藏的状态标志 77
9.2.3 在SYN_SENT状态不要重传SYN 78
9.2.4 发送器的糊涂窗口避免机制 78
9.2.5 有RST或SYN标志时强制发送报文段 79
9.2.6 发送MSS选项 80
9.2.7 是否发送时间戳选项 80
9.2.8 发送T/TCP的CC选项 80
9.2.9 根据TCP选项调整数据长度 83
9.3 小结 83
第10章 T/TCP实现:TCP函数 84
10.1 概述 84
10.2 tcp_newtcpcb函数 84
10.3 tcp_rtlookup函数 85
10.4 tcp_gettaocache函数 86
10.5 重传超时间隔的计算 86
10.6 tcp_close函数 89
10.7 tcp_msssend函数 90
10.8 tcp_mssrcvd函数 91
10.9 tcp_dooptions函数 96
10.10 tcp_reass函数 98
10.11 小结 99
第11章 T/TCP实现:TCP输入 101
11.1 概述 101
11.2 预处理 103
11.3 首部预测 104
11.4 被动打开的启动 105
11.5 主动打开的启动 108
11.6 PAWS:防止序号重复 114
11.7 ACK处理 115
11.8 完成被动打开和同时打开 115
11.9 ACK处理(续) 116
11.10 FIN处理 118
11.11 小结 119
第12章 T/TCP实现:TCP用户请求 120
12.1 概述 120
12.2 PRU_CONNECT请求 120
12.3 tcp_connect函数 120
12.4 PRU_SEND和PRU_SEND_EOF请求 124
12.5 tcp_usrclosed函数 125
12.6 tcp_sysctl函数 126
12.7 T/TCP的前景 126
12.8 小结 127
第二部分 TCP的其他应用
第13章 HTTP:超文本传送协议 129
13.1 概述 129
13.2 HTTP和HTML概述 130
13.3 HTTP 132
13.3.1 报文类型:请求与响应 132
13.3.2 首部字段 133
13.3.3 响应代码 133
13.3.4 各种报文头举例 134
13.3.5 例子:客户程序缓存 135
13.3.6 例子:服务器重定向 136
13.4 一个例子 136
13.5 HTTP的统计资料 138
13.6 性能问题 139
13.7 小结 141
第14章 在HTTP服务器上找到的分组 142
14.1 概述 142
14.2 多个HTTP服务器 144
14.3 客户端SYN的到达间隔时间 145
14.4 RTT的测量 149
14.5 用listen设置入连接队列的容量 150
14.6 客户端的SYN选项 154
14.7 客户端的SYN重传 156
14.8 域名 157
14.9 超时的持续探测 157
14.10 T/TCP路由表大小的模拟 160
14.11 mbuf的交互 162
14.12 TCP的PCB高速缓存和首部预测 163
14.13 小结 165
第15章 NNTP:网络新闻传送协议 166
15.1 概述 166
15.2 NNTP 167
15.3 一个简单的新闻客户 170
15.4 一个复杂的新闻客户 171
15.5 NNTP的统计资料 172
15.6 小结 173
第三部分 Unix域协议
第16章 Unix域协议:概述 175
16.1 概述 175
16.2 用途 176
16.3 性能 177
16.4 编码举例 177
16.5 小结 179
第17章 Unix域协议:实现 180
17.1 概述 180
17.2 代码介绍 180
17.3 Unix domain和protosw结构 181
17.4 Unix域插口地址结构 182
17.5 Unix域协议控制块 183
17.6 uipc_usrreq函数 185
17.7 PRU_ATTACH请求和unp_attach函数 186
17.8 PRU_DETACH请求和unp_detach函数 187
17.9 PRU_BIND请求和unp_bind函数 189
17.10 PRU_CONNECT请求和unp_connect
函数 191
17.11 PRU_CONNECT2请求和unp_connect2
函数 195
17.12 socketpair系统调用 198
17.13 pipe系统调用 202
17.14 PRU_ACCEPT请求 203
17.15 PRU_DISCONNECT请求和
unp_disconnect函数 204
17.16 PRU_SHUTDOWN请求和unp_shutdown
函数 205
17.17 PRU_ABORT请求和unp_drop函数 206
17.18 其他各种请求 207
17.19 小结 209
第18章 Unix域协议:I/O和描述符的传递 210
18.1 概述 210
18.2 PRU_SEND和PRU_RCVD请求 210
18.3 描述符的传递 214
18.4 unp_internalize函数 218
18.5 unp_externalize函数 220
18.6 unp_discard函数 221
18.7 unp_dispose函数 222
18.8 unp_scan函数 222
18.9 unp_gc函数 223
18.10 unp_mark函数 230
18.11 性能(再讨论) 231
18.12 小结 231
附录A 测量网络时间 232
附录B 编写T/TCP应用程序 242
参考文献 246
缩略语 251
TCP-IP详解卷2:实现.rar
目 录
译者序
前言
第1章 概述 1
1.1 引言 1
1.2 源代码表示 1
1.2.1 将拥塞窗口设置为1 1
1.2.2 印刷约定 2
1.3 历史 2
1.4 应用编程接口 3
1.5 程序示例 4
1.6 系统调用和库函数 6
1.7 网络实现概述 6
1.8 描述符 7
1.9 mbuf与输出处理 11
1.9.1 包含插口地址结构的mbuf 11
1.9.2 包含数据的mbuf 12
1.9.3 添加IP和UDP首部 13
1.9.4 IP输出 14
1.9.5 以太网输出 14
1.9.6 UDP输出小结 14
1.10 输入处理 15
1.10.1 以太网输入 15
1.10.2 IP输入 15
1.10.3 UDP输入 16
1.10.4 进程输入 17
1.11 网络实现概述(续) 17
1.12 中断级别与并发 18
1.13 源代码组织 20
1.14 测试网络 21
1.15 小结 22
第2章 mbuf:存储器缓存 24
2.1 引言 24
2.2 代码介绍 27
2.2.1 全局变量 27
2.2.2 统计 28
2.2.3 内核统计 28
2.3 mbuf的定义 29
2.4 mbuf结构 29
2.5 简单的mbuf宏和函数 31
2.5.1 m_get函数 32
2.5.2 MGET宏 32
2.5.3 m_retry函数 33
2.5.4 mbuf锁 34
2.6 m_devget和m_pullup函数 34
2.6.1 m_devget函数 34
2.6.2 mtod和dtom宏 36
2.6.3 m_pullup函数和连续的协议首部 36
2.6.4 m_pullup和IP的分片与重组 37
2.6.5 TCP重组避免调用m_pullup 39
2.6.6 m_pullup使用总结 40
2.7 mbuf宏和函数的小结 40
2.8 Net/3联网数据结构小结 42
2.9 m_copy和簇引用计数 43
2.10 其他选择 47
2.11 小结 47
第3章 接口层 49
3.1 引言 49
3.2 代码介绍 49
3.2.1 全局变量 49
3.2.2 SNMP变量 50
3.3 ifnet结构 51
3.4 ifaddr结构 57
3.5 sockaddr结构 58
3.6 ifnet与ifaddr的专用化 59
3.7 网络初始化概述 60
3.8 以太网初始化 61
3.9 SLIP初始化 64
3.10 环回初始化 65
3.11 if_attach函数 66
3.12 ifinit函数 72
3.13 小结 73
第4章 接口:以太网 74
4.1 引言 74
4.2 代码介绍 75
4.2.1 全局变量 75
4.2.2 统计量 75
4.2.3 SNMP变量 76
4.3 以太网接口 77
4.3.1 leintr函数 79
4.3.2 leread函数 79
4.3.3 ether_input函数 81
4.3.4 ether_output函数 84
4.3.5 lestart函数 87
4.4 ioctl系统调用 89
4.4.1 ifioctl函数 90
4.4.2 ifconf函数 91
4.4.3 举例 94
4.4.4 通用接口ioctl命令 95
4.4.5 if_down和if_up函数 96
4.4.6 以太网、SLIP和环回 97
4.5 小结 98
第5章 接口:SLIP和环回 100
5.1 引言 100
5.2 代码介绍 100
5.2.1 全局变量 100
5.2.2 统计量 101
5.3 SLIP接口 101
5.3.1 SLIP线路规程:SLIPDISC 101
5.3.2 SLIP初始化:slopen和slinit 103
5.3.3 SLIP输入处理:slinput 105
5.3.4 SLIP输出处理:sloutput 109
5.3.5 slstart函数 111
5.3.6 SLIP分组丢失 116
5.3.7 SLIP性能考虑 117
5.3.8 slclose函数 117
5.3.9 sltioctl函数 118
5.4 环回接口 119
5.5 小结 121
第6章 IP编址 123
6.1 引言 123
6.1.1 IP地址 123
6.1.2 IP地址的印刷规定 123
6.1.3 主机和路由器 124
6.2 代码介绍 125
6.3 接口和地址小结 125
6.4 sockaddr_in结构 126
6.5 in_ifaddr结构 127
6.6 地址指派 128
6.6.1 ifioctl函数 130
6.6.2 in_control函数 130
6.6.3 前提条件:SIOCSIFADDR、
SIOCSIFNETMASK和
SIOCSIFDSTADDR 132
6.6.4 地址指派:SIOCSIFADDR 133
6.6.5 in_ifinit函数 133
6.6.6 网络掩码指派:SIOCSIFNETMASK 136
6.6.7 目的地址指派:SIOCSIFDSTADDR 137
6.6.8 获取接口信息 137
6.6.9 每个接口多个IP地址 138
6.6.10 附加IP地址:SIOCAIFADDR 139
6.6.11 删除IP地址:SIOCDIFADDR 140
6.7 接口ioctl处理 141
6.7.1 leioctl函数 141
6.7.2 slioctl函数 142
6.7.3 loioctl函数 143
6.8 Internet实用函数 144
6.9 ifnet实用函数 144
6.10 小结 145
第7章 域和协议 146
7.1 引言 146
7.2 代码介绍 146
7.2.1 全局变量 147
7.2.2 统计量 147
7.3 domain结构 147
7.4 protosw结构 148
7.5 IP 的domain和protosw结构 150
7.6 pffindproto和pffindtype函数 155
7.7 pfctlinput函数 157
7.8 IP初始化 157
7.8.1 Internet传输分用 157
7.8.2 ip_init函数 158
7.9 sysctl系统调用 159
7.10 小结 161
第8章 IP:网际协议 162
8.1 引言 162
8.2 代码介绍 163
8.2.1 全局变量 163
8.2.2 统计量 163
8.2.3 SNMP变量 164
8.3 IP分组 165
8.4 输入处理:ipintr函数 167
8.4.1 ipintr概观 167
8.4.2 验证 168
8.4.3 转发或不转发 171
8.4.4 重装和分用 173
8.5 转发:ip_forward函数 174
8.6 输出处理:ip_output函数 180
8.6.1 首部初始化 181
8.6.2 路由选择 182
8.6.3 源地址选择和分片 184
8.7 Internet检验和:in_cksum函数 186
8.8 setsockopt和getsockopt系统调用 190
8.8.1 PRCO_SETOPT的处理 192
8.8.2 PRCO_GETOPT的处理 193
8.9 ip_sysctl函数 193
8.10 小结 194
第9章 IP选项处理 196
9.1 引言 196
9.2 代码介绍 196
9.2.1 全局变量 196
9.2.2 统计量 197
9.3 选项格式 197
9.4 ip_dooptions函数 198
9.5 记录路由选项 200
9.6 源站和记录路由选项 202
9.6.1 save_rte函数 205
9.6.2 ip_srcroute函数 206
9.7 时间戳选项 207
9.8 ip_insertoptions函数 210
9.9 ip_pcbopts函数 214
9.10 一些限制 217
9.11 小结 217
第10章 IP的分片与重装 218
10.1 引言 218
10.2 代码介绍 219
10.2.1 全局变量 220
10.2.2 统计量 220
10.3 分片 220
10.4 ip_optcopy函数 223
10.5 重装 224
10.6 ip_reass函数 227
10.7 ip_slowtimo函数 237
10.8 小结 238
第11章 ICMP:Internet控制报文协议 239
11.1 引言 239
11.2 代码介绍 242
11.2.1 全局变量 242
11.2.2 统计量 242
11.2.3 SNMP变量 243
11.3 icmp结构 244
11.4 ICMP 的protosw结构 245
11.5 输入处理:icmp_input函数 246
11.6 差错处理 249
11.7 请求处理 251
11.7.1 回显询问:ICMP_ECHO和
ICMP_ECHOREPLY 252
11.7.2 时间戳询问:ICMP_TSTAMP和
ICMP_TSTAMPREPLY 253
11.7.3 地址掩码询问:ICMP_MASKREQ和
ICMP_MASKREPLY 253
11.7.4 信息询问:ICMP_IREQ和ICMP_
IREQREPLY 255
11.7.5 路由器发现:ICMP_ROUTERADVERT
和ICMP_ROUTERSOLICIT 255
11.8 重定向处理 255
11.9 回答处理 257
11.10 输出处理 257
11.11 icmp_error函数 258
11.12 icmp_reflect函数 261
11.13 icmp_send函数 265
11.14 icmp_sysctl函数 266
11.15 小结 266
第12章 IP多播 268
12.1 引言 268
12.2 代码介绍 269
12.2.1 全局变量 270
12.2.2 统计量 270
12.3 以太网多播地址 270
12.4 ether_multi结构 271
12.5 以太网多播接收 273
12.6 in_multi结构 273
12.7 ip_moptions结构 275
12.8 多播的插口选项 276
12.9 多播的TTL值 277
12.9.1 MBONE 278
12.9.2 扩展环搜索 278
12.10 ip_setmoptions函数 278
12.10.1 选择一个明确的多播接口:IP_
MULTICAST_IF 280
12.10.2 选择明确的多播TTL: IP_
MULTICAST_TTL 281
12.10.3 选择多播环回:IP_MULTICAST_
LOOP 281
12.11 加入一个IP多播组 282
12.11.1 in_addmulti函数 285
12.11.2 slioctl和loioctl函数:SIOCADDMULTI和SIOCDELMULTI 287
12.11.3 leioctl函数:SIOCADDMULTI和
SIOCDELMULTI 288
12.11.4 ether_addmulti函数 288
12.12 离开一个IP多播组 291
12.12.1 in_delmulti函数 292
12.12.2 ether_delmulti函数 293
12.13 ip_getmoptions函数 295
12.14 多播输入处理:ipintr函数 296
12.15 多播输出处理:ip_output函数 298
12.16 性能的考虑 301
12.17 小结 301
第13章 IGMP:Internet组管理协议 303
13.1 引言 303
13.2 代码介绍 304
13.2.1 全局变量 304
13.2.2 统计量 304
13.2.3 SNMP变量 305
13.3 igmp结构 305
13.4 IGMP的protosw的结构 306
13.5 加入一个组:igmp_joingroup函数 306
13.6 igmp_fasttimo函数 308
13.7 输入处理:igmp_input函数 311
13.7.1 成员关系查询:IGMP_HOST_
MEMBERSHIP_QUERY 312
13.7.2 成员关系报告:IGMP_HOST_
MEMBERSHIP_REPORT 313
13.8 离开一个组:igmp_leavegroup函数 314
13.9 小结 315
第14章 IP多播选路 316
14.1 引言 316
14.2 代码介绍 316
14.2.1 全局变量 316
14.2.2 统计量 317
14.2.3 SNMP变量 317
14.3 多播输出处理(续) 317
14.4 mrouted守护程序 318
14.5 虚拟接口 321
14.5.1 虚拟接口表 322
14.5.2 add_vif函数 324
14.5.3 del_vif函数 326
14.6 IGMP(续) 327
14.6.1 add_lgrp函数 328
14.6.2 del_lgrp函数 329
14.6.3 grplst_member函数 330
14.7 多播选路 331
14.7.1 多播选路表 334
14.7.2 del_mrt函数 335
14.7.3 add_mrt函数 336
14.7.4 mrtfind函数 337
14.8 多播转发:ip_mforward函数 338
14.8.1 phyint_send函数 343
14.8.2 tunnel_send函数 344
14.9 清理:ip_mrouter_done函数 345
14.10 小结 346
第15章 插口层 348
15.1 引言 348
15.2 代码介绍 349
15.3 socket结构 349
15.4 系统调用 354
15.4.1 举例 355
15.4.2 系统调用小结 355
15.5 进程、描述符和插口 357
15.6 socket系统调用 358
15.6.1 socreate函数 359
15.6.2 超级用户特权 361
15.7 getsock和sockargs函数 361
15.8 bind系统调用 363
15.9 listen系统调用 364
15.10 tsleep和wakeup函数 365
15.11 accept系统调用 366
15.12 sonewconn和soisconnected
函数 369
15.13 connect系统调用 372
15.13.1 soconnect函数 374
15.13.2 切断无连接插口和外部地址的
关联 375
15.14 shutdown系统调用 375
15.15 close系统调用 377
15.15.1 soo_close函数 377
15.15.2 soclose函数 378
15.16 小结 380
第16章 插口I/O 381
16.1 引言 381
16.2 代码介绍 381
16.3 插口缓存 381
16.4 write、writev、sendto和sendmsg
系统调用 384
16.5 sendmsg系统调用 387
16.6 sendit函数 388
16.6.1 uiomove函数 389
16.6.2 举例 390
16.6.3 sendit代码 391
16.7 sosend函数 392
16.7.1 可靠的协议缓存 393
16.7.2 不可靠的协议缓存 393
16.7.3 sosend函数小结 401
16.7.4 性能问题 401
16.8 read、readv、recvfrom和recvmsg
系统调用 401
16.9 recvmsg系统调用 402
16.10 recvit函数 403
16.11 soreceive函数 405
16.11.1 带外数据 406
16.11.2 举例 406
16.11.3 其他的接收操作选项 407
16.11.4 接收缓存的组织:报文边界 407
16.11.5 接收缓存的组织:没有报文边界 408
16.11.6 控制信息和带外数据 409
16.12 soreceive代码 410
16.13 select系统调用 421
16.13.1 selscan函数 425
16.13.2 soo_select函数 425
16.13.3 selrecord函数 427
16.13.4 selwakeup函数 428
16.14 小结 429
第17章 插口选项 431
17.1 引言 431
17.2 代码介绍 431
17.3 setsockopt系统调用 432
17.4 getsockopt系统调用 437
17.5 fcntl和ioctl系统调用 440
17.5.1 fcntl代码 441
17.5.2 ioctl代码 443
17.6 getsockname系统调用 444
17.7 getpeername系统调用 445
17.8 小结 447
第18章 Radix树路由表 448
18.1 引言 448
18.2 路由表结构 448
18.3 选路插口 456
18.4 代码介绍 456
18.4.1 全局变量 458
18.4.2 统计量 458
18.4.3 SNMP变量 459
18.5 Radix结点数据结构 460
18.6 选路结构 463
18.7 初始化:route_init和rtable_init
函数 465
18.8 初始化:rn_init和rn_inithead
函数 468
18.9 重复键和掩码列表 471
18.10 rn_match函数 473
18.11 rn_search函数 480
18.12 小结 481
第19章 选路请求和选路消息 482
19.1 引言 482
19.2 rtalloc和rtalloc1函数 482
19.3 宏RTFREE和rtfree函数 484
19.4 rtrequest函数 486
19.5 rt_setgate函数 491
19.6 rtinit函数 493
19.7 rtredirect函数 495
19.8 选路消息的结构 498
19.9 rt_missmsg函数 501
19.10 rt_ifmsg函数 503
19.11 rt_newaddrmsg函数 504
19.12 rt_msg1函数 505
19.13 rt_msg2函数 507
19.14 sysctl_rtable函数 510
19.15 sysctl_dumpentry函数 514
19.16 sysctl_iflist函数 515
19.17 小结 517
第20章 选路插口 518
20.1 引言 518
20.2 routedomain和protosw结构 518
20.3 选路控制块 519
20.4 raw_init函数 520
20.5 route_output函数 520
20.6 rt_xaddrs函数 530
20.7 rt_setmetrics函数 531
20.8 raw_input函数 532
20.9 route_usrreq函数 534
20.10 raw_usrreq函数 535
20.11 raw_attach、raw_detach和raw_disconnect函数 539
20.12 小结 540
第21章 ARP:地址解析协议 542
21.1 介绍 542
21.2 ARP和路由表 542
21.3 代码介绍 544
21.3.1 全局变量 544
21.3.2 统计量 544
21.3.3 SNMP变量 546
21.4 ARP结构 546
21.5 arpwhohas函数 548
21.6 arprequest函数 548
21.7 arpintr函数 551
21.8 in_arpinput函数 552
21.9 ARP定时器函数 557
21.9.1 arptimer函数 557
21.9.2 arptfree函数 557
21.10 arpresolve函数 558
21.11 arplookup函数 562
21.12 代理ARP 563
21.13 arp_rtrequest函数 564
21.14 ARP和多播 569
21.15 小结 570
第22章 协议控制块 572
22.1 引言 572
22.2 代码介绍 573
22.2.1 全局变量 574
22.2.2 统计量 574
22.3 inpcb的结构 574
22.4 in_pcballoc和in_pcbdetach函数 575
22.5 绑定、连接和分用 577
22.6 in_pcblookup函数 581
22.7 in_pcbbind函数 584
22.8 in_pcbconnect函数 589
22.9 in_pcbdisconnect函数 594
22.10 in_setsockaddr和in_setpeeraddr
函数 595
22.11 in_pcbnotify、in_rtchange和in_losing函数 595
22.11.1 in_rtchange函数 598
22.11.2 重定向和原始插口 599
22.11.3 ICMP差错和UDP插口 600
22.11.4 in_losing函数 601
22.12 实现求精 602
22.13 小结 602
第23章 UDP:用户数据报协议 605
23.1 引言 605
23.2 代码介绍 605
23.2.1 全局变量 606
23.2.2 统计量 606
23.2.3 SNMP变量 607
23.3 UDP 的protosw结构 607
23.4 UDP的首部 608
23.5 udp_init函数 609
23.6 udp_output函数 609
23.6.1 在前面加上IP/UDP首部和mbuf簇 612
23.6.2 UDP检验和计算和伪首部 612
23.7 udp_input函数 616
23.7.1 对收到的UDP数据报的一般确认 616
23.7.2 分用单播数据报 619
23.7.3 分用多播和广播数据报 622
23.7.4 连接上的UDP插口和多接口主机 625
23.8 udp_saveopt函数 625
23.9 udp_ctlinput函数 627
23.10 udp_usrreq函数 628
23.11 udp_sysctl函数 633
23.12 实现求精 633
23.12.1 UDP PCB高速缓存 633
23.12.2 UDP检验和 634
23.13 小结 635
第24章 TCP:传输控制协议 636
24.1 引言 636
24.2 代码介绍 636
24.2.1 全局变量 636
24.2.2 统计量 637
24.2.3 SNMP变量 640
24.3 TCP 的protosw结构 641
24.4 TCP的首部 641
24.5 TCP的控制块 643
24.6 TCP的状态变迁图 645
24.7 TCP的序号 646
24.8 tcp_init函数 650
24.9 小结 652
第25章 TCP的定时器 654
25.1 引言 654
25.2 代码介绍 655
25.3 tcp_canceltimers函数 657
25.4 tcp_fasttimo函数 657
25.5 tcp_slowtimo函数 658
25.6 tcp_timers函数 659
25.6.1 FIN_WAIT_2和2MSL定时器 660
25.6.2 持续定时器 662
25.6.3 连接建立定时器和保活定时器 662
25.7 重传定时器的计算 665
25.8 tcp_newtcpcb算法 666
25.9 tcp_setpersist函数 668
25.10 tcp_xmit_timer函数 669
25.11 重传超时:tcp_timers函数 673
25.11.1 慢起动和避免拥塞 675
25.11.2 精确性 677
25.12 一个RTT的例子 677
25.13 小结 679
第26章 TCP输出 680
26.1 引言 680
26.2 tcp_output概述 680
26.3 决定是否应发送一个报文段 682
26.4 TCP选项 691
26.5 窗口大小选项 692
26.6 时间戳选项 692
26.6.1 哪个时间戳需要回显,RFC1323
算法 694
26.6.2 哪个时间戳需要回显,正确的
算法 695
26.6.3 时间戳与延迟ACK 695
26.7 发送一个报文段 696
26.8 tcp_template函数 707
26.9 tcp_respond函数 708
26.10 小结 710
第27章 TCP的函数 712
27.1 引言 712
27.2 tcp_drain函数 712
27.3 tcp_drop函数 712
27.4 tcp_close函数 713
27.4.1 路由特性 713
27.4.2 资源释放 716
27.5 tcp_mss函数 717
27.6 tcp_ctlinput函数 722
27.7 tcp_notify函数 723
27.8 tcp_quench函数 724
27.9 TCP_REASS宏和tcp_reass函数 724
27.9.1 TCP_REASS宏 725
27.9.2 tcp_reass函数 727
27.10 tcp_trace函数 732
27.11 小结 736
第28章 TCP的输入 737
28.1 引言 737
28.2 预处理 739
28.3 tcp_dooptions函数 745
28.4 首部预测 747
28.5 TCP输入:缓慢的执行路径 752
28.6 完成被动打开或主动打开 752
28.6.1 完成被动打开 753
28.6.2 完成主动打开 756
28.7 PAWS:防止序号回绕 760
28.8 裁剪报文段使数据在窗口内 762
28.9 自连接和同时打开 768
28.10 记录时间戳 770
28.11 RST处理 770
28.12 小结 772
第29章 TCP的输入(续) 773
29.1 引言 773
29.2 ACK处理概述 773
29.3 完成被动打开和同时打开 774
29.4 快速重传和快速恢复的算法 775
29.5 ACK处理 778
29.6 更新窗口信息 784
29.7 紧急方式处理 786
29.8 tcp_pulloutofband函数 788
29.9 处理已接收的数据 789
29.10 FIN处理 791
29.11 最后的处理 793
29.12 实现求精 795
29.13 首部压缩 795
29.13.1 引言 796
29.13.2 首部字段的压缩 799
29.13.3 特殊情况 801
29.13.4 实例 802
29.13.5 配置 803
29.14 小结 803
第30章 TCP的用户需求 805
30.1 引言 805
30.2 tcp_usrreq函数 805
30.3 tcp_attach函数 814
30.4 tcp_disconnect函数 815
30.5 tcp_usrclosed函数 816
30.6 tcp_ctloutput函数 817
30.7 小结 820
第31章 BPF:BSD 分组过滤程序 821
31.1 引言 821
31.2 代码介绍 821
31.2.1 全局变量 821
31.2.2 统计量 822
31.3 bpf_if结构 822
31.4 bpf_d结构 825
31.4.1 bpfopen函数 826
31.4.2 bpfioctl函数 827
31.4.3 bpf_setif函数 830
31.4.4 bpf_attachd函数 831
31.5 BPF的输入 832
31.5.1 bpf_tap函数 832
31.5.2 catchpacket函数 833
31.5.3 bpfread函数 835
31.6 BPF的输出 837
31.7 小结 838
第32章 原始IP 839
32.1 引言 839
32.2 代码介绍 839
32.2.1 全局变量 839
32.2.2 统计量 840
32.3 原始 IP的protosw结构 840
32.4 rip_init函数 842
32.5 rip_input函数 842
32.6 rip_output函数 844
32.7 rip_usrreq函数 846
32.8 rip_ctloutput函数 850
32.9 小结 852
结束语 853
附录A 部分习题的解答 854
附录B 源代码的获取 872
附录C RFC 1122 的有关内容 874
参考文献 895
趣味程序导学Visual.Cpp_董未名
趣味程序导学Visual.Cpp_董未名
8051系列单片机C程序设计完全手册(清晰版)14-14.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-13.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-12.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-11.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-10.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-09.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-08.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-07.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-06.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-05.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-04.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-03.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-02.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
8051系列单片机C程序设计完全手册(清晰版)14-01.pdf
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
上传时可能出现问题 请勿再下载
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换
上传时可能出现问题 请勿再下载
第1章 单片机基础
1.1 单片机技术发展状况
1.2 51系列单片机体系结构
1.2.1 内部结构
1.2.2 存储器组织结构
l.2.3 内部功能模块
l.2.4 外部引脚
1.2.5 系统资源扩展
1.3 单片机的编程方法
第2章 C语言编程基础
2.1 基本概念
2.1.1 概述
2.1.2 变量与算术表达式
2.1.3 for语句
2.1.4 符号常量
2.2 数据类型、运算符和表达式
2.2.1 C语言的数据类型
2.2.2 常量与变量
2.2.3 整型数据
2.2.4 实型数据
2.2.5 字符型数据
2.2.6 运算符
2.2.7 表达式
2.3 程序控制语句
2.3.1 程序的3种基本结构
2.3.2 条件控制语句
2.3.3 程序应用举例
2.4 循环控制语句
2.4.1 while语句
2.4.2 dowhile语句
2.4.3 for语句
2.4.4 break与continue语句
2.4.5 程序应用举例
2.5 小结
第3章 C语言高级编程
3.1 函数与程序结构
3.1.1 函数的基本知识
3.1.2 返回非整数值的函数
3.1.3 外部变量
3.1.4 作用域规则
3.1.5 头文件
3.1.6 静态变量
3.1.7 寄存器变量
3.1.8 分程序结构
3.1.9 初始化
3.1.10 递归
3.2 数组
3.2.1 一维数组
3.2.2 维数组
3.2.3 多维数组
3.2.4 数组的初始化
3.3 指针
3.3.1 指针与指针变量.
3.3.2 指针变量的定义与引用
3.3.3 指针运算符与指针表达式
3.3.4 指针与数组
3.3.5 指针的地址分配
3.3.6 指针数组
3.3.7 指向指针的指针
3.4 占构体与共用体
3.4.1 结构体类型变量的定义和引用
3.4.2 结构体数组的定义和引用
3.4.3 结构体指针的定义和引用
3.4.4 共用体
3.5 小结
第4章C51程序设计
4.1 C51对标准C语言的扩展
4.1.1 存储区域
4.1.2 数据变量分类
4.1.3 存储器模式
4.1.4 绝对地址的访问
4.1.5 指针
4.1.6 函数
4.2 C5 1函数库
4.2.1 字符函数CTYPE.H
4.2.2 一般I/O函数STDIO.H
4.2.3 字符串函数STRING.H
4.2.4 标准函数STDLIB.H
4.2.5 数学函数MATH.H
4.2.6 绝对地址访问ABSACC.H
4.2.7 内部函数INTRINS.H
4.2.8 变量参数表STDARG.H
4.2.9 全程跳转SETJMPH
4.2.10 访问SFR和SFR bit地址REGxxx.H
4.3 C51程序编写
4.3.1 C程序基本结构
4.3.2 编写高效的C51程序及优化程序
第5章 Windows集成开发环境μVision2
5.1 μVision2编辑界面及其功能介绍
5.1.1 μVision2界面综述
5.1.2 主菜单栏
5.1.3 μVision2功能按钮
5.1.4 μVision2窗口环境
5.2 应用μVision2开发流程介绍
5.2.1 建立新项目
5.2.2 常用环境配置
5.2.3 代码优化
5.2.4 目标代码调试
5.3 CPU仿真
5.3.1 μVision2调试器
5.3.2 调试命令
5.3.3 存储器空间
5.3.4 表述(Expressions)
5.3.5 技巧
5.4 深入了解μVision2
5.4.1 μVision2的项目管理
5.4.2 使用技巧
5.4.3 μVision2调试函数
第6章 C5l编译器
6.1 预处理
6.1.1 宏定义
6.1.2 文件包含
6.1.3 条件编译
6.1.4 其他预处理命令
6.2 C51编译器控制指令详解
6.2.1 源控制指令
6.2.2 列表控制指令
6.2.3 目标控制指令
6.3 C5l的高级配置文件
6.3.1 目标程序启动配置文件——STARTUP.A51.
6.3.2 CPU初始化文件——START751.A51
6.3.3 静态变量初始化文件——INT.A51
6.3.4 专用变量初始化文件——INIT751.A51
第7章 C51的典型资源编程
7.1 中断系统设计
7.2 定时/计数器的使用
7.3 I/O口的使用
7.4 扩展存储器
7.4.1 外部ROM
7.4.2 外部RAM
7.4.3 外部串行E2PROM
7.5 一个使用多种资源的完整例程
7.5.1 项目需求
7.5.2 步进电机背景知识
7.5.3 解决方案设计与实现
第8章 单片机通信
8.1 串口通信
8.1.1 串行通信基础
8.1.2 单片机串口使用
8.2 单片机点对点通信
8.2.1 通信接口设计
8.2.2 单片机点对点通信程序设计
8.3 单片机多机通信
8.3.1 主机部分通信程序设计
8.3.2 从机部分通信程序设计
8.4 单片机I2C总线通信
8.4.1 I2C总线介绍
8.4.2 I2C总线硬件接口设计
8.4.3 I2C总线模拟硬件接口软件设计
8.4.4 I2C总线系统的设计要点
8.5 单片机与计算机的互连
8.5.1 电路设计
8.5.2电路的C5 1程序代码
8.5.3计算机端的Visual C++程序代码
第9章 C51单片机的工程开发实例
9.1 单片机系统设计方法
9.2 C51系统设计的相关知识
9.2.1 硬件以及电路的知识
9.2.2 软件以及编程语言的知识
9.3 C5l系统设计需要注意的一些问题
9.3.1 单片机资源的分配
9.3.2 单片机的寻址
9.3.3 C5 1函数的返回值
9.3.4 单片机的看门狗功能
9.3.5 单片机的外设
9.3.6 单片机的功耗
9.4 有关C51的一些问题
9.5 键盘和发光数码管显示
9.5.1 电路设计的背景及功能
9.5.2 电路的设计
9.5.3 键盘扫描电路的C51程序代码
9.5.4 电路的改进——键盘的消抖动程序
9.5.5 电路的显示部分-LED数码管电路
9.6 A/D、D/A转换器使用
9.6.1 电路设计的背景及功能
9.6.2 电路的设计
9.6.3 电路的C51程序代码
9.7 基于单片机的数字钟
9.7.1 电路设计的背景及功能
9.7.2 电路的设计
9.7.3 电路的C51程序代码
第10章 C5l单片机典型模块实例
10.1 典型外部ROM和RAM器件的使用
10.1.1 实例功能
10.1.2 器件和原理
10.1.3 电路
10.1.4 程序设计
10.2 液晶显示和驱动实例
10.2.1 实例功能
10.2.2 器件和原理
10.2.3 电路
lO.2.4 程序设计
10.3 用A/D芯片进行电压测量
10.3.1 实例功能
10.3.2 器件和原理
10.3.3 电路
10.3.4 程序设计
lO.4 使用DSl820进行温度补偿和测量
10.4.1 实例功能
10.4.2 器件和原理
10.4.3 电路
10.4.4 程序设计
10.5 语音芯片在单片机系统中的使用
10.5.1 实例功能
10.5.2 器件和原理
10.5.3 电路
10.5.4 程序设计
10.6 时钟芯片在单片机系统中的应用
10.6.1 实例功能
10.6.2 器件和原理
10.6.3 电路
10.6.4 程序设计
10.7 单片机中滤波算法的实现
10.8 信号数据的FFT变换