新書推薦:
《
清俗纪闻
》
售價:HK$
98.6
《
镜中的星期天
》
售價:HK$
76.2
《
世界前沿技术发展报告2024
》
售價:HK$
188.2
《
可转债——新手理财的极简工具
》
售價:HK$
65.0
《
新加坡教育:神话与现实
》
售價:HK$
96.3
《
“口袋中的世界史”第一辑·冷战中的危机事件
》
售價:HK$
291.2
《
绝美的奥伦堡蕾丝披肩编织
》
售價:HK$
177.0
《
狂飙年代:18世纪俄国的新文化和旧文化(第二卷)
》
售價:HK$
177.0
|
內容簡介: |
本书详细介绍了V9.00版本的Keil
C51编译器和Vision4的强大功能和具体使用方法,完整地介绍了最新版本C51编译器控制命令,给出了全部C51运行库函数及其应用范例,对Keil
C51软件包中各种应用工具,如A51宏汇编器、BL51Lx51链接定位器、LIB51库管理程序以及OH51符号转换程序、实时多任务操作系统RTX51
TINY等都做了详细介绍,阐述了Vision4新增加的各种功能和应用方法,包括软件模拟调试和硬件目标板实时在线仿真。
本书的特点是强调先进性和实用性,给出了大量应用实例,并带有一张CD-ROM光盘,其中包括Keil公司提供的Keil
C51全功能评估软件包、本书各章中列出的全部程序代码、带FLASH
MON51监控程序的硬件目标板照片、原理电路图以及使用说明。本书适合于从事单片机应用系统开发研制的广大工程技术人员阅读,也可以作为高等院校相关专业大学生或研究生的数学参考书。
|
關於作者: |
徐爱钧,长江大学教授,中国科协湖北省自动化学会理事,湖北省精品课程《单片机原理及应用》负责人。长期从事自动化及单片机与嵌入式系统应用的教学、科研工作,获得湖北省科学技术进步奖等多项奖励。公开出版《智能化测量控制仪表原理与设计》第3版、《Keil
Cx51
V7.0单片机高级语言编程与uVsion2应用实践》第2版、《单片机原理实用教程》第2版、《ARM嵌入式应用技术》、《IAR
EWARM V5嵌入式系统应用编程与开发》等著作和教材10余部。在《仪器仪表学报》等核心期刊上发表学术论文60多篇。
|
目錄:
|
第1章 8051单片机与Keil C51基础
1.1 8051单片机的存储器组织结构
1.2 Keil C51开发工具
1.3 C51简单编程与调试
第2章 C51程序设计基础
2.1 标识符与关键字
2.2 C51程序设计的基本语法
2.2.1 数据类型
2.2.2 常量
2.2.3 变量及其存储模式
2.2.4 用typedef重新定义数据类型
2.2.5 运算符与表达式
2.3 C51程序的基本语句
2.3.1 表达式语句
2.3.2 复合语句
2.3.3 条件语句
2.3.4 开关语句
2.3.5 循环语句
2.3.6 返回语句
2.4 函数
2.4.1 函数的定义
2.4.2 函数的调用形式
2.4.3 对被调用函数的说明
2.4.4 函数的参数与返回值
2.4.5 实际参数的传递方式
2.4.6 函数的递归调用与再入函数
2.4.7 中断函数与寄存器组定义
2.5 函数变量的存储方式
2.5.1 局部变量与全局变量
2.5.2 变量的存储种类
2.5.3 函数的参数和局部变量的
存储器模式
2.6 数组
2.6.1 数组的定义与引用
2.6.2 字符数组
2.6.3 数组作为函数的参数
2.7 指针
2.7.1 指针与地址
2.7.2 指针变量的定义
2.7.3 指针变量的引用
2.7.4 指针变量作为函数的参数
2.8 数组的指针
2.8.1 用指针引用数组元素
2.8.2 字符数组指针
2.8.3 指针的地址计算
2.9 函数型指针
2.10 返回指针型数据的函数
2.11 指针数组与指针型指针
2.11.1 指针数组
2.11.2 指针型指针
2.11.3 抽象型指针
2.12 结构体、联合体与枚举
2.12.1 结构体变量的定义与引用
2.12.2 结构体变量的初值
2.12.3 结构体数组
2.12.4 结构体型指针
2.12.5 将结构体作为函数的参数
2.12.6 将结构体型指针作为函
数的参数
2.13 联合体变量的定义与引用
2.14 枚举变量的定义与引用
2.15 预处理器
2.15.1 不带参数的宏定义
2.15.2 带参数的宏定义
2.15.3 文件包含
2.15.4 条件编译
2.15.5 其他预处理命令
第3章 Vision4集成开发环境
3.1 Vision4的下拉菜单
3.1.1 File菜单
3.1.2 Edit菜单
3.1.3 View菜单
3.1.4 Project菜单
3.1.5 Flash菜单
3.1.6 Tools菜单
3.1.7 SVCS菜单
3.1.8 Window菜单
3.1.9 Help菜单
3.2 Vision4中的调试器
3.2.1 Debug状态下窗口分配与
View菜单
3.2.2 通过Debug菜单进行程序
代码调试
3.2.3 通过Peripherals菜单观察
仿真结果
3.3 Vision4的调试命令
3.3.1 显示和更新存储器内容命令
3.3.2 程序执行控制命令
3.3.3 断点管理命令
3.3.4 其他通用命令
3.4 Vision4的表达式
3.4.1 表达式的组成
3.4.2 Vision4表达式与C语言
表达式之间的差别
3.4.3 Vision4表达式应用举例
3.5 Vision4的函数
3.5.1 内部函数
3.5.2 用户函数
3.5.3 信号函数
3.5.4 Vision4函数与C51函数
的差别
第4章 C51编译器
4.1 C51编译器简介
4.2 C51编译器控制命令详解
4.2.1 源控制命令
4.2.2 列表控制命令
4.2.3 目标控制命令
4.3 Keil C51编译器对ANSI C的扩展
4.3.1 存储器类型与编译模式
4.3.2 关于bit,sbit,sfr,sfr
数据类型
4.3.3 一般指针与基于存储器
的指针及其转换
4.3.4 C51编译器对ANSI C函
数定义的扩展
4.4 C51编译器的数据调用协议
4.4.1 数据在内存中的存储格式
4.4.2 目标代码的段管理
4.5 C51编译器的特殊支持
4.5.1 Analog Device公司的
Aduc8xxB2系列
4.5.2 Atmel 89x8252及衍生产品
4.5.3 Dallas 80C320420520530
4.5.4 Dallas 80C3904005240及
衍生产品
4.5.5 Infineon 80517509537及
衍生产品
4.5.6 NXP 8xC750751752
4.5.7 NXP 8xC51Mx
4.5.8 NXP和Atmel WM系列的
双数据指针
4.6 用户配置文件
4.6.1 启动代码文件
4.6.2 变量初始化文件
4.6.3 基本IO函数文件
4.6.4 分组配置文件
4.7 与汇编语言程序的接口
4.8 与PLM51程序的接口
4.9 绝对地址访问
4.9.1 采用扩展关键字“_at_”或
指针定义变量的绝对地址
4.9.2 采用预定义宏指定变量的
绝对地址
4.9.3 采用链接定位控制命令指
定变量的绝对地址
4.10 C51的库函数
4.10.1 字符函数CTYPE.H
4.10.2 标准IO函数STDIO.H
4.10.3 字符串函数STRING.H
4.10.4 标准函数STDLIB.H
4.10.5 数学函数MATH.H
4.10.6 绝对地址访问ABSACC.H
4.10.7 内部函数INTRINS.H
4.10.8 变量参数表STDARG.H
4.10.9 全程跳转SETJMP.H
4.10.10 计算结构体成员的偏移
量STDDEF.H
4.10.11 创建测试条件ASSERT.H
第5章 A51宏汇编器
5.1 符号与表达式
5.2 汇编伪指令
5.2.1 段控制指令
5.2.2 符号定义指令
5.2.3 存储器初始化指令
5.2.4 存储器保留指令
5.2.5 过程声明指令
(仅用于Ax51)
5.2.6 程序链接指令
5.2.7 地址控制指令
5.2.8 其他指令
5.3 宏处理器
5.3.1 标准宏处理器
5.3.2 嵌套宏定义
5.3.3 宏调用
5.3.4 C宏处理器
5.3.5 MPL宏处理器
5.3.6 MPL函数
5.3.7 MPL条件处理函数
5.3.8 MPL字符串处理函数
5.4 汇编控制命令
5.4.1 汇编控制命令详解
5.4.2 条件汇编命令
第6章 BL51Lx51链接定位器与实用工具
6.1 BL51Lx51的链接定位方式
6.1.1 链接定位中的数据段处理
6.1.2 链接定位器的引用
6.1.3 应用程序在存储器空间中
的定位
6.1.4 数据覆盖
6.1.5 代码分组
6.1.6 分组配置
6.2 链接定位控制命令详解
6.2.1 列表文件控制命令
6.2.2 输出文件控制命令
6.2.3 段与存储器定位控制命令
6.2.4 高级语言控制命令
6.3 符号转换工具
6.3.1 Intel HEX文件格式与符号
转换工具
6.3.2 引用符号转换工具
OH51OHX51
6.3.3 引用分组目标文件转换
工具OC51
6.4 库管理器LIBx51
第7章 RTX51实时多任务操作系统
7.1 RTX51一般介绍
7.2 RTX51技术参数
7.3 使用RTX51 TINY的要求和限定
7.4 RTX51 TINY的任务管理
7.5 RTX51 TINY的配置
7.6 RTX51 TINY的系统函数
7.7 RTX51 TINY应用系统调试
第8章 8051单片机片内资源的C51应用
编程
8.1 编写C51应用程序的基本原则
8.2 C51应用中的一些常见问题与
解决方法
8.3 8051单片机中断系统应用编程
8.3.1 外部中断源扩展
8.3.2 中断嵌套
8.4 8051单片机定时器计数器应
用编程
8.4.1 定时器方式应用
8.4.2 计数器方式应用
8.5 利用定时器产生音乐
8.6 8051单片机串行口应用编程
8.6.1 8051串行口实现串并
转换应用编程
8.6.2 8051串行口的通信方式
应用编程
8.7 P89C51RD2单片机片内FLASH
在应用中编程的C51驱动程序
8.8 80C552单片机内部AD转换器
的C51驱动程序
8.8.1 80C552单片机简介
8.8.2 80C552内部ADC的应用
8.8.3 使用80C552内部ADC的
C51驱动程序
第9章 8051单片机片外扩展的C
应用编程
9.1 LED数码管显示接口应用编程
9.1.1 软件译码和动态扫描的LED
数码管显示接口应用编程
9.1.2 8位共阴极LED数码管驱
动器MAX7219应用编程
9.2 非编码矩阵键盘接口应用编程
9.2.1 采用8155实现的矩阵键盘及
数码管显示接口应用编程
9.2.2 采用8279实现的矩阵键盘及
数码管显示接口应用编程
9.3 LCD液晶模块显示接口应用编程
9.3.1 点阵字符型LCD显示接口
应用编程
9.3.2 12864点阵图形LCD显示
接口应用编程
9.3.3 内置T6963C控制器的点阵图
形LCD显示接口应用编程
9.4 DA与AD转换接口应用编程
9.4.1 DAC0832转换接口应用
编程
9.4.2 串行接口DAC芯片MAX
应用编程
9.4.3 ADC0809转换接口应用
编程
9.4.4 ICL7135转换接口应用编程
9.4.5 串行接口ADC芯片TLC
应用编程
9.5 单片机I2C总线扩展应用编程
9.5.1 I2C总线简介
9.5.2 I2C总线通用驱动程序
9.5.3 I2C接口器件24C04的读写
程序
9.6 8051单片机存储器扩展与测试应
用编程
9.6.1 测试8051应用系统总线与
扩展存储器的C51驱动程序
9.6.2 8051扩展FLASH存储器在
系统编程的C51驱动程序
第10章 Keil C51综合应用编程实例
10.1 有关C51编程的若干实际应用
技巧
10.2 C51与汇编语言混合编程与生
成应用库文件
10.2.1 C51与汇编语言混合编程
10.2.2 在Vision4中生成应用库
文件
10.3 在Vision4中应用硬件目标板
10.3.1 带MON51监控程序的
硬件目标板
10.3.2 带FLASH MON51监控程
序的硬件目标板
10.4 红外遥控系统设计
10.4.1 功能要求
10.4.2 硬件电路设计
10.4.3 软件程序设计
10.5 简易电子琴设计
10.5.1 功能要求
10.5.2 硬件电路设计
10.5.3 软件程序设计
10.6 带农历的电子万年历设计
10.6.1 功能要求
10.6.2 硬件电路设计
10.6.3 软件程序设计
10.7 电子密码锁设计
10.7.1 功能要求
10.7.2 硬件电路设计
10.7.3 软件程序设计
10.8 DS18B20多点温度监测系统设计
10.8.1 功能要求
10.8.2 硬件电路设计
10.8.3 软件程序设计
10.9 STH11数字温-湿度测量系统设计
10.9.1 功能要求
10.9.2 硬件电路设计
10.9.3 软件程序设计
10.10 单片机SD卡读写接口设计
10.10.1 功能要求
10.10.2 硬件电路设计
10.10.3 软件程序设计
附录A Keil C51与ANSI C的差别
附录B Keil C51不同版本的差别
附录C 代码优化
附录D C51编译器的限制
附录E 关于配套光盘及硬件目标板
参考文献
|
|