-1-AT89S51单片机实验及实践教程孙安青编著-2-目录第一章AT89S51单片机实验及实践系统板简介┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅1第二章KeilC软件使用┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅14第三章AT89S51单片机下载器软件使用┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅25第四章实验及实践课题┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅281.闪烁灯┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅282.模拟开关灯┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅313.多路开关状态指示┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅334.广告灯的左移右移┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅375.广告灯(利用取表方式)┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅406.报警产生器┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅437.I/O并行口直接驱动LED显示┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅468.按键识别方法之一┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅499.一键多功能按键识别技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅5310.00-99计数器┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅5711.00-59秒计时器(利用软件延时)┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅6012.可预置可逆4位计数器┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅6313.动态数码显示技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅6714.4×4矩阵式键盘识别技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅7015.定时计数器T0作定时应用技术(一)┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅7916.定时计数器T0作定时应用技术(二)┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅8417.99秒马表设计┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅8918.“嘀、嘀、……”报警声┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅9519.“叮咚”门铃┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅9920.数字钟(★)┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅10521.拉幕式数码显示技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅11422.电子琴┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅12123.模拟计算器数字输入及显示┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅13424.8×8LED点阵显示技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅14125.点阵LED“0-9”数字显示技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅14626.点阵式LED简单图形显示技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅15327.ADC0809A/D转换器基本应用技术┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅15728.数字电压表┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅16329.两点间温度控制┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅16730.四位数数字温度计┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅17231.6位数显频率计数器┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅17732.电子密码锁设计┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅18033.4×4键盘及8位数码管显示构成的电子密码锁┅┅┅┅┅┅┅┅┅┅┅18634.带有存储器功能的数字温度计-DS1624技术应用┅┅┅┅┅┅┅┅┅┅19935.DS18B20数字温度计使用┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅211-3-概述:单片机以其高可靠性、高性价比、低电压、低功耗等一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。并且已经深入到工业生产的各个环节以及人民生活的各层次中,如车间流水线控制、自动化系统等、智能型家用电器(冰箱、空调、彩电)等,无不含有CPU控制器,即单片机。为适应目前人才紧缺的状态、着眼于培养单片机人才、单片机工程师。我们推出了针对培养学习者应用能力的AT89-ISP在线下载实验仪。以配合各大、中专院校、高职、技校等纷纷增加及扩大的单片机教学的需要。特点:1、在系统可编程特性:首开单片机学习开发系统的先河,可方便地在系统实现程序下载,实时修改程序的不足之处,并立即从目标系统中反映出修改的结果,大大缩短单片机学习开发的周期,提高效率2、代码全速仿真:弥补传统学习系统不能全速仿真的缺陷,使系统运行的结果完全反映代码的执行情况,更切实地吻合教学仪器的特点。其次,在软件开发前的仿真调试后,完全可烧写入目标芯片,并能获得完全一致的代码执行结果。是集学习、开发于一身的优良的目标系统;3、系统资源丰富:★内置RAM32KB模块★内置8位动态数码显示模块★内置8X8点阵显示模块★4位静态数码显示模块★4位级联的74LS164串并转换模块★内置8通道8位A/D转换★内置8位D/A转换★内置2路SPI和I2C总线接口★内置4路1-Wire总线接口★内置4X4矩阵式键盘★内置4路独立式键盘★内置4路拨动开关★内置8位LED发光二极管★内置3路0-5V之间可调的电压★内置音频放大模块★2路继电器控制模块★2路4分频模块★内置RS232通信模块4、资源的可重复利用性:目标系统上的所有资源均能重复利用并能通过软件调配或通过扩展槽增加其它的功能提高系统的实用性5、软硬结合,操作简单方便:我们不仅提供丰富的硬件资源,也提供良好的上位机控制软件,只要通过软件的功能操作就能实现:源代码的调试编译,查找与修改错误之处,在线代码下载等功能。使单片机的学习与开发一体化,集成化,更进一步体现系统学习的优越性。新型芯片I2C、SPI及1-Wire串行接口实验▲I2C串行EEPROM24C02-4-▲SPI串行EEPROM93C46A▲SPI串行实时时钟DS1302▲I2C串行EEPROM+温度传感器DS1624▲SPI串行EEPROM+看门狗+复位X25045▲1-Wire串行温度传感器DS18B20▲1-Wire串行EEPROMDS2450基本的接口实验▲灯控制实验▲循环灯控制实验▲动态数码显示控制实验▲静态数码显示控制实验▲继电器驱动控制实验▲8X8点阵实验▲RS232串行通信实验▲74LS164串/并转换实验▲4X4矩阵式键盘按键识别实验▲独立式按键识别技术实验▲RAM数据存储器扩展实验▲音乐控制实验▲A/D转换实验▲D/A转换实验▲定时计数器基本应用实验▲中断技术基本应用实践课题实验▲99秒表实验(定时器及数码显示的应用)▲万年历时间实验(定时器、数码显示及键盘的应用)▲广告字幕机移动实验(8X8点阵应用)▲空调温度控制实验(温度传感器应用)▲温度测量实验(温度传感器及数码显示应用)▲电子琴实验(4X4键盘、音乐控制应用)▲电子密码锁(4X4键盘、数码显示、及音乐控制)▲单片机与PC机的通信实验(通信设计应用)▲微波炉控制设计实验▲洗衣机控制设计实验适用对象:1、学校实验室教学2、个人学习实验及开发3、学生科研项目开发-5-第一章AT89S51单片机实验及实践系统板简介AT89S51单片机实验及实践系统板(以后简介系统板)集成多个硬件资源模块,每个模块各自可以成为独立的单元,也可以相互组合,因此,可以为不同阶层的单片机爱好者及单片机开发者提供不同的开发环境。每个硬件模块介绍如下:1.继电器控制模块系统板上提供了2路继电器控制模块,分布在系统板的昀左上端区域中,输入信号由Realyin1和Realyin2端口输入分别控制两路继电器,继电器控制的信号分别由昀上端的两个插针输入和输出。分别称为“com1open1short1”,“com2open2short2”,由于这个两个继电器是单刀单掷控制,当继电器不吸合时,“com1”和“short1”相通,“com2”和“short2”相通;当继电器吸合时,“com1”和“open1”相通,“com2”和“open2”相通。其电路原理图1.1所示:图1.12.参考电压源模块在系统板上写有“参考电压源”区域中,是由TL431来完成参考电压的调节,调节范围在0-2.50V之间;主要为是系统板上需要参考电压芯片或是为外部设备提供参考电压,由VarVrefOut端口输出。其电路原理图如图1.2所示:图1.23.三路可调电压模块此模块主要是用于提供0-5V之间的可变的模拟电压值,即可以作为参考电压源也可以作为模拟电压信号。这三路是相互独立的。分别对应着由VR1,VR2,VR3端口输出。具体的电路原理图如图1.3所示:图1.3-6-4.电源模块电源模块为系统板上其它模块提供+5V电源,电源输入有两种方式,一种为交直流电源从电源插座输入,输入的电压要求,直流输入应大于7.5V,交流输入应大于5V,通过7805三端稳压器得到5V的直流电源供给系统其它模块工作,另一种为从USB接口获取+5V电源,只要用相应配套的USB线从电脑主机获取+5V直流电源,在电源模块中加有保护电路,即电路中有短路,不会对7805三端稳压器及电脑主机电源有损害!其电路原理图如图1.4所示:图1.45.程序下载模块该模块完成源程序代码下载到AT89S51或者是AT89S52芯片中,它需要和微机上的ISP下载器软件配合使用来完成这样的功能。具体的电路原理图如图1.5所示:图1.5-7-6.232电平转换模块232电平转换采用MAX232芯片把TTL电平转换成RS-232电平格式,可以用于单片机与微机通信,以及单片机与单片机之间的通信,在该系统板上提供了两个DB9的接口,其中一个用ISP下载器模块的程序下载接口,称为“ISPInterface”,另一个接口为单片机与其它具有RS232接口的通信端口,称为“CommonPort”。具体的电路原理图如图1.6所示:图1.67.频率产生器模块该模块采用555芯片产生一些连续频率的方波信号,由“WAVEGND”端口输出,其稳定可调的频率范围在5KHz-100KHz之间变化。电路原理图如图1.7所示:图1.78.音频放大模块该音频放大模块采用LM386芯片作为音频的功率放大,音频信号由“SPKIN”端口输入,信号的输出由“SPKOUT”端口输出,只要在“SPKOUT”接一个喇叭即可。具体的电路原理图如图1.8所示:-8-图1.89.模数转换模块系统板上的模数转换模块采用ADC0809芯片,组成8路8位的A/D转换,8路模拟电压的输入由IN0-IN7的端口输入,控制ADC0809芯片工作的控制信号由“CLKOEEOCSTA2A1A0”端口输入,转换的数据从D0-D7的端口输出。具体的电路原理图如图1.9所示:图1.910.动态数码显示模块该系统中采用8位的动态数码显示,控制数码显示的数据由两部分组成,一部分为笔段亮灭控制的信号输入由“ABCDEFGH”端口输入,而控制位显示的控制信号由“S1S2S3S4S5S6S7S8”端口输入,同时该动态数码显示采用共阴数码管;具体的电路原理图如图1.10所示:-9-图1.1011.四路静态数码显示模块在该模块中,每一路端口对应着一个具体的数码管,具体的电路原理图如图1.11所示:图1.1112.8X8点阵模块该系统板上提供了8X8点阵模块,用于理解单片机是如何控制点阵数码管的工作过程,它有两个输入控制端口,对于点阵数码管有行和列之分,这两个端口分别控制它们的行和列,“DR1-DR8”为8X8点阵模块的行信号控制端口,“DC1-DC8”为8X8点阵模块的列信号控制端口。具体的电路原理图如图1.12所示:-10-图1.1213.八路发光二极管指示模块该模块采用8个发光二极管作为指示信号作用,即可以用排线来控制,也可以单个地控制每个发光二极管的亮灭,当控制信号为低电平时,发光二极管亮,为高电平时,发光二极熄灭;控制电平的输入由“L1-L8”输入。电路原理图如图1.13图1.1314.三八译码模块在系统板上提供了三八译码模块,控制译码器译码