简介
《Keil Cx51 V7.0单片机高级语言编程与μVision2:应用实践(第2版)》共分12章,第1章阐述8051单片机的存储器结构,以及在μVision2集成开发环境下进行Cx51程序设计和编译调试的基本方法。第2章到第6章阐述8051单片机C语言编程的基础知识,以及Keil Cx51对ANSI C的扩展。第7章阐述μVision2集成开发环境,详细介绍了工作环境、目标程序的仿真调试以及各种开发工具应用选项的设置方法。第8章阐述在μVision2环境下进行Cx51应用程序设计的技巧,通过大量具体实例详细讨论了许多Cx51实际应用中的常见问题和解决方法,详细介绍利用MON51监控程序设计用户硬件目标板的方法。第9章介绍Keil Cx51编译器的各种编译控制命令、数据调用协议,给出了全部库函数及其应用范例。第10章阐述A51宏汇编器,介绍了各种符号与表达式、汇编伪指令、宏处理以及汇编控制命令。第11章阐述BL51/Lx51连接定位器与实用工具,详细介绍BL51/Lx51的各种连接控制命令、符号转换程序OH51、库管理程序LIB51的使用方法。第12章阐述RTX51实时多任务操作系统及其子集RTX51 TINY的功能和具体使用方法。
目录
第1章 8051单片机与keil cx51基础
1.1 8051单片机的存储器组织结构
1.2 keil cx51开发工具
1.3 cx51简单编程与调试
第2章 cx51程序设计基础
2.1 标识符与关键字
2.2 cx51程序设计的基本语法
2.2. 1数据类型
2.2.2 常量
2.2.3 变量及其存储模式
2.2.4 用typedef重新定义数据类型
2.2.5 运算符与表达式
2.3 cx51程序的基本语句
2.3.1 表达式语句
2.3.2 复合语句
2.3.3 条件语句
2.3.4 开关语句
2.3.5 循环语句
2.3.6 返回语句
第3章 函数
. 3.1函数的定义
3.2 函数的调用
3.2.1 函数的调用形式
3.2.2 对被调用函数的说明
3.2.3 函数的参数和函数的返回值
3.2.4 实际参数的传递方式
3.3 函数的递归调用与再入函数
3.4 中断服务函数与寄存器组定义
3.5 函数变量的存储方式
3.5.1 局部变量与全局变量
3.5.2 变量的存储种类
3.5.3 函数的参数和局部变量的存储器模式
第4章 数组与指针
4.1 数组的定义与引用
4.2 字符数组
4.3 数组作为函数的参数
4.4 指针
4.4.1 指针与地址
4.4.2 指针变量的定义
4.4.3 指针变量的引用
4.4.4 指针变量作为函数的参数
4.5 数组的指针
4.5.1 用指针引用数组元素
4.5.2 字符数组指针
4.5.3 指针的地址计算
4.6 函数型指针
4.7 返回指针型数据的函数
4.8 指针数组与指针型指针
4.8.1 指针数组
4.8.2 指针型指针
4.8.3 抽象型指针
第5章 结构、联合与枚举
5.1 结构变量的定义与引用
5.2 结构变量的初值
5.3 结构数组
5.4 结构型指针
5.4.1 结构型指针的概念
5.4.2 用结构型指针引用结构元素
5.5 结构与函数
5.5.1 将结构作为函数的参数
5.5.2 将结构型指针作为函数的参数
5.6 联合变量的定义与引用
5.7 枚举变量的定义与引用
第6章 预处理器
6.1 宏定义
6.1.1 不带参数的宏定义
6.1.2 带参数的宏定义
6.2 文件包含
6.3 条件编译
6.4 其他预处理命令
第7章 μvision2集成开发环境
7.1 μvision2的下拉菜单
7.1.1 file菜单
7.1.2 edit菜单
7.1.3 view菜单
7.1.4 project菜单
7.1.5 tools菜单
7.1.6 svcs菜单
7.1.7 window菜单
7.1.8 help菜单
7.2 μvision2中的调试器
7.2.1 debug状态下窗口分配与view菜单操作
7.2.2 通过debug菜单进行程序代码调试
7.2.3 通过“peripherals”菜单观察仿真结果
7.3 μvision2的调试命令
7.3.1 显示和更新存储器内容命令
7.3.2 程序执行控制命令
7.3.3 断点管理命令
7.3.4 其他通用命令
7.4 μvision2的表达式
7.4.1 表达式的组成
7.4.2 μvision2表达式与c语言表达式之间的差别
7.4.3 μvision2表达式应用举例
7.5 μvision2的函数
7.5.1 内部函数
7.5.2 用户函数
7.5.3 信号函数
7.5.4 μvision2函数与cx51函数的差别
第8章 μvision2环境下cx51编程技巧与应用实例
8.1 编写cx51应用程序的基本原则
8.2 cx51应用中的一些常见问题与解决方法
8.2.1 cx51程序设计中容易出错的地方
8.2.2 有关cx51程序设计的若干实际应用技巧
8.3 8051单片机的片内定时器应用编程
8.3.1 多模块编程
8.3.2 片上集成外围功能应用
8.3.3 在μvision2中生成应用库函数
8.4 在μvision2中应用硬件目标板
8.5 8051单片机的片内串行日应用编程
8.5.1 用8051串行口扩展的矩阵键盘
8.5.2 利用8051串行口实现多机通信
8.5.3 8051串行口的中断驱动程序
8.5.4 利用8051串行口实现人机对话命令的输入输出
8.6 8051单片机串行接口扩展应用编程
8.6.1 5位共阴极led驱动器mc14489的应用
8.6.2 8位共阴极led驱动器max7219的应用
8.6.3 单总线温度传感器ds1820的应用
8.6.4 实时时钟芯片ds 1302的应用
8.7 i2c总线驱动程序
8.7.1 i2c总线简介
8.7.2 i2c总线通用软件模拟驱动程序
8.7.3 i2c接口器件24c04的读写程序
8.8 8051单片机存储器扩展与测试应用编程
8.8.1 测试8051应用系统总线与扩展存储器的cx51程序
8.8.2 8051扩展flash存储器在系统编程的cx51程序
8.8.3 p89c51rd2单片机片内flash在应用中编程的cx51程序
8.9 8051单片机并行接日扩展应用编程
8.9.1 打印输出接口及其驱动程序
8.9.2 d/a及aid转换接口及其驱动程序
8.9.3 用可编程芯片8155实现并行i/o接口扩展
8.9.4 实时日历/时钟芯片ds12887的cx51驱动程序
8.9.5 用可编程芯片8279扩展键盘/led显示器接口
8.9.6 lcd显示模块ea-d20040ar的cx51应用编程
8.9.7 内置t6963c驱动器的lcd显示模块cx51应用编程
8.10 80c552单片机内部a/d转换器的cx51驱动程序
8.10.1 80c552单片机简介
8.10.2 80c552内部adc的应用
8.10.3 使用80c552内部adc时印刷电路板的设计要点
8.10.4 使用80c552内部adc的cx51驱动程序
8.11 87c752单片机在气流量测量中的应用
8.11.1 87c752单片机简介
8.11.2 气流量测量仪表的硬件设计
8.11.3 气流量测量仪表的软件设计
第9章 cx51编译器
9.1 cx51编译器简介
9.2 cx51编译器控制命令详解
9.2.1 源控制命令
9.2.2 列表控制命令
9.2.3 目标控制命令
9.3 keil cx51编译器对ansic的扩展
9.3.1 存储器类型与编译模式
9.3.2 关于bit,sbit,sfr,sfr16数据类型
9.3.3 一般指针与基于存储器的指针及其转换
9.3.4 cx51编译器对ansic函数定义的扩展
9.4 cx51编译器的数据调用协议
9.4.1 数据在内存中的存储格式
9.4.2 目标代码的段管理
9.5 cx51编译器的特殊支持
9.5.1 analog device公司的aduc8xxb2系列
9.5.2 atmel 89x8252及衍生产品
9.5.3 dallas 80c320、c420、c520、c530
9.5.4 dallas 80c390、c400、c5240及衍生产品
9.5.5 infineon 80c517、c509、c537及衍生产品
9.5.6 philips 8xc750、c751、c752
9.5.7 philips 8xc51mx
9.5.8 philips和atmel wm系列的双数据指针
9.6 用户配置文件
9.6.1 启动代码文件
9.6.2 变量初始化文件
9.6.3 基本i/o函数文件
9.6.4 分组配置文件
9.7 与汇编语言程序的接口
9.8 与pl/m51程序的接口
9.9 绝对地址访问
9.9.1 采用扩展关键字“_at_”或指针定义变量的绝对地址
9.9.2 采用预定义宏指定变量的绝对地址
9.9.3 采用连接定位控制命令指定变量的绝对地址
9.10 cx51的库函数
9.10.1 字符函数ctype.h
9.10.2 标准i/o函数stdio.h
9.10.3 字符串函数string.h
9.10.4 标准函数stdlib.h
9.10.5 数学函数math.h
9.10.6 绝对地址访问absacc.h
9.10.7 内部函数intrins.h
9.10.8 变量参数表stdarg.h
9.10.9 全程跳转setjmp.h
9.10.10 计算结构体成员的偏移量stddef.h
第10章 ax51定汇编器
10.1 符号与表达式
10.2 汇编伪指令
10.2.1 段控制指令
10.2.2 符号定义指令
10.2.3 存储器初始化指令
10.2.4 存储器保留指令
10.2.5 过程声明指令(仅用于ax51)
10.2.6 程序连接指令
10.2.7 地址控制指令
10.2.8 其他指令
10.3 宏处理器
10.3.1 标准宏处理器
10.3.2 嵌套宏定义
10.3.3 宏调用
10.3.4 c宏处理器
10.3.5 mpl宏处理器
10.3.6 mpl函数
10.3.7 mpl条件处理函数
10.3.8 mpl字符串处理函数
10.4 汇编控制命令
10.4.1 汇编控制命令详解
10.4.2 条件汇编命令
第11章 bl51/lx51连接定位器与实用工具
11.1 bl51/lx51的连接定位方式
11.1.1 连接定位中的数据段处理
11.1.2 连接定位器的引用
11.1.3 应用程序在存储器空间中的定位
11.1.4 数据覆盖
11.1.5 代码分组
11.1.6 分组配置
11.2 连接定位控制命令详解
11.2.1 列表文件控制命令
11.2.2 输出文件控制命令
11.2.3 段与存储器定位控制命令
11.2.4 高级语言控制命令
11.3 符号转换工具
11.3.1 intel hex文件格式与符号转换工具
11.3.2 引用符号转换工具oh51/ohx51
11.3.3 引用分组目标文件转换工具oc51
11.4 库管理器libx51
第12章 rtx51实时多任务操作系统
12.1 rtx51一般介绍
12.2 rtx51技术参数
12.3 使用rtx51 tiny的要求和限定
12.4 rtx51 tiny的任务管理
12.5 rtx51 tiny的配置
12.6 rtx51 tiny的系统函数
12.7 rtx51 tiny应用系统调试
附录a keil cx51与ansic的差别
附录b keil cx51不同版本的差别
附录c 代码优化
附录d cx51编译器的限制
附录e 关于配套光盘及硬件目标板
参考文献
1.1 8051单片机的存储器组织结构
1.2 keil cx51开发工具
1.3 cx51简单编程与调试
第2章 cx51程序设计基础
2.1 标识符与关键字
2.2 cx51程序设计的基本语法
2.2. 1数据类型
2.2.2 常量
2.2.3 变量及其存储模式
2.2.4 用typedef重新定义数据类型
2.2.5 运算符与表达式
2.3 cx51程序的基本语句
2.3.1 表达式语句
2.3.2 复合语句
2.3.3 条件语句
2.3.4 开关语句
2.3.5 循环语句
2.3.6 返回语句
第3章 函数
. 3.1函数的定义
3.2 函数的调用
3.2.1 函数的调用形式
3.2.2 对被调用函数的说明
3.2.3 函数的参数和函数的返回值
3.2.4 实际参数的传递方式
3.3 函数的递归调用与再入函数
3.4 中断服务函数与寄存器组定义
3.5 函数变量的存储方式
3.5.1 局部变量与全局变量
3.5.2 变量的存储种类
3.5.3 函数的参数和局部变量的存储器模式
第4章 数组与指针
4.1 数组的定义与引用
4.2 字符数组
4.3 数组作为函数的参数
4.4 指针
4.4.1 指针与地址
4.4.2 指针变量的定义
4.4.3 指针变量的引用
4.4.4 指针变量作为函数的参数
4.5 数组的指针
4.5.1 用指针引用数组元素
4.5.2 字符数组指针
4.5.3 指针的地址计算
4.6 函数型指针
4.7 返回指针型数据的函数
4.8 指针数组与指针型指针
4.8.1 指针数组
4.8.2 指针型指针
4.8.3 抽象型指针
第5章 结构、联合与枚举
5.1 结构变量的定义与引用
5.2 结构变量的初值
5.3 结构数组
5.4 结构型指针
5.4.1 结构型指针的概念
5.4.2 用结构型指针引用结构元素
5.5 结构与函数
5.5.1 将结构作为函数的参数
5.5.2 将结构型指针作为函数的参数
5.6 联合变量的定义与引用
5.7 枚举变量的定义与引用
第6章 预处理器
6.1 宏定义
6.1.1 不带参数的宏定义
6.1.2 带参数的宏定义
6.2 文件包含
6.3 条件编译
6.4 其他预处理命令
第7章 μvision2集成开发环境
7.1 μvision2的下拉菜单
7.1.1 file菜单
7.1.2 edit菜单
7.1.3 view菜单
7.1.4 project菜单
7.1.5 tools菜单
7.1.6 svcs菜单
7.1.7 window菜单
7.1.8 help菜单
7.2 μvision2中的调试器
7.2.1 debug状态下窗口分配与view菜单操作
7.2.2 通过debug菜单进行程序代码调试
7.2.3 通过“peripherals”菜单观察仿真结果
7.3 μvision2的调试命令
7.3.1 显示和更新存储器内容命令
7.3.2 程序执行控制命令
7.3.3 断点管理命令
7.3.4 其他通用命令
7.4 μvision2的表达式
7.4.1 表达式的组成
7.4.2 μvision2表达式与c语言表达式之间的差别
7.4.3 μvision2表达式应用举例
7.5 μvision2的函数
7.5.1 内部函数
7.5.2 用户函数
7.5.3 信号函数
7.5.4 μvision2函数与cx51函数的差别
第8章 μvision2环境下cx51编程技巧与应用实例
8.1 编写cx51应用程序的基本原则
8.2 cx51应用中的一些常见问题与解决方法
8.2.1 cx51程序设计中容易出错的地方
8.2.2 有关cx51程序设计的若干实际应用技巧
8.3 8051单片机的片内定时器应用编程
8.3.1 多模块编程
8.3.2 片上集成外围功能应用
8.3.3 在μvision2中生成应用库函数
8.4 在μvision2中应用硬件目标板
8.5 8051单片机的片内串行日应用编程
8.5.1 用8051串行口扩展的矩阵键盘
8.5.2 利用8051串行口实现多机通信
8.5.3 8051串行口的中断驱动程序
8.5.4 利用8051串行口实现人机对话命令的输入输出
8.6 8051单片机串行接口扩展应用编程
8.6.1 5位共阴极led驱动器mc14489的应用
8.6.2 8位共阴极led驱动器max7219的应用
8.6.3 单总线温度传感器ds1820的应用
8.6.4 实时时钟芯片ds 1302的应用
8.7 i2c总线驱动程序
8.7.1 i2c总线简介
8.7.2 i2c总线通用软件模拟驱动程序
8.7.3 i2c接口器件24c04的读写程序
8.8 8051单片机存储器扩展与测试应用编程
8.8.1 测试8051应用系统总线与扩展存储器的cx51程序
8.8.2 8051扩展flash存储器在系统编程的cx51程序
8.8.3 p89c51rd2单片机片内flash在应用中编程的cx51程序
8.9 8051单片机并行接日扩展应用编程
8.9.1 打印输出接口及其驱动程序
8.9.2 d/a及aid转换接口及其驱动程序
8.9.3 用可编程芯片8155实现并行i/o接口扩展
8.9.4 实时日历/时钟芯片ds12887的cx51驱动程序
8.9.5 用可编程芯片8279扩展键盘/led显示器接口
8.9.6 lcd显示模块ea-d20040ar的cx51应用编程
8.9.7 内置t6963c驱动器的lcd显示模块cx51应用编程
8.10 80c552单片机内部a/d转换器的cx51驱动程序
8.10.1 80c552单片机简介
8.10.2 80c552内部adc的应用
8.10.3 使用80c552内部adc时印刷电路板的设计要点
8.10.4 使用80c552内部adc的cx51驱动程序
8.11 87c752单片机在气流量测量中的应用
8.11.1 87c752单片机简介
8.11.2 气流量测量仪表的硬件设计
8.11.3 气流量测量仪表的软件设计
第9章 cx51编译器
9.1 cx51编译器简介
9.2 cx51编译器控制命令详解
9.2.1 源控制命令
9.2.2 列表控制命令
9.2.3 目标控制命令
9.3 keil cx51编译器对ansic的扩展
9.3.1 存储器类型与编译模式
9.3.2 关于bit,sbit,sfr,sfr16数据类型
9.3.3 一般指针与基于存储器的指针及其转换
9.3.4 cx51编译器对ansic函数定义的扩展
9.4 cx51编译器的数据调用协议
9.4.1 数据在内存中的存储格式
9.4.2 目标代码的段管理
9.5 cx51编译器的特殊支持
9.5.1 analog device公司的aduc8xxb2系列
9.5.2 atmel 89x8252及衍生产品
9.5.3 dallas 80c320、c420、c520、c530
9.5.4 dallas 80c390、c400、c5240及衍生产品
9.5.5 infineon 80c517、c509、c537及衍生产品
9.5.6 philips 8xc750、c751、c752
9.5.7 philips 8xc51mx
9.5.8 philips和atmel wm系列的双数据指针
9.6 用户配置文件
9.6.1 启动代码文件
9.6.2 变量初始化文件
9.6.3 基本i/o函数文件
9.6.4 分组配置文件
9.7 与汇编语言程序的接口
9.8 与pl/m51程序的接口
9.9 绝对地址访问
9.9.1 采用扩展关键字“_at_”或指针定义变量的绝对地址
9.9.2 采用预定义宏指定变量的绝对地址
9.9.3 采用连接定位控制命令指定变量的绝对地址
9.10 cx51的库函数
9.10.1 字符函数ctype.h
9.10.2 标准i/o函数stdio.h
9.10.3 字符串函数string.h
9.10.4 标准函数stdlib.h
9.10.5 数学函数math.h
9.10.6 绝对地址访问absacc.h
9.10.7 内部函数intrins.h
9.10.8 变量参数表stdarg.h
9.10.9 全程跳转setjmp.h
9.10.10 计算结构体成员的偏移量stddef.h
第10章 ax51定汇编器
10.1 符号与表达式
10.2 汇编伪指令
10.2.1 段控制指令
10.2.2 符号定义指令
10.2.3 存储器初始化指令
10.2.4 存储器保留指令
10.2.5 过程声明指令(仅用于ax51)
10.2.6 程序连接指令
10.2.7 地址控制指令
10.2.8 其他指令
10.3 宏处理器
10.3.1 标准宏处理器
10.3.2 嵌套宏定义
10.3.3 宏调用
10.3.4 c宏处理器
10.3.5 mpl宏处理器
10.3.6 mpl函数
10.3.7 mpl条件处理函数
10.3.8 mpl字符串处理函数
10.4 汇编控制命令
10.4.1 汇编控制命令详解
10.4.2 条件汇编命令
第11章 bl51/lx51连接定位器与实用工具
11.1 bl51/lx51的连接定位方式
11.1.1 连接定位中的数据段处理
11.1.2 连接定位器的引用
11.1.3 应用程序在存储器空间中的定位
11.1.4 数据覆盖
11.1.5 代码分组
11.1.6 分组配置
11.2 连接定位控制命令详解
11.2.1 列表文件控制命令
11.2.2 输出文件控制命令
11.2.3 段与存储器定位控制命令
11.2.4 高级语言控制命令
11.3 符号转换工具
11.3.1 intel hex文件格式与符号转换工具
11.3.2 引用符号转换工具oh51/ohx51
11.3.3 引用分组目标文件转换工具oc51
11.4 库管理器libx51
第12章 rtx51实时多任务操作系统
12.1 rtx51一般介绍
12.2 rtx51技术参数
12.3 使用rtx51 tiny的要求和限定
12.4 rtx51 tiny的任务管理
12.5 rtx51 tiny的配置
12.6 rtx51 tiny的系统函数
12.7 rtx51 tiny应用系统调试
附录a keil cx51与ansic的差别
附录b keil cx51不同版本的差别
附录c 代码优化
附录d cx51编译器的限制
附录e 关于配套光盘及硬件目标板
参考文献
Keil Cx51 V7.0单片机高级语言编程与μVision2应用实践
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!