搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
单片机C语言程序设计实训100例:基于8051+Proteus仿真
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787121087578
  • 作      者:
    彭伟编著
  • 出 版 社 :
    电子工业出版社
  • 出版日期:
    2009
收藏
内容介绍
  第一章用简短篇幅介绍8051单片机的特点、应用,以及Keil C语言程序设计,在语言程序设计中重点介绍8051内部资源;第二章介绍Proteus的入门操作;第三~五章全部为单片机的C程序设计案例;第三章为基础案例,涉及C语言基础部分,基本IO部分,中断与定时器,串口控制,模数与数模转换部分等;第四章在前面的基础上对扩展的外围硬件应用进行编程,包括译码器、串并转换芯片、存储器、中英文液晶屏、IIC等;第五章是综合设计部分,涉及一些具体的应用型产品的设计。读者对象:《单片机C语言程序设计实训100例:基于8051+Proteus仿真》适用于计算机专业或电子类专业在校学生,特别是职业技术院校学生,实验室投入不足的学校,电子工程技术人员,以及社会上希望学习单片机技术但还没有购置单片机硬件实验设备的人员。
展开
精彩书摘
  第1章  8051单片机C语言程序设计概述
  1.6 变量、存储类型与存储模式
  全局变量定义在函数外面,生命期从所定义的地方开始,其后面的所有函数都可以读/写该全局变量,本书案例在使用定时器时,为得到更大的延时值,程序中定义了全局变量tCount,在定时器中断内对该变量累加,从而得到更大的延时间隔,如果程序中其他地方不需要使用tCount,该变量可以不必放在程序最前面,而是放在定时器中断函数的上一行。
  局部变量定义在函数内部,对于循环及其他的临时计算,应尽可能使用局部变量,作为优化处理的一部分,编译程序会试图将局部变量维持在寄存器中,寄存器访问是最快的内存访问类型,特别是unsigned char’和unsigned int类型的变量。
  对于刚才讨论的tCount变量,在C语言程序设计时,还可以定义在中断函数内部实现计时累加,但要注意在定义前面加上static,因静态变量仅在函数首次调用时被初始化一次,此后不再被初始化。
  8051系列单片机中,程序存储器与数据存储器严格分开,特殊功能寄存器与片内数据存储器统一编址,这与一般微型计算机的存储结构是不同的。
  Keil C5l编译器完全支持805l单片机硬件结构,可完全访问8051硬件系统的所有部分,编译器通过将变量、常量定义成不同的存储类型(data、bdata、idata、pdata、xdata、code),从而将它们定位在不同的存储区中。
展开
目录
第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 10 000s以内的计时程序 78
3.35 定时器控制数码管动态显示 81
3.36 8×8 LED点阵屏显示数字 83
3.37 按键控制8×8 LED点阵屏显示图形 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×8 LED点阵屏仿电梯数字滚动显示 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
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证