书籍详情
51单片机C语言开发教程
作者:刘理云 编著
出版社:化学工业出版社
出版时间:2017-09-01
ISBN:9787122301345
定价:¥68.00
购买这本书可以去
内容简介
本书在引导读者认识C51单片机基本结构基础上,以C语言为设计语言,通过60个案例、详细的源代码介绍了C51单片机程序开发的各项细节,包括单片机应用系统仿真开发、接口应用技术、中断系统与定时/计数器设计、串行接口技术等。程序代码经典,可移植性强:大部分代码写成傻瓜式,对C51单片机可直接套用,也容易移植到AVR、PIC等单片机中去,节省了开发时间。全书案例丰富,程序代码可靠,并可以在相应的平台下载,帮助单片机开发人员、电子爱好者以及从事智能电子产品开发的人员快速入门,并迅速提高开发能力。
作者简介
暂缺《51单片机C语言开发教程》作者简介
目录
第1章C51单片机基本结构与小应用系统1
1.151单片机的基本结构1
1.1.151单片机内部的逻辑结构1
1.1.2CPU2
1.1.3存储器2
1.1.4可编程并行I/O端口9
1.1.5时钟电路与复位电路10
1.251单片机引脚功能及小应用系统13
1.2.151单片机引脚功能13
1.2.251单片机小应用系统14
案例1:单片机小系统的制作15
第2章C51程序设计16
2.1C语言的特点16
2.2C语言程序的格式和特点19
2.3数据类型与存储区域的使用21
2.3.1C语言的数据类型21
2.3.2C51新增数据类型与存储区域的使用23
2.4运算符与表达式28
2.4.1算术运算符与算术表达式29
2.4.2赋值运算符和赋值表达式30
2.4.3关系运算符和关系表达式33
2.4.4逻辑运算符和逻辑表达式33
2.5指针与地址访问35
2.5.1指针35
2.5.2地址的访问38
2.6控制语句与程序设计39
2.6.1C语言语句概述39
2.6.2赋值语句40
2.6.3if语句40
2.6.4switch语句43
2.6.5goto语句以及用goto语句构成循环45
2.6.6while语句与do-while语句46
2.6.7for语句48
2.6.8break语句和continue语句49
2.7位运算49
2.8数组53
2.9函数55
2.9.1函数定义的一般形式57
2.9.2函数参数和函数的值58
2.9.3函数的调用61
2.9.4局部变量和全局变量67
2.9.5内部函数和外部函数71
案例1:用单片机控制一个灯闪烁72
案例2:单片机控制发光二极管流水灯的设计73
案例3:通过对P1口地址的操作流水点亮8位LED73
案例4:用P0口、P1口分别显示加法和减法运算结果75
案例5:用P0、P1口显示乘法运算结果76
案例6:用P1、P0口显示除法运算结果76
案例7:用自增运算控制P1口8位LED流水花样77
案例8:用P1口显示逻辑“与”运算结果77
案例9:用P1口显示按位“异或”运算结果78
案例10:用P1显示左移运算结果78
案例11:用右移(或左移)运算流水点亮P1口8位LED78
案例12:用if语句控制P1口8位LED的流水方向80
案例13:用swtich语句的控制P1口8位LED的点亮状态81
案例14:用for语句控制蜂鸣器鸣笛次数83
案例15:用while语句控制LED84
案例16:用do-while语句控制P1口8位LED流水点亮85
案例17:用数组控制P1口8位LED流水点亮86
案例18:用P0、P1口显示整型函数返回值87
案例19:用有参函数控制P1口8位LED流水速度88
案例20:基于延时程序实现的音乐播放器89
第3章单片机应用系统仿真开发工具的使用91
3.1KeilC51的使用方法与程序烧写91
3.1.1Keil软件的安装91
3.1.2工程的创建92
3.1.3编写程序95
3.1.4程序烧写100
3.1.5工程软件仿真102
3.1.6存储空间资源的查看与修改104
3.1.7变量的查看与修改106
3.1.8外围设备的操作106
3.2ProteusISIS的使用106
3.2.1ProteusISIS的编辑界面107
3.2.2设计电路原理图109
3.2.3电路测试和材料清单115
3.2.4ISIS的单片机应用系统仿真基本方法115
案例1:Keil软件的使用方法及程序烧写117
案例2:简易十字路口交通信号灯控制(用Proteus软件仿真)118
第4章C51单片机简单接口应用技术121
4.1开关量接口121
4.1.1开关量输入接口122
4.1.2键盘接口124
4.1.3开关量输出接口128
4.2显示接口129
4.2.1LED显示接口130
4.2.2LED数码管点阵显示器133
4.2.3LCD液晶显示接口137
案例1:无软件消抖的独立式按键输入显示148
案例2:软件消抖的独立式按键输入显示149
案例3:开关控制LED149
案例4:继电器控制照明设备150
案例5:按键状态显示151
案例6:按键控制彩灯的设计152
案例7:按键控制数码管加1减1显示155
案例8:单只数码管显示0~9157
案例9:8只数码管动态显示数字158
案例10:步进电机驱动控制设计160
案例11:数码管显示4×4矩阵键盘按键号161
案例12:点阵显示屏的应用设计164
案例13:单片机控制LCD(1602)显示电路及程序设计186
案例14:单片机控制LCD(12864)显示电路及程序设计189
案例15:电子数字密码锁204
第5章C51单片机中断系统与定时/计数器214
5.1中断系统214
5.1.1中断概述214
5.1.2中断系统的结构及其工作原理215
5.1.3中断处理过程218
5.1.4中断服务函数219
5.1.5中断系统的应用221
5.2定时/计数器223
5.2.1定时/计数器的结构及其工作原理224
5.2.2定时/计数器的控制224
5.2.3定时/计数器的工作方式及其应用226
5.2.4借用定时器溢出中断扩展外部中断源231
案例1:中断控制LED显示变化232
案例2:中断次数统计233
案例3:简易抢答器的设计235
案例4:定时器控制单只LED闪烁240
案例5:基于定时/计数器控制的流水灯242
案例6:用定时器中断实现1000000s内计时243
案例7:倒计时秒表设计245
案例8:红外检测模拟啤酒生产计数器设计248
案例9:电烤炉智能温度控制电路及程序设计252
案例10:按键控制定时器选播多段音乐253
案例11:反应时间测试仪256
案例12:脉宽测量仪的设计262
案例13:频率计的设计266
案例14:看门狗269
第6章C51单片机应用系统扩展274
6.1C51单片机的三总线结构274
6.2存储器的扩展275
6.2.1程序存储器的扩展275
6.2.2数据存储器的扩展275
6.2.3数据存储器扩展举例277
6.2.4I/O接口电路280
6.3模拟量输入输出接口技术281
6.3.1D/A转换器与单片机的接口设计282
6.3.2A/D转换器与单片机的接口设计285
案例1:ADC0809数模转换与显示287
案例2:基于ADC0832的数字电压表289
第7章串行接口293
7.1串行口通信概念293
7.251单片机串行接口的结构与控制295
7.3串行接口的工作方式296
7.4串行接口的初始化298
7.5串行接口的异步通信应用299
7.6串行口扩展305
案例1:串行数据转换为并行数据307
案例2:并行数据转换为串行数据309
案例3:甲机通过串口控制乙机LED310
案例4:单片机间双向通信313
案例5:单片机向主机发送字符串317
案例6:单片机与PC机通信319
第8章综合案例323
8.1单片机应用系统的抗干扰设计323
8.1.1硬件抗干扰设计323
8.1.2软件抗干扰设计325
8.2DS18B20数字温度计的设计326
8.2.1功能要求326
8.2.2设计方案选择326
8.2.3DS18B20的性能特点和内部结构327
8.2.4DS18B20的测温原理329
8.2.5DS18B20的各条ROM命令和接口程序设计330
8.2.6系统硬件电路的设计331
8.2.7系统软件的设计333
8.2.8调试及性能分析334
8.2.9源程序清单335
附录ASCII码表339
参考文献341
1.151单片机的基本结构1
1.1.151单片机内部的逻辑结构1
1.1.2CPU2
1.1.3存储器2
1.1.4可编程并行I/O端口9
1.1.5时钟电路与复位电路10
1.251单片机引脚功能及小应用系统13
1.2.151单片机引脚功能13
1.2.251单片机小应用系统14
案例1:单片机小系统的制作15
第2章C51程序设计16
2.1C语言的特点16
2.2C语言程序的格式和特点19
2.3数据类型与存储区域的使用21
2.3.1C语言的数据类型21
2.3.2C51新增数据类型与存储区域的使用23
2.4运算符与表达式28
2.4.1算术运算符与算术表达式29
2.4.2赋值运算符和赋值表达式30
2.4.3关系运算符和关系表达式33
2.4.4逻辑运算符和逻辑表达式33
2.5指针与地址访问35
2.5.1指针35
2.5.2地址的访问38
2.6控制语句与程序设计39
2.6.1C语言语句概述39
2.6.2赋值语句40
2.6.3if语句40
2.6.4switch语句43
2.6.5goto语句以及用goto语句构成循环45
2.6.6while语句与do-while语句46
2.6.7for语句48
2.6.8break语句和continue语句49
2.7位运算49
2.8数组53
2.9函数55
2.9.1函数定义的一般形式57
2.9.2函数参数和函数的值58
2.9.3函数的调用61
2.9.4局部变量和全局变量67
2.9.5内部函数和外部函数71
案例1:用单片机控制一个灯闪烁72
案例2:单片机控制发光二极管流水灯的设计73
案例3:通过对P1口地址的操作流水点亮8位LED73
案例4:用P0口、P1口分别显示加法和减法运算结果75
案例5:用P0、P1口显示乘法运算结果76
案例6:用P1、P0口显示除法运算结果76
案例7:用自增运算控制P1口8位LED流水花样77
案例8:用P1口显示逻辑“与”运算结果77
案例9:用P1口显示按位“异或”运算结果78
案例10:用P1显示左移运算结果78
案例11:用右移(或左移)运算流水点亮P1口8位LED78
案例12:用if语句控制P1口8位LED的流水方向80
案例13:用swtich语句的控制P1口8位LED的点亮状态81
案例14:用for语句控制蜂鸣器鸣笛次数83
案例15:用while语句控制LED84
案例16:用do-while语句控制P1口8位LED流水点亮85
案例17:用数组控制P1口8位LED流水点亮86
案例18:用P0、P1口显示整型函数返回值87
案例19:用有参函数控制P1口8位LED流水速度88
案例20:基于延时程序实现的音乐播放器89
第3章单片机应用系统仿真开发工具的使用91
3.1KeilC51的使用方法与程序烧写91
3.1.1Keil软件的安装91
3.1.2工程的创建92
3.1.3编写程序95
3.1.4程序烧写100
3.1.5工程软件仿真102
3.1.6存储空间资源的查看与修改104
3.1.7变量的查看与修改106
3.1.8外围设备的操作106
3.2ProteusISIS的使用106
3.2.1ProteusISIS的编辑界面107
3.2.2设计电路原理图109
3.2.3电路测试和材料清单115
3.2.4ISIS的单片机应用系统仿真基本方法115
案例1:Keil软件的使用方法及程序烧写117
案例2:简易十字路口交通信号灯控制(用Proteus软件仿真)118
第4章C51单片机简单接口应用技术121
4.1开关量接口121
4.1.1开关量输入接口122
4.1.2键盘接口124
4.1.3开关量输出接口128
4.2显示接口129
4.2.1LED显示接口130
4.2.2LED数码管点阵显示器133
4.2.3LCD液晶显示接口137
案例1:无软件消抖的独立式按键输入显示148
案例2:软件消抖的独立式按键输入显示149
案例3:开关控制LED149
案例4:继电器控制照明设备150
案例5:按键状态显示151
案例6:按键控制彩灯的设计152
案例7:按键控制数码管加1减1显示155
案例8:单只数码管显示0~9157
案例9:8只数码管动态显示数字158
案例10:步进电机驱动控制设计160
案例11:数码管显示4×4矩阵键盘按键号161
案例12:点阵显示屏的应用设计164
案例13:单片机控制LCD(1602)显示电路及程序设计186
案例14:单片机控制LCD(12864)显示电路及程序设计189
案例15:电子数字密码锁204
第5章C51单片机中断系统与定时/计数器214
5.1中断系统214
5.1.1中断概述214
5.1.2中断系统的结构及其工作原理215
5.1.3中断处理过程218
5.1.4中断服务函数219
5.1.5中断系统的应用221
5.2定时/计数器223
5.2.1定时/计数器的结构及其工作原理224
5.2.2定时/计数器的控制224
5.2.3定时/计数器的工作方式及其应用226
5.2.4借用定时器溢出中断扩展外部中断源231
案例1:中断控制LED显示变化232
案例2:中断次数统计233
案例3:简易抢答器的设计235
案例4:定时器控制单只LED闪烁240
案例5:基于定时/计数器控制的流水灯242
案例6:用定时器中断实现1000000s内计时243
案例7:倒计时秒表设计245
案例8:红外检测模拟啤酒生产计数器设计248
案例9:电烤炉智能温度控制电路及程序设计252
案例10:按键控制定时器选播多段音乐253
案例11:反应时间测试仪256
案例12:脉宽测量仪的设计262
案例13:频率计的设计266
案例14:看门狗269
第6章C51单片机应用系统扩展274
6.1C51单片机的三总线结构274
6.2存储器的扩展275
6.2.1程序存储器的扩展275
6.2.2数据存储器的扩展275
6.2.3数据存储器扩展举例277
6.2.4I/O接口电路280
6.3模拟量输入输出接口技术281
6.3.1D/A转换器与单片机的接口设计282
6.3.2A/D转换器与单片机的接口设计285
案例1:ADC0809数模转换与显示287
案例2:基于ADC0832的数字电压表289
第7章串行接口293
7.1串行口通信概念293
7.251单片机串行接口的结构与控制295
7.3串行接口的工作方式296
7.4串行接口的初始化298
7.5串行接口的异步通信应用299
7.6串行口扩展305
案例1:串行数据转换为并行数据307
案例2:并行数据转换为串行数据309
案例3:甲机通过串口控制乙机LED310
案例4:单片机间双向通信313
案例5:单片机向主机发送字符串317
案例6:单片机与PC机通信319
第8章综合案例323
8.1单片机应用系统的抗干扰设计323
8.1.1硬件抗干扰设计323
8.1.2软件抗干扰设计325
8.2DS18B20数字温度计的设计326
8.2.1功能要求326
8.2.2设计方案选择326
8.2.3DS18B20的性能特点和内部结构327
8.2.4DS18B20的测温原理329
8.2.5DS18B20的各条ROM命令和接口程序设计330
8.2.6系统硬件电路的设计331
8.2.7系统软件的设计333
8.2.8调试及性能分析334
8.2.9源程序清单335
附录ASCII码表339
参考文献341
猜您喜欢