单片机C语言程序设计实训100例

出版时间:2012-10  出版社:电子工业出版社  作者:彭伟  页数:452  字数:736000  

前言

  不同于通用计算机应用程序设计,单片机C语言程序设计必须针对具体的微控制器及外围电路来进行,为此,很多公司推出了单片机实验箱等多种配套设备,其不菲的价格令人望而却步,这使得众多读者对单片机技术学习、研究与应用的愿望难以实现。  幸运的是,英国Labcenter公司推出的Proteus软件具有单片机系统仿真功能,能够很好地支持多种单片机,系统器件库包含大量元器件,并提供了多种虚拟仪器,使得仅用一台PC在纯软件环境中完成单片机系统设计、调试、运行成为可能,这无疑为读者学习、运用单片机C语言程序设计技术提供了理想平台。  本书基于μVision集成开发环境和Proteus仿真软件搭建组合平台,系统规划、精心设计了100个8051单片机C语言程序设计案例,所有案例均可以在仿真电路中调试和交互运行,具体内容分为以下三部分:  1.语言程序与仿真平台应用基础包括第1、2章,简要介绍开发单片机C语言程序必须熟悉与重点掌握的内容,以及Proteus仿真软件的基本应用技术,为全书案例的学习提供铺垫。  2.内置资源与扩展资源应用设计包括第3、4章,分别为基础设计与硬件应用两类案例。基础设计类案例涵盖8051单片机所有内置资源,包括端口编程、中断、定时器/计数器等;硬件应用类案例涵盖12类扩展资源应用技术,包括编码/解码、串并/并串转换、并行存储及接口扩展、LED显示及驱动、字符/图形液晶、RTC、A/D与D/A、I2C、SPI、1-Wire接口及其他器件。  3.资源整合与功能集成应用设计由第5章提供,全部为综合型案例,如多功能电子日历、计算器、电子秤、密码锁、多点温度监测、大幅面LED、交流电压检测、GPS系统、红外遥控、测距、温室监控、Modbus总线系统等。  本书第1版2009年6月推出后,受到读者厚爱,已连续6次重印。经过几年来对案例的进一步累积、优化、凝练与规范,结合最新版本仿真软件提供的新型器件及功能,并充分考虑读者的反馈意见,应电子工业出版社之约,现全新推出第2版。  第2版在保留第1版体例结构及撰写特色的基础上进行了以下修改:  大幅增加扩展硬件类案例,并进行细致归类,优化器件的分配比重。  调整并增加资源整合与功能集成应用类案例,突出本书的实用价值。  给案例源码添加行号,便于阅读定位;补充大量代码注释,便于分析研究。  进一步规范仿真电路、设计简介、技术资源与程序源码,并删减冗余内容。  本书特点:  全书代码均调试通过,可作为8051单片机的“代码宝典”或“代码手册”使用。  大量“核心源码”及“可移植源码”可直接应用到工程项目中。  案例电路可实时仿真运行,增加了学习过程的趣味性并提振信心。  所规划的案例设计循序渐进,所设定的实训目标难易适中。  这些特点使读者“漫步”于系统电路、程序逻辑、工作时序、接口设计、读写控制、功能实现之中,便可轻松提高8051单片机C语言程序设计水平与系统开发效率。  在本书选题、撰写到出版的全过程中,学院领导、学院教务、科研等部门均给予了重要支持,并提供了项目资助,在此对学院及部门领导的关心与支持表示由衷感谢!  由于作者水平有限,且全书撰写任务极其繁重,书中错漏之处在所难免,在此真诚欢迎读者多提宝贵意见,以期不断改进。  本书所有案例的配套资料压缩包可到电子工业出版社华信教育资源网免费下载,其中包括案例的仿真电路、C语言源程序框架及编译生成的HEX文件。  彭伟2012年10月于武昌

内容概要

  本书基于Keil
μVision程序设计平台和Proteus硬件仿真平台,精心编写了100项8051单片机C语言程序设计案例,并且还分别提出了难易适中的实训目标。全书基础设计类案例涵盖8051单片机最基本的端口编程、定时器/计数器应用、中断程序设计和串口通信程序设计;硬件应用类案例涵盖编码与解码器件、串并与并串转换器件、并行存储器及接口扩展器件、LED显示及驱动器件、字符液晶显示器件、图形液晶显示器件、实时日历时钟器件、模数与数模转换器件、I2C接口器件、SPI接口器件、1-Wire总线器件及其他器件共计12类;综合设计类案例包括大量实用型项目设计,如多功能电子日历牌、计算器、电子秤、密码锁、多点温度监测、大幅面LED点阵屏设计、交流电压检测、K型热电偶及铂电阻温度计、GPS系统、红外遥控系统、测距系统、温室监控系统、Modbus总线系统等。

