经过编辑同志近4个月的编辑、校对,我的书稿终于校对完成了。书名定为《51单片机工程师是怎么炼成的》,书名比较大了,呵呵;我更喜欢叫它《AT89C51-Proteus仿真》。在这个特别的日子里感谢编辑同志付出的辛勤劳动,也感谢这段期间关注我书的进展的朋友。
目 录
第1篇 入 门 篇
第 1 章 走近单片机
1.1 我们身边的单片机
1.2 认识单片机
1.3 了解51单片机
1.3.1 51单片机的由来
1.3.2 51单片机的特点
1.3.3 51单片机的代表AT89C51
第 2 章 练练我们的刀和剑:Proteus、Keil C51
2.1 Proteus介绍
2.1.1 安装Proteus
2.1.2 运行Proteus
2.1.3 学用Proteus
2.2 Keil C51介绍
2.2.1 安装Keil C51
2.2.2 运行Keil C51
2.2.3 学用Keil C51
2.3 刀剑合闭
2.3.1 安装VDM51.DLL
2.3.2 设置Keil C51和Proteus
2.3.3 联合调试
第 3 章 让你的单片机眨眨眼睛
3.1 我们的第一个单片机程序
3.1.1 先画出我们要用的电路
3.1.2 用程序点亮我们的灯
3.1.3 分析代码
3.2 不仅仅是让它亮起来
3.2.1 怎么让发亮的灯闪烁呢
3.2.2 代码分析
3.2.3 调试分析
3.2.4 优化程序
3.3 做些程序的改动
3.3.1 改动延时时间
3.3.2 做个众人皆知的跑马灯
3.4 能不能连点花样
3.4.1 想想你能画什么
3.4.2 用代码显示数字
第 4 章 让数字显示出来
4.1 引入数码管的概念
4.1.1 数码管介绍
4.1.2 写段程序让它亮起来
4.1.3 数码管的驱动方式
4.2 多显示几个数码管看看
4.2.1 电路实现
4.2.2 程序实现
4.2.3 你的眼睛欺骗了你
4.3 仿真万年历
4.3.1 电路实现
4.3.2 程序实现
4.3.3 优化程序
第 5 章 用按键告诉单片机你想做什么
5.1 能不能让闪烁的灯停下来
5.1.1 让跑马灯停下来
5.1.2 认识我们用的按键
5.2 如何实现软件消抖
5.3 如何实现按键的复用
第 6 章 如何实时控制单片机
6.1 中断的引入
6.1.1 中断允许寄存器IE
6.1.2 定时/计数器控制寄存器TCON
6.1.3 中断操作流程
6.2 原来按键还可以这样用
6.2.1 写个程序实现按键的中断
6.2.2 不同的触发方式
6.3 中断的优先级
6.3.1 中断优先级
6.3.2 了解更多中断的概念
6.3.3 比较4个I/O口
第 7 章 让定时更精确
7.1 定时/计数器概念
7.1.1 T0、T1介绍
7.1.2 复习寄存器IE、TCON、IP
7.1.3 介绍几个专用寄存器
7.2 工作方式0的应用
7.3 工作方式1的应用
7.4 工作方式2的应用
7.5 工作方式3的应用
7.6 计数器介绍
第 8 章 单片机与外界的联系——串口通信
8.1 串口通信的概念
8.2 先试试如何发送
8.2.1 与串口通信有关的寄存器
8.2.2 先写个示例程序
8.2.3 补充一点51单片机的串口知识
8.3 收发都能实现
8.3.1 将Proteus中的串口连接到硬件上
8.3.2 实现串口收发通信
8.3.3 用中断的方式实现串口收发
第 9 章 让单片机“响”起来
9.1 单片机还会响呢
9.1.1 了解一下蜂鸣器
9.1.2 写个程序让它响起来
9.2 用定时器模拟门铃
9.3 用蜂鸣器演奏曲子
9.4 重新认识AT89C51
9.4.1 AT89C51的总体认识
9.4.2 AT89C51的引脚
9.4.3 有关AT89C51的寄存器
第 2 篇 提 高 篇
第 10 章 再说数码管
10.1 使用扩展芯片驱动数码管
10.1.1 认识扩展芯片74LS138
10.1.2 74LS138的应用
10.1.3 应用74HC154
10.1.4 有关译码器
10.2 显示译码器
10.2.1 显示译码器74LS48
10.2.2 显示译码器的应用
第 11 章 按键多了怎么办
11.1 看一个密码键盘
11.1.1 矩阵键盘的实现
11.1.2 矩阵键盘的扫描
11.2 是否可以扩展呢
11.2.1 了解编码器
11.2.2 应用编码器74LS148
第 12 章 深入串口通信
12.1 通信协议的引入
12.1.1 协议制定
12.1.2 样例实现
12.2 让单片机和PC真正通信
12.2.1 新建一个VC工程
12.2.2 添加VC控件
12.2.3 添加控件到界面
12.2.4 添加变量、完成代码编写
12.2.5 运行、调试
第 13 章 IIC总线及其应用
13.1 IIC总线介绍
13.1.1 初步了解IIC总线
13.1.2 IIC总线上的信号
13.2 认识EEPROM 24C02
13.2.1 认识AT24C02
13.2.2 AT24C02的操作地址
13.2.3 AT24C02的读/写操作
13.3. 写一个IIC通信的例子
第 14 章 SPI总线及其应用
14.1 SPI总线介绍
14.2 一款SPI接口的EEPROM
14.2.1 认识25AA040
14.2.2 25AA040的工作原理
14.3 应用25AA040
第 15 章 A/D转换、D/A转换
15.1 了解A/D转换器的相关知识
15.1.1 A/D转换器的分类
15.1.2 A/D转换器的主要技术指标
15.2 看两个A/D转换器的例子
15.2.1 了解ADC0809
15.2.2 应用ADC0808
15.2.3 了解ADC0832
15.2.4 应用ADC0832
15.3 再看看D/A转换器
15.3.1 了解D/A转换器
15.3.2 D/A转换器的主要技术指标
15.3.3 了解DAC0832
15.3.4 应用DAC0832
第 16 章 LCD显示
16.1 先认识lED点阵屏
16.1.1 有关LED点阵屏
16.1.2 LED点阵的应用
16.2 使用字符LCD
16.2.1 了解LCD
16.2.2 认识LCD1602
16.2.3 LCD1602的指令说明
16.2.4 使用LCD1602
16.3 使用LCD12864
16.3.1 认识HDG12864L-6
16.3.2 HDG12864L-6指令说明
16.3.3 LCD12864的并行应用
16.3.4 LCD12864的串行应用
第 3 篇 应 用 篇
第 17 章 简易万年历
17.1 电路设计
17.2 认识时钟芯片DS1302
17.3 系统设计
第 18 章 温度自动控制系统
18.1 系统模型
18.2 分析电路
18.2.1 电路分解
18.2.2 认识DS18B20
18.2.3 了解液晶AMPIRE128X64
18.3 系统设计
18.3.1 嵌入式系统设计
18.3.2 PC端软件设计
附录A AT89C51 特殊功能寄存器速查表
附录B Proteus 7.5元件库分类表
附录C 书籍、网站推荐
参考文档
结束语
电子附件:
附录D 第18章 嵌入式系统代码
附录E 第18章 VC程序代码
附录F delay.c、delay.h代码
在您阅读的过程中,发现什么问题、有什么想法,希望您能登录我的blog给出您的意见,或者发电子邮件,谢谢!!
老杨:young45.cublog.cn
http://blogold.chinaunix.net/u2/74383/
young45@126.com