单片机实验指导书 MCS-单片机实训指导书.doc
文本预览下载声明
单片机实验指导书 MCS-51单片机实训指导书
导读:就爱阅读网友为您分享以下“MCS-51单片机实训指导书”的资讯,希望对您有所帮助,感谢您对92的支持!
安徽工商职业学院
图2-1 8段LED数码管显示原理和笔画分布
由电路图2-2可以看出,这里需要通过传送指令将P1口拨码开关的状态读入累加器A,利用查表指令转换为LED数码管的显示笔画代码,再传送到P2口驱动数码管。所谓显示代码就是根据该数字的笔画确定LED数码管中8个笔画段a—h中的哪些段点亮,如数字1要求点亮笔画b和c。我们可以根据数字与笔画的对应关系列出各数字的笔画代码真值表如表2-1所示,在每个数字需点亮的笔画处填入1,不需要点亮的位填入0,然后转换为16进制数就是该数字的显示代码。若采用共阳极LED,则由于是0点亮,显示代码也就不同,笔画真值表与表2-1相反。显然,若各笔画连接的口线不同,显示代码也不同。
- 21 -
安徽工商职业学院
图2-2 通过LED数码管显示数字电路图 表2-1 LED笔划显示真值表(共阴)
- 22 -
安徽工商职业学院
有了代码表,还需要通过查表程序将数字转换为显示代码。查表程序一般是将表格中数据顺序放置在程序存储器的某个区域中,形成一数据表。程序中需要查表时,将表格首地址送入数据指针DPTR,即使DPTR指向表格首地址,在A中放入待查表格项的序号,例如要显示2,利用“MOVC A,@A+DPTR”指令,即以(A+DPTR)为地址,将数据表中第2字节的表格项数据5BH取出放入A,从而实现查得2的显示代码5BH,然后送端口P2驱动笔画段显示出数字2。
四、实验步骤
1.在Proteus ISIS中设计硬件电路(参考图2-2)
(1)选择电路元器件并放入原理图编辑区: 单片机:AT89C52。
一位共阴极数码管:7SEG-COM-CAT-GRN。 8位拨码开关:DIPSWC_8。 接地:Ground(Terminal模型中)。 (2)参考图2-2完成原理图。
2.在Keil 中设计程序
(1)创建工程P2-1,选芯片AT89C52,保存在文件夹下,如“D:\\MCU\\CH3\\EX3-1\\A51”文件夹下。
(2)设定工程属性,勾选“生成HEX文件”。
(3)编写源程序A2-1.asm,并加入到工程的源程序组中。 (4)构造目标程序,得到P2-1.hex。
3.仿真运行
在89C51的属性中设置“Program File”为所生成的目标程序P2-1.hex,进行仿真运行,验证程序功能。
4.思考
若采用的是一位共阳极数码管:7SEG-COM-AN-GRN,电路与程序应如何修改?
- 23 -
安徽工商职业学院
实验三 用位操作实现逻辑功能——开关监测报警装置
一、实验要求
设计一个基与单片机89C52的开关监测报警装置,要求如下: 红、绿、黄三个灯分别有P3.0—P3.2控制,三个评委各控制一个开关K1、K2、K3分别接P1.0—P2.0,如电路图3-1所示。对于某位选手:
(1)若三位评委都认可(开关断开,置1)即晋级,亮绿灯。 (2)若三位评委都不认可(开关合上,置0)即淘汰,亮红灯。 (3)若只有1位或2位评委认可即待定,亮黄灯。
即当连接P1.0—P2.0的3个开关均合上时,绿灯亮,表示工作正常;当其中有1或2个开关跳开时,黄灯亮,表示一般报警;当3个开关全跳开时,红灯亮,表示紧急报警。
二、实验目的
(1)进一步练习用ISIS绘制单片机电路图,用Keil开发单片机程序。 (2)学会根据控制的逻辑关系归纳逻辑表达式,并在程序中实现该逻辑表达式。
三、实验步骤
1.在Proteus ISIS中设计硬件电路
(1)选择电路元器件: 单片机:AT89C52。
红、黄、绿等:TRAFFIC LIGHTS。 开关:SW——SPST。
接地:Ground(Terminal模型中)。
- 24 -
安徽工商职业学院
(2)按图3-1所示画出原理图,保存在“D:\\Mcu\\CH3\\EX3-2”文件夹中。
2.写出红、绿、黄三个灯的逻辑表达式
绿灯:Green=K1K2K3;//三个开关全为1,亮绿灯。 红灯:Red=~(K1||K2||K3);//三个开关全为0,亮红灯。 黄灯:Yellow=~(Green||Red);//其与情况亮黄灯。
图3-1开关监测报警控制电路图
3.程序设计与调试
(1)在Keil中创建工程P3-1,保存在文件夹中,选择芯片Atmel89C52。 (2)设定工程属性,选中“生成HEX文件”。
(3)根据逻辑表达式编写源程序A3-1.asm,并加入到工程源程序
显示全部