书籍目录

第1章 8051单片机C语言程序设计概述
1.1 8051单片机引脚
1.2 数据与程序内存
1.3 特殊功能寄存器
1.4 外部中断、定时器/计数器及串口应用
1.5 有符号与无符号数应用、数位分解、位操作
1.6 变量、存储类型与存储模式
1.7 关于C语言运算符的优先级
1.8 字符编码
1.9 数组、字符串与指针
1.10 流程控制
1.11 可重入函数和中断函数
1.12 C语言在单片机系统开发中的优势
第2章 Proteus操作基础
2.1 Proteus操作界面简介
2.2 仿真电路原理图设计
2.3 元件选择
2.4 调试仿真
2.5 Proteus与Vision 3的联合调试
2.6 Proteus在8051单片机应用系统开发的优势
第3章 基础程序设计
3.1 闪烁的LED
3.2 双向来回的流水灯
3.3 花样流水灯
3.4 LED模拟交通灯
3.5 分立式数码管循环显示0~9
3.6 集成式数码管动态扫描显示
3.7 按键调节数码管闪烁增减显示
3.8 数码管显示4×4键盘矩阵按键
3.9 普通开关与拨码开关应用
3.10 继电器及双向可控硅控制照明设备
3.11 INT0中断计数
3.12 INT0及INT1中断计数
3.13 TIMER0控制单只LED闪烁
3.14 TIMER0控制数码管动态管显示
3.15 TIMER0控制8×8LED点阵屏显示数字
3.16 TIMER0控制门铃声音输出
3.17 定时器控制交通指示灯
3.18 TIMER1控制音阶演奏
3.19 TIMER0、TIMER1及TIMER2实现外部信号计数与显示
3.20 TIMER0、TIMER1及INT0控制报警器与旋转灯
3.21 按键控制定时器选播多段音乐
3.22 键控看门狗
3.23 双机串口双向通信
3.24 PC与单片机双向通信
3.25 单片机内置EEPROM读/写测试
第4章 硬件应用
4.1 74HC138译码器与反向缓冲器控制数码管显示
4.2 串入并出芯片74HC595控制数码管显示四位数字
4.3 用74HC164驱动多只数码管显示
4.4 并串转换器74HC165应用
4.5 用74HC148扩展中断
4.6 串口发送数据到2片8×8点阵屏滚动显示
4.7 数码管BCD解码驱动器CD4511与DM7447应用
4.8 62256RAM扩展内存
4.9 用8255实现接口扩展
4.10 可编程接口芯片8155应用
4.11 串行共阴显示驱动器控制4+2+2集成式数码管显示
4.12 14段与16段数码管演示
4.13 16键解码芯片74C922应用
4.14 1602字符液晶工作于8位模式直接驱动显示
4.15 1602液晶显示DS1302实时时钟
4.16 1602液晶屏工作于8位模式由74LS373控制显示
4.17 1602液晶屏工作于4位模式实时显示当前时间
4.18 1602液晶屏显示DS12887实时时钟
4.19 时钟日历芯片PCF8583应用
4.20 2×20串行字符液晶屏显示
4.21 LGM12864液晶屏显示程序
4.22 TG126410液晶屏串行模式显示
4.23 Nokia7110液晶屏菜单控制程序
4.24 T6963C液晶屏图文演示
4.25 ADC0832 A/D转换与LCD显示
4.26 用DAC0832生成锯齿波
4.27 ADC0808 PWM实验
4.28 ADC0809 A/D转换与显示
4.29 用DAC0808实现数字调压
4.30 16位A/D转换芯片LTC1864应用
4.31 I2C接口存储器AT24C04读/写与显示
4.32 I2C存储器设计的中文硬件字库应用
4.33 I2C接口4通道A/D与单通道D/A转换器PCF8591应用
4.34 I2C接口DS1621温度传感器测试
4.35 用兼容I2C接口的MAX6953驱动4片5×7点阵显示器
4.36 用I2C接口控制MAX6955驱动16段数码管显示
4.37 I2C接口数字电位器AD5242应用
4.38 SPI接口存储器AT25F1024读/写与显示
4.39 SPI接口温度传感器TC72应用测试
4.40 温度传感器LM35全量程应用测试
4.41 SHT75温湿度传感器测试
4.42 直流电机正、反转及PWM调速控制
4.43 正反转可控的步进电机
4.44 ULN2803驱动点阵屏仿电梯数字滚动显示
4.45 液晶显示MPX4250压力值
4.46 12864LCD显示24C08保存的开机画面
4.47 用M145026与M145027设计的无线收发系统
4.48 DS18B20温度传感器测试
4.49 1-Wire式可寻址开关DS2405应用测试
4.50 MMC存储卡测试
第5章 综合设计
5.1 带日历时钟及温度显示的电子万年历
5.2 用8051+1601LCD设计的整型计算器
5.3 电子秤仿真设计
5.4 1602液晶屏显示仿手机键盘按键字符
5.5 用24C04与1602液晶屏设计的简易加密电子锁
5.6 1-Wire总线器件ROM搜索与多点温度监测
5.7 高仿真数码管电子钟设计
5.8 用DS1302与12864LCD设计的可调式中文电子日历
5.9 用T6963C液晶屏设计的指针式电子钟
5.10 T6963C液晶屏中文显示温度与时间
5.11 T6963C液晶屏曲线显示ADC0832两路A/D转换结果
5.12 温度控制直流电机转速
5.13 用74LS595与74LS154设计的16×16点阵屏
5.14 用8255与74LS154设计的16×16点阵屏
5.15 红外遥控收发仿真
5.16 GP2D12红外测距传感器应用
5.17 三端可调正稳压器LM317应用测试
5.18 数码管显示的K型热电偶温度计
5.19 交流电压检测与数字显示仿真
5.20 用MCP3421与RTD-PT100设计的铂电阻温度计
5.21 可接收串口信息的带中英文硬字库的80×16 LED点阵屏
5.22 模拟射击训练游戏
5.23 GPS仿真
5.24 温室监控系统仿真
5.25 基于Modbus总线的数据采集与开关控制系统设计仿真

