《单片机C语言程序设计实训100例——基于8051+Proteus仿真》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:彭伟编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121087578
  • 页数:363 页
图书介绍:本书第一章用简短篇幅介绍8051单片机的特点、应用,以及Keil C语言程序设计,在语言程序设计中重点介绍8051内部资源;第二章介绍Proteus的入门操作;第三~五章全部为单片机的C程序设计案例;第三章为基础案例,涉及C语言基础部分,基本IO部分,中断与定时器,串口控制,模数与数模转换部分等;第四章在前面的基础上对扩展的外围硬件应用进行编程,包括译码器、串并转换芯片、存储器、中英文液晶屏、IIC等;第五章是综合设计部分,涉及一些具体的应用型产品的设计。

第1章 8051单片机C语言程序设计概述 1

1.1 8051单片机引脚 1

1.2 数据与程序内存 2

1.3 特殊功能寄存器 3

1.4 外部中断、定时/计数器及串口应用 4

1.5 有符号与无符号数应用、数位分解、位操作 5

1.6 变量、存储类型与存储模式 7

1.7 数组、字符串与指针 9

1.8 流程控制 11

1.9 可重入函数和中断函数 11

1.10 C语言在单片机系统开发中的优势 12

第2章 Proteus操作基础 13

2.1 Proteus操作界面简介 13

2.2 仿真电路原理图设计 14

2.3 元件选择 16

2.4 调试仿真 20

2.5 Proteus与μV3的联合调试 21

第3章 基础程序设计 22

3.1 闪烁的LED 22

3.2 从左到右的流水灯 23

3.3 左右来回循环的流水灯 25

3.4 花样流水灯 26

3.5 LED模拟交通灯 28

3.6 单只数码管循环显示0~9 30

3.7 8只数码管滚动显示单个数字 31

3.8 8只数码管显示多个不同字符 33

3.9 数码管闪烁显示 35

3.10 8只数码管滚动显示数字串 36

3.11 K1~K4控制LED移位 37

3.12 K1~K4按键状态显示 39

3.13 K1~K4分组控制LED 40

3.14 K1~K4控制数码管移位显示 42

3.15 K1~K4控制数码管加减演示 44

3.16 4×4键盘矩阵控制条形LED显示 46

3.17 数码管显示4×4键盘矩阵按键 48

3.18 开关控制LED 51

3.19 继电器控制照明设备 52

3.20 数码管显示拨码开关编码 53

3.21 开关控制报警器 55

3.22 按键发音 56

3.23 播放音乐 58

3.24 INT0中断计数 59

3.25 INT0中断控制LED 61

3.26 INT0及INT1中断计数 63

3.27 TIMER0控制单只LED闪烁 66

3.28 TIMER0控制流水灯 68

3.29 TIMER0控制4只LED滚动闪烁 70

3.30 T0控制LED实现二进制计数 72

3.31 TIMER0与TIMER1控制条形LED 73

3.32 10s的秒表 75

3.33 用计数器中断实现100以内的按键计数 77

3.34 10000s以内的计时程序 78

3.35 定时器控制数码管动态显示 81

3.36 8×8LED点阵屏显示数字 83

3.37 按键控制8×8LED点阵屏显示图形 85

3.38 用定时器设计的门铃 87

3.39 演奏音阶 89

3.40 按键控制定时器选播多段音乐 91

3.41 定时器控制交通指示灯 93

3.42 报警器与旋转灯 96

3.43 串行数据转换为并行数据 98

3.44 并行数据转换为串行数据 99

3.45 甲机通过串口控制乙机LED闪烁 101

3.46 单片机之间双向通信 104

3.47 单片机向主机发送字符串 108

3.48 单片机与PC串口通信仿真 110

第4章 硬件应用 115

4.1 74LS138译码器应用 115

4.2 74HC154译码器应用 116

4.3 74HC595串入并出芯片应用 118

4.4 用74LS148扩展中断 121

4.5 I2C-24C04与蜂鸣器 123

4.6 I2C-24C04与数码管 127

4.7 用6264扩展内存 132

4.8 用8255实现接口扩展 134

4.9 555的应用 136

4.10 BCD译码数码管显示数字 138

4.11 MAX7221控制数码管动态显示 139

4.12 1602字符液晶滚动显示程序 142

4.13 1602液晶显示的DS1302实时时钟 148

4.14 12864LCD图像滚动显示 154

4.15 160128LCD图文演示 160

4.16 2×20串行字符液晶显示 167

4.17 开关控制12864LCD串行模式显示 169

4.18 ADC0832模数转换与显示 175

4.19 用ADC0808控制PWM输出 178

4.20 ADC0809模数转换与显示 181

4.21 用DAC0832生成锯齿波 183

4.22 用DAC0808实现数字调压 184

4.23 PCF8591模数与数模转换 186

4.24 DS1621温度传感器输出显示 193

4.25 DS18B20温度传感器输出显示 198

4.26 正反转可控的直流电动机 203

4.27 正反转可控的步进电动机 205

4.28 键控看门狗 208

第5章 综合设计 211

5.1 可以调控的走马灯 211

5.2 按键选播电子音乐 214

5.3 可演奏的电子琴 216

5.4 1602LCD显示仿手机键盘按键字符 219

5.5 1602LCD显示电话拨号键盘按键 222

5.6 12864LCD显示计算器键盘按键 225

5.7 数码管随机模拟显示乘法口诀 231

5.8 1602LCD随机模拟显示乘法口诀 234

5.9 用数码管设计的可调式电子钟 236

5.10 用1602LCD设计的可调式电子钟 239

5.11 用DS1302与数码管设计的可调式电子表 243

5.12 用DS1302与1602LCD设计的可调式电子日历与时钟 247

5.13 用DS1302与12864LCD设计的可调式中文电子日历 252

5.14 用PG12864LCD设计的指针式电子钟 257

5.15 高仿真数码管电子钟 266

5.16 1602LCD显示的秒表 269

5.17 数码管显示的频率计 274

5.18 字符液晶显示的频率计 276

5.19 用ADC0832调节频率输出 279

5.20 用ADC0832设计的两路电压表 281

5.21 用数码管与DS18B20设计的温度报警器 284

5.22 用1602LCD与DS18B20设计的温度报警器 289

5.23 数码管显示的温控电动机 295

5.24 温度控制直流电动机转速 298

5.25 用ADC0808设计的调温报警器 303

5.26 160128LCD中文显示温度与时间 306

5.27 用DAC0808设计的直流电动机调速器 309

5.28 160128液晶中文显示ADC0832两路模数转换结果 310

5.29 160128液晶曲线显示ADC0832两路模数转换结果 313

5.30 串口发送数据到2片8×8点阵屏滚动显示 315

5.31 用74LS595与74LS154设计的16×16点阵屏 318

5.32 用8255与74LS154设计的16×16点阵屏 320

5.33 8×8LED点阵屏仿电梯数字滚动显示 323

5.34 用24C04与1602LCD设计电子密码锁 325

5.35 光耦控制点亮和延时关闭照明设备 331

5.36 12864LCD显示24C08保存的开机画面 334

5.37 12864LCD显示EPROM2764保存的开机画面 340

5.38 160128液晶显示当前压力 342

5.39 单片机系统中自制硬件字库的应用 344

5.40 用8051与1601LCD设计的整数计算器 349

5.41 模拟射击训练游戏 357

参考文献 363