单片机应用技术实例教程(C51版)

本书特色

[

51单片机应用系统是嵌入式控制系统的重要分支,在工业控制等场合得到了广泛的应用,51单片机的开发是目前高校等教育机构相应专业学生的必修课程。本书由11章以及1个附录组成,从51单片机的发展开始,由浅入深、循序渐进地介绍了51单片机的内核结构、51单片机应用系统的组成、c51语言的使用方法、51单片机内部资源以及常用外围器件的使用方法。
  本书适合需要学习51单片机开发的读者进行基础学习,并且由于本书的高实用性,其不仅可以作为一本教材,还可以作为一本51单片机开发工程师的查询手册。

]

目录

第1章 51单片机基础 1.1 51单片机的发展和常见型号 1.1.1 51单片机的发展历史 1.1.2 常见的51单片机 1.2 51单片机的内核结构介绍 1.2.1 中央处理器 1.2.2 存储器 1.2.3 外部引脚 1.2.4 时钟模块 1.3 51单片机的工作方式 1.3.1 复位工作方式 1.3.2 程序执行方式 1.3.3 低功耗工作方式 1.3.4 其他工作 1.4 本章总结 第2章 51单片机的应用系统设计和软件开发环境 2.1 51单片机应用系统的结构 2.2 51单片机*小应用系统 2.2.1 *小应用系统的构成 2.2.2 时钟源 2.2.3 复位电路 2.2.4 供电系统 2.3 51单片机的keil μvision软件开发环境 2.3.1 keil μvision的界面 2.3.2 keil μvision的菜单详解 2.3.3 使用keil μvision 2.4 本章总结 第3章 51单片机的c51语言基础 3.1 c51语言的数据、运算符和表达式 3.1.1 数据和数据类型 3.1.2 常量和变量 3.1.3 存储器和寄存器变量 3.1.4 算术运算、赋值、逻辑运算 3.1.5 位操作 3.1.6 自增减、复合和逗号运算 3.1.7 运算符的优先级 3.2 c51语言的结构 3.2.1 顺序结构 3.2.2 选择结构 3.2.3 循环结构 3.2.4 其他结构语句 3.3 c51语言的函数 3.3.1 c51语言的函数的分类 3.3.2 函数的定义 3.3.3 函数的调用 3.3.4 内部函数和外部函数 3.3.5 变量类型以及存储方式 3.4 c51语言的数组和指针 3.4.1 数组 3.4.2 指针 3.4.3 数组和指针 3.4.4 字符串和指针 3.4.5 数组、指针和函数的联系 3.4.6 指针数组和指向指针的指针 3.5 c51语言的自构造类型 3.5.1 结构体 3.5.2 联合体(共用体) 3.5.3 枚举 3.6 本章小结 第4章 51单片机的并行i/o端口及其应用 4.1 数据地址端口p0和p2 4.2 普通i/o端口p1 4.3 复用端口p3 4.4 数据—地址总线扩展方法 4.5 应用案例4.1——流水灯的实现 4.5.1 51单片机通过并行端口输出电平 4.5.2 发光二极管(led)基础 4.5.3 流水灯的硬件电路 4.5.4 流水灯的应用代码 4.6 应用案例4.2——按键指示灯的实现 4.6.1 51单片机通过并行端口读入电平 4.6.2 独立按键基础 4.6.3 按键指示灯的硬件电路 4.6.4 按键指示灯的应用代码 4.7 本章总结 第5章 51单片机的中断系统和外部中断 5.1 51单片机的中断系统 5.1.1 51单片机的中断源 5.1.2 51单片机的中断引脚 5.1.3 51单片机的中断相关控制寄存器 5.1.4 中断向量地址和中断标志位 5.2 51单片机的中断处理过程 5.3 51单片机的中断服务程序设计 5.4 51单片机的外部中断 5.4.1 外部中断的控制 5.4.2 外部中断的检测和响应 5.4.3 多个外部中断信号的处理 5.5 应用案例——外部中断计数系统的实现 5.5.1 51单片机使用外部中断 5.5.2 单位数码管基础 5.5.3 三极管基础 5.5.4 外部中断计数系统的电路 5.5.5 外部中断计数系统的应用代码 5.6 一个低电平触发外部中断的实验 5.6.1 实验的电路和应用代码 5.6.2 实验的运行结果分析 5.7 本章总结 第6章 51单片机的定时计数器 6.1 51单片机定时计数器的组成 6.2 51单片机定时计数器的寄存器 6.2.1 工作方式控制寄存器tmod 6.2.2 控制寄存器tcon 6.2.3 数据寄存器th0、tl0、和th1、tl1 6.3 51单片机定时计数器的工作方式 6.3.1 工作方式0 6.3.2 工作方式1 6.3.3 工作方式2 6.3.4 工作方式3 6.3.5 定时计数器的中断 6.4 51单片机定时计数器的使用 6.4.1 使用定时功能 6.4.2 使用计数功能 6.4.3 使用门控信号 6.4.4 定时计数器值的读取 6.5 51单片机定时计数器的特殊应用 6.6 应用案例6.1——pwm波形发生器的实现 6.6.1 pwm波形基础 6.6.2 pwm波形发生器的应用代码 6.6.3 脉冲宽度可调的pwm波形发生器 6.7 应用案例6.2 ——呼吸灯的实现 6.7.1 呼吸灯效果实现原理 6.7.2 rcl电路原理 6.7.3 呼吸灯的电路 6.7.4 呼吸灯的应用代码 6.8 中断服务子程序带来的时间误差分析 6.9 本章总结 第7章 51单片机的串行通信模块 7.1 51单片机串行通信的一些术语 7.2 51单片机串行通信模块的组成 7.3 51单片机串行通信模块的寄存器 7.3.1 串行通信模块控制寄存器(scon) 7.3.2 串行通信模块数据寄存器(sbuf) 7.3.3 电源管理寄存器(pcon) 7.4 51单片机串行通信模块的工作方式和使用 7.4.1 工作方式0 7.4.2 工作方式1 7.4.3 工作方式2、3 7.4.4 串行通信模块的中断 7.5 串行通信模块的特殊应用 7.6 应用案例7.1——51单片机和pc通信系统的实现 7.6.1 rs-232接口标准和max232芯片基础 7.6.2 51单片机和pc通信系统的电路 7.6.3 51单片机和pc通信的应用代码 7.6.4 pc的串口调试工具 7.7 应用案例7.2——多点数据采集系统的实现 7.7.1 多点数据采集系统的电路结构 7.7.2 多点数据采集系统的应用代码 7.8 c51语言的输入和输出函数 7.8.1 putchar函数的使用方法 7.8.2 printf函数的使用方法 7.8.3 sprintf函数的使用方法 7.9 使用普通i/o引脚模拟串行通信模块 7.9.1 i/o引脚模拟串行通信模块的算法 7.9.2 i/o引脚模拟串行通信模块的c51语言代码 7.10 串行通信模块的波特率自适应 7.10.1 串行通信模块的波特率自适应算法 7.10.2 串行通信模块波特率自适应的c51语言代码 7.11 串行通信模块的“高速”通信 7.11.1 波特率固定的“高速”通信 7.11.2 波特率可变的“高速”通信应用 7.12 串行通信模块的波特率误差 7.13 本章总结 第8章 51单片机的人机交互接口 8.1 数码管基础和应用 8.1.1 多位数码管介绍 8.1.2 多位数码管驱动芯片max7219 8.2 1602液晶模块基础和应用 8.2.1 1602液晶模块基础 8.2.2 1602液晶模块的电路 8.2.3 1602液晶模块的操作步骤和驱动函数 8.3 拨码开关基础和应用 8.3.1 拨码开关基础 8.3.2 拨码开关的电路 8.3.3 拨码开关的操作步骤 8.3.4 拨码开关的应用实例 8.4 行列扫描键盘基础和应用 8.4.1 行列扫描键盘基础 8.4.2 行列扫描键盘的电路 8.4.3 行列扫描键盘的操作步骤和驱动函数 8.5 蜂鸣器基础和应用 8.5.1 蜂鸣器的基础 8.5.2 蜂鸣器的电路 8.5.3 蜂鸣器的操作步骤和驱动函数 8.6 应用案例8.1——简易频率计的实现 8.6.1 51单片机的频率测量算法 8.6.2 简易频率计的电路结构 8.6.3 简易频率计的应用代码 8.7 应用案例8.2——数字输入模块的实现 8.7.1 数字输入模块的工作原理 8.7.2 数字输入模块的电路结构 8.7.3 数字输入模块的应用代码 8.8 应用案例8.3——简易电子琴的实现 8.8.1 乐音的基础知识 8.8.2 简易电子琴的电路结构 8.8.3 简易电子琴的应用代码 8.9 本章总结 第9章 51单片机的通信接口 9.1 51单片机通信接口基础 9.1.1 串行通信和并行通信 9.1.2 有线通信和无线通信 9.2 51单片机应用系统的通信模型和通信协议设计 9.2.1 51单片机应用系统的通信模型 9.2.2 51单片机应用系统的通信协议设计 9.3 51单片机应用系统的常用外部通信接口 9.3.1 spi总线接口 9.3.2 i2c总线接口 9.3.3 1-wire总线接口 9.4 51单片机的并行通信接口 9.4.1 双口ram idt7132基础 9.4.2 双单片机使用双口ram进行数据通信 9.5 51单片机的串行通信接口 9.5.1 rs-422通信协议 9.5.2 rs-485通信协议 9.5.3 光电隔离器 9.6 本章总结 第10章 51单片机的a/d和d/a通道 10.1 51单片机的a/d采集通道基础 10.1.1 a/d变换的过程 10.1.2 a/d变换的应用电路构成 10.1.3 a/d变换的保持电路 10.1.4 a/d芯片的分类 10.1.5 a/d芯片的选择 10.1.6 a/d芯片对电源的需求 10.2 8位并行8通道a/d芯片adc0809 10.2.1 adc0809基础 10.2.2 adc0809的电路 10.2.3 adc0809的操作步骤和驱动函数 10.3 51单片机的d/a输出通道基础 10.3.1 d/a转换的过程 10.3.2 d/a模块的分类 10.3.3 d/a芯片的选择 10.3.4 a/d芯片对电源的需求 10.4 八位串行单通道d/a芯片max517 10.4.1 max517应用基础 10.4.2 max517的电路 10.4.3 max517的操作步骤和驱动函数 10.5 应用案例10.1——自动换挡电压表的实现 10.5.1 电压表的挡程和自动换挡原理 10.5.2 单片机应用系统中的信号放大 10.5.3 自动换挡电压表的电路结构 10.5.4 自动换挡电压表的应用代码 10.6 应用案例10.2——简易波形发生器的实现 10.6.1 简易波形发生器设计基础 10.6.2 简易波形发生器的电路设计 10.6.3 简易波形发生器的应用代码 10.7 本章总结 第11章 51单片机的温度和时间采集模块 11.1 在51单片机应用系统中获取温度 11.2 ds18b20温度传感器 11.2.1 ds18b20基础 11.2.2 ds18b20的电路 11.2.3 ds18b20的操作步骤和驱动函数 11.3 51单片机的时间采集通道 11.4 并行总线接口时钟模块ds12c887 11.4.1 ds12c887基础 11.4.2 ds12c887的电路 11.4.3 ds12c887的操作步骤和驱动函数 11.5 应用案例11.1——多点温度采集系统的实现 11.5.1 多点温度采集系统的设计 11.5.2 多点温度采集系统的电路结构 11.5.3 多点温度采集系统的应用代码 11.6 应用案例11.2——简单数字时钟的实现 11.6.1 简单数字时钟的设计 11.6.2 简单数字时钟的电路结构 11.6.3 简单数字时钟的应用代码 11.7 本章总结 附录 51单片机的c51语言使用技巧 0.1 c51语言程序设计技巧 0.1.1 养成好的编程习惯 0.1.2 宏定义 0.1.3 条件编译 0.1.4 具体指针的应用 0.1.5 一些关键字的使用 0.2 c51语言常用库函数介绍 0.2.1 c51语言的库函数基础 0.2.2 库文件和头文件分类 0.2.3 c51语言的库函数分类介绍 0.3 在keil μvision中编写用户自己的库函数 0.3.1 用户库函数的建立步骤 0.3.2 用户库函数的引用步骤 0.3.3 一个用户库函数的应用实例 0.4 c51语言的编译常见报警错误以及解决办法 0.4.1 变量未被使用警告(warning 280) 0.4.2 函数未被声明警告(warning c206) 0.4.3 头文件无法打开错误(error c318) 0.4.4 函数名称重复定义错误(error c237) 0.4.5 函数未被调用警告 0.4.6 函数未定义警告(warning c206) 0.4.7 内存空间溢出错误 0.4.8 函数重入警告 0.4.9 常见编译器错误列表 

封面

单片机应用技术实例教程(C51版)

书名:单片机应用技术实例教程(C51版)

作者:汤嘉立

页数:333

定价:¥46.0

出版社:人民邮电出版社

出版日期:2014-11-01

ISBN:9787115356192

PDF电子书大小:92MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注