章节摘录

版权页:   插图:   通过对第3章基础案例的学习、研究、设计与调试,熟悉了KeilμVision 3开发环境下单片机内部资源的基本程序设计方法,掌握了使用8051单片机C语言程序设计实现基本系统功能的相关技术,本章在此基础上就单片机外围硬件应用给出50项案例,这些案例所涉及的器件可分为以下12类: (1)编码与解码(译码)器件 例如,通过带优先级的8—3编码器74HC148可实现中断扩展设计,在8位集成式数码管扫描显示电路中,使用3—8译码器74HC138控制位扫描(位码输出)仅需要占用单片机3位引脚,使用7段数码管BCD码解码驱动器CD4511及DM7447输出段码时仅需要占用单片机4位引脚,再比如4×4矩阵键盘电路中使用解码器74C922可大大简化键盘扫描程序设计并减少端口占用。 (2)串并与并串转换器件 串入并出器件对单片机端口引脚占用非常少,例如,在数码管、点阵屏显示驱动电路中大量使用的典型器件74HC595,另外还有串入并出器件74HC164,它与74HC595的主要差别是没有输出锁存器。74HC165为并入串出器件,涉及多按键输入时,通过该器件同样可以减少对单片机端口的占用。 (3)并行存储器及接口扩展器件 单片机内置RAM或ROM不能满足系统设计要求时,可进行内存扩展,本章讲解了并行SRAM扩展器件62256的应用,另外还讲解了可编程并行I/O接口扩展器件8255,静态内存与I/O接口及定时器扩展器件8155的应用。 (4)LED显示及驱动器件 数码管与点阵屏均为LED显示器件,本章用串行共阴显示驱动器MAX7219驱动8位7段集成式数码管显示,对于14/16段数码管,使用了第(2)类器件中的74HC595,其中对于16段数码管还使用了第(9)类器件中的MAX6955,驱动点阵屏显示时,既使用了ULN2803,还使用了第(9)类器件中的MAX6953。 (5)字符液晶显示器 主要讲解以HD44780为控制器的1602等液晶显示器的4位模式、8位模式、接口扩展模式(使用74LS373)程序设计及工作于串行方式的液晶显示器程序设计技术,既涉及液晶显示器内置字符的显示,又涉及自定义字符的点阵编码生成及显示程序设计相关技术。 (6)图形液晶显示器 图形液晶显示器可实现更加复杂的信息显示,包括图形、图像及中英文信息等。讲解的液晶显示器型号包括LGM12864(KS0108)、TG126410(SED1565)、Nokia7110(SED1565)、PG160128A(T6963C),各型号后的括号内列出的是该液晶显示器的控制器型号。

编辑推荐

  《单片机C语言程序设计实训100例:基于8051+Proteus仿真(第2版)》适用于本科、专科院校学生用于学习实践8051单片机C语言程序设计技术的教材或参考书,也可作为工程技术人员或单片机技术爱好者的学习参考书或工具书。

