51单片机最小系统板实验指导书

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1单片机实验板工程训练指导书物理与电子工程系2005年10月2目录实验一LED闪烁灯设计-------------------------------------------------4实验二模拟开关控制指示灯设计---------------------------------------------7实验三多路开关状态指示设计---------------------------------------————10实验四广告灯左、右移设计---------------------------------------14实验五查询法设计广告灯---------------------------------18实验六报警产生器设计---------------------------------------------21实验七I/O并行口直接驱动LED显示设计-----------------------------——25实验八单键识别设计---------------------------------------———29实验九一键多功能按键识别设计---------------------------------33实验十00-99计数器设计--------------------------------————38实验十一六十秒计时器设计------------------------——————————42实验十二可预置可逆4位计数器设计-----------------------------------46实验十三动态数码显示设计---------------------------------------51实验十四4×4矩阵式键盘识别设计--------------------------------55实验十五定时计数器T0作定时应用设计(一)----------------------64实验十六定时计数器T0作定时应用设计(二)——----------------------71实验十七9.9秒跑马表设计------------------------------------------76实验十八“嘀、嘀、……”报警声设计---------------------------------82实验十九“叮咚”门铃设计-------------------------------------------87实验二十智能电子钟设计---------------------------------------------92实验二十一“新年好”音乐设计-----------------------------------------------102实验二十二电子琴设计-------------------------------------------------108实验二十三模拟计算器数字输入及显示设计-------------------------119实验二十四数字电压表设计--------------------——-------------------------126实验二十五DS18B20数字温度计设计---------------------------------131附录A实验板中模拟/数字转换器ADC0804的参数及使用说明------------------------139附录B实验板中DS18B20智能温度控制器的参数及使用----------------------------1413单片机实验板详细说明该单片机实验板设计巧妙,经过了严格的检查,可放心使用。由于考虑到众多的实验要在此单片机实验板上完成,然而每个实验用到的单片机的I/O口不尽相同,所以设计时采用拨动拨码开关和替换跳线帽的位置来完成每个实验内容。在完成各个实验内容时,首先要看清楚实验电路原理图,然后按照实验内容给出的单片机实验板上的硬件连线、拨动拨码开关或替换跳线帽的位置来完成系统设计。检查无误后下载程序。由于每个程序都经过了单片机实验板的验证,证明程序没有问题。所以要是调不出来,肯定是硬件没有连好,再次检查直到完成实验。每做完一个实验后,把拨动拨码开关和跳线帽恢复到初始状态。一、拨码开关和跳线帽的初始化状态介绍如下:单片机实验板上有8联拨动拨码开关4个(JP1、JP2、JP3、JP4),2联拨动拨码开关1个(JP5),跳线帽13个。在初始化状态下,拨动拨码开关都处于紧靠数字的位置,此位置下的拨动拨码开关为不用状态。8排针接插件J3上的8个跳线帽要全部连接在标号为P0位置上。单排针接插件J4上的跳线帽要连接在OE和GND的位置上。单排针接插件J5上的跳线帽连接在OE和GND的位置上。单排针接插件J6上的跳线帽要连接在OE和VCC的位置。单排针接插件J7上的跳线帽要连接在CS和GND的位置。双排针接插件J8上的跳线帽应该和J8上排插针相连。4个8联拨动拨码开关(JP1、JP2、JP3、JP4)应该全部所至下方。二、实验中具体使用介绍如下:(1)当用到发光二极管时,要把8联拨动拨码开关JP4拨到ON状态。(2)当用到喇叭输出时,把2联拨动拨码开关JP5的1号拨动开关拨上去;当用DS18B20做测温时,把2联拨动拨码开关JP5的2号拨动开关拨上去。(3)当用到矩阵键盘输入时,把8联拨动拨码开关JP3的拨动开关全部拨上去。(4)当用到拨动开关SW1—SW4时,把8联拨动拨码开关JP2对应的拨动开关拨上去。(5)当用到按键开关S18—S21时,把8联拨动拨码开关JP2对应的拨动开关拨上去。(6)当用8个动态数码管显示时,首先应该把单排针接插件J4的OE与VCC用跳线帽相连。同时8联拨动拨码开关JP1对应的拨动开关拨上去。8联拨动拨码开关JP1的S1—S8分别对应三极管Q2—Q9。(7)当用8个动态数码管输入a—h数码时,如果用到P0口,不用移动跳线帽;如果用到P1口,把8个跳线帽移到下面的标有P1的位置。(8)当用P0口做数码管静态显示时,把单排针接插件J5的OE与VCC用跳线帽相连。(9)当用P2口做数码管静态显示时,把单排针接插件J6的OE与GND用跳线帽相连。总之,在用单片机编写简单程序时,汇编语言编写起来比较简单,但复杂的程序还是用C51编写起来比较简单。所以C51编程是必学的。这里基本上所有的实验程序都采用汇编和C51两种编程方法。有的实验还给出了两套设计方案,便于比较学习。4实验一LED闪烁灯设计一、实验目的1、初步了解单片机I/O口的简单控制。2、掌握单片机外围常用电路的固定接法。二、设计原理利用单片机控制一个发光二极管,使此发光二极管间隔0.2秒亮、灭一次。三、参考电路图1.1LED闪烁灯外部电路原理图四、电路硬件说明如图1.1所示:在单片机的P1.0端口上通过8联拨动拨码开关JP4的相应拨码开关连接一个发光二极管D1。五、程序设计内容(1)延时程序的设计方法:单片机指令的执行时间是很短的,它的数量级为微秒级。在本程序设计中,要求LED闪烁灯的闪烁时间间隔为0.2秒。相对于微秒来说,相差太大,所以在执行某一指令时,需要插入延时程序,来达到的要求。然而这样的延时程序是如何设计呢?下面具体介绍其原理:如图1.1所示,单片机所用的石英晶体为12MHz。因此,1个机器周期为1微秒。延时10ms子程序机器周期微秒MOVR6,#201个1D1:MOVR7,#2481个1+1×20DJNZR7,$2个2×248+2×20×2485DJNZR6,D12个2×20因此,上面的延时程序时间为10.478ms。由以上可知,当R6=10、R7=248时,延时时间为5ms;R6=20、R7=248时,延时时间为10ms。通常所用延时时间以此为基本的计时单位。比如本实验要求为0.2秒=200ms,所以用10ms×R5=200ms,得到R5=20。延时子程序如下:DELAY:MOVR5,#201D1:MOVR6,#201+20D2:MOVR7,#2481+20+20(1+20)DJNZR7,$2×248+20×2×248+20(2×248+20×2×248)DJNZR6,D22×20+2×20×20DJNZR5,D12×20RET2上面的延时程序为0.220081s。(2)单片机的P1.0端口的输出控制方法:如图1.1所示,根据发光二极管的单向导电性,当单片机的P1.0端口输出高电平,即P1.0=1时,发光二极管D1熄灭;当单片机的P1.0端口输出低电平,即P1.0=0时,发光二极管D1亮。可以使用SETBP1.0指令使单片机的P1.0端口输出高电平,使用CLRP1.0指令使单片机的P1.0端口输出低电平。六、程序流程图(如图1.2所示)图1.2LED闪烁灯设计流程图七、汇编源程序ORG0000H;系统复位LJMPSTART;转入主程序ORG0003H;外部中断0RETI;中断返回ORG000BH;定时器0溢出中断RETI6ORG0013H;外部中断1RETIORG001BH;定时器1溢出中断RETIORG0023H;外部中断2RETIORG0100HSTART:CLRP1.0;和P1.0口接的二极管亮LCALLDELAY200MS;延时0.2秒SETBP1.0;和P1.0口接的二极管灭LCALLDELAY200MS;延时0.2秒LJMPSTART;循环DELAY200MS:MOVR5,#20;延时子程序D1:MOVR6,#20D2:MOVR7,#248DJNZR7,$DJNZR6,D2DJNZR5,D1RETEND八、C语言源程序#includeAT89X51.HsbitL1=P1^0;voiddelay02s(void)//延时子程序//{unsignedchari,j,k;for(i=20;i0;i--)for(j=20;j0;j--)for(k=248;k0;k--);}voidmain(void)//主程序//{while(1)//进入循环//{L1=0;//指示灯亮//delay02s();//延时0.2秒//L1=1;//指示灯灭//delay02s();//延时0.2秒//}}九、注意事项(1)用Keil软件时,注意中文说明及注释。(2)用汇编语言编写程序时不区分大小写,但用C语言编写程序时注意区分大小写。(3)汇编语言和C语言定义口的方式不同,如汇编语言为P1.0,P2.0,P3.0,而C语言为P1_0,P2_0,P3_0。7实验二模拟开关控制指示灯设计一、实验目的1、掌握单片机外围常用电路的固定接法。2、掌握单片机利用模拟开关控制指示灯的简单设计。二、设计原理如图2.1所示,用发光二极管监视模拟开关的状态。如果模拟开关合上,发光二极管点亮;如果模拟开关打开,发光二极管熄灭。三、参考电路图2.1模拟开关控制指示灯原理图四、电路硬件说明如图2.1所示,模拟开关SW1通过8联拨动拨码开关连接在单片机的P3.0端口上,用发光二极管D1(通过8联拨动拨码开关接在单片机的P1.0端口上)显示模拟开关SW1的状态。当模拟开关SW1断开时,单片机的P3.0端口为高电平;当模拟开关闭合时,单片机的P3.0端口为低电平。五、程序设计内容(1)开关状态的检测过程对于单片机来说,开关状态的检测是从单片机的P3.0端口输入信号,然而输入的信号只有高、低电平两种。当拨动开关SW1拨上去(输入高电平)时,拨动开关SW1断开;当拨动开关SW1拨下来(输入低电平)时,拨动开关SW1闭合。单片机可以采用JBBIT或者JNBBIT指令来完成对拨动开关状态的检测。(2)输出控制8如图2.1所示,当单片机的P1.0端口输出为高电平,即P1.0=1时,根据发光二极管的单向导电性可知,这时发光二极管D1熄灭;当单片机的P1.0端口输出为低电平,即P1.0=0时,发光二极管D1亮。可以使用SETBP1.0指令使单片机的P1.0端口输出高电平,使用CLRP1.0指令使单片机P1.0端口输出低电平。六、程序流程图(如图2.2所示)

1 / 145
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功