图书封面

评论、评分、阅读与下载


    单片机C语言程序设计实训100例 PDF格式下载


用户评论 (总计51条)

 
 

  •   看过第一版。第一版多少有错误。不知道是电路图设计不合理呢。还是程序上面问题。现在第二版。感觉还可以。内容也比第一版丰富。更倾向于接近实际需要。唯一就是,此书电路图要在PROTEUS7.10下面。KEIL要在3版本下面。否则会报错
  •   学习单片机C语言编程的必备资料1
  •   上学期末买回来的,同学们看到我看这本书问我上哪买的,我就推荐他们也来当当买。里边的例子很经典,几乎没有错误,目前为止还没发现里边有错误的指令。学校的教材用的是汇编语言,通过这本书可以自学到单片机C语言,很不错!很感谢彭伟作者
  •   很实用,是我们老师推荐的,老师说初学单片机这本书很好。
  •   内容很好,适合在单片机入门后的提高
  •   不错的书,正版书,对学单片机的人来说是好书
  •   喜欢这样有大量具体实例的书,很不错。。。
  •   非常好,适合有一定基础的学习者
  •   书不错,物流更好,就是纸质比想象中的差些
  •   未看完这本书
  •   这本书的例子很实用,这已经是第二本了。
  •   这本书刚刚好适合我这样的新手看。
  •   质量很好物流很快
  •   还没有详细的看,快递很准时!
  •   在这我想说下,送货的快递员不给力,明明上午到了,就是没送来,后来我自己一个个打电话问,才说下午送,等了好久没来,还是我自己去问怎么回事,他又说下午送不了,明天早上送过来,后来快下午了才收到,你说这样的送货员要到干嘛啊,我对这次的送货员很不满意,对此我表示很无语。
  •   商品跟描述差不多,送货快!
  •   一般啊,参考书,参照来看,毕竟现在太难找一本完全适合的工具书。
  •   对于初学者来说,值得拥有
  •   很好,正是我所需要的,学习有益!
  •   周五下午提交的订单,第三天周天下午可到学校门口了。非常快…………
  •   内容很有值得研究的地方,值得一读......
  •   送货快,小伙子服务态度好!
  •   喜欢,速度快,正版
  •   第二版建议直接买下有参考价值。
  •   非常好,很新,真靠谱,大赞棒极了
  •   包装扎实,打算认真学习,之后再评。
  •   挺厚。。。。。。。。。。。
  •   知识点挺多的,先看看
  •   书本写的很不错!但是很多器件会不会太老了!
  •   实例挺丰富的,对于学习单片机很实用,只是网络资源如原理图和源代码等不能在书上所说的网址下载,望及时更新。
  •   不满意的是,去华信网下载不了本书免费提供的资料
  •   才收到,可惜这不是被压皱了,里面的内容慢慢看吧
  •   还好,有些字体印刷的时候,估计是墨水太多了,笔画都连在一起了。其他的没问题。挺好的。
  •   书很好,供货速度也快
  •   书还没看完。。。看着还可以
  •   书内容写的很好,但纸太薄质量太差,从反面能看到正面的字,当当网标准是自毁形象,卖的是劣质产品。
  •   44,书包装极差
  •   你真的。。。。。。。值得拥有!
  •   不错,朋友很喜欢。挺好的
  •   内容充实,适合初学者,送货迅速
  •   得经常看 经常练习才行
  •   买来做毕业设计的,书不错,例子多,讲解详细,看了有很大帮助!
  •   使用了一定时间,特别推荐。里面的例子可以不仅仅用于仿真,实际硬件也可以实现。非常喜欢,作为教材参考书都可以。
  •   例子丰富,适用于有点基础的同学使用!
  •   单片机入门要用的例子都有了。了解单片机基础的可以看这本书,讲解还是比较少。网上可以下载到书上的例子仿真图。有Proteus图和hex文件,不过没有源程序!想要偷懒的是不行了。书上的程序写的还算完整,但还是有一部分没有。比如液晶屏的操作,只是给了相关的函数定义,没有函数内容。这本书用来学习思路真的很好,但是不要指望着拿来就用。
  •   听朋友介绍的,说很好,就买了,还不错,正在学习中。
  •   这本书适合学过51单片机硬件结构的同学。本人以前学过单片机,看完这本书后的最大收获是能够基本熟练运用各个模块的,并从案例中学到程学设计的思路。总之,这本书要好好摸索,总结。
  •   书中讲的清楚,值得一看。
  •   买回来一直没看,不过书是正品
  •   单片机C语言程序设计要好好实践下
  •   单片机C语言程序设计实训100例 书评
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7