微机接口实验报告.doc

微机接口实验报告.doc

ID:53117843

大小:147.49 KB

页数:11页

时间:2020-04-01

微机接口实验报告.doc_第1页
微机接口实验报告.doc_第2页
微机接口实验报告.doc_第3页
微机接口实验报告.doc_第4页
微机接口实验报告.doc_第5页
资源描述:

《微机接口实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、微机接口实验报告实验一:I/O地址译码一、实验目的掌握I/O地址译码电路的工作原理。二、实验原理和内容实验电路如图(1)所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上I/O地址输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。例如:执行下面两条指令Y4输出一个负脉冲,执行下面两条指令MOVDX,2A0HOUTDX,AL(或INAL,

2、DX)Y5输出一个负脉冲。MOVDX,2A8HOUTDX,AL(或INAL,DX)利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。三、实验程序L1:MOVDX,2A0H//选通74LS138的11口OUTDX,AL//使端口A输出,给D触发器一个时钟信号LOOP$//延时LOOP$//延时MOVDX,2A8H//选用74LS138的10口OUTDX,AL//使D触发器清零LOOP$//延时LOOP$//延时MOVAH,11//十一号功能调用INT21H//如果有键按下INCAL//AL加一,退出循环JNZL1//如果没键

3、按下,则继续循环四、总结第一次实验比较简单、主要是学会了通过程序控制芯片及其端口的选通,其方法是根据芯片外围搭建的电路使DX进行写或读的操作、例如本实验里,要想选通74LS138的11口操作8255的端口A,则需要使A9A8A7A6A5A4A3A2A1A0=1010100000=2A0H,同理操作10口时,则使DX=2A8H,再加上延时DELAY功能,即可使LED灯循环亮灭。但是如果不给芯片断电,则LED灯会一直循环,不能进进行人为的控制,所以又在后面加上了11号功能调用,只要当AL=0,循环结束。实验二:可编程并行接口一、实验目的掌握8255方式0的工

4、作原理及使用方法。二、实验内容实验电路如图,8255C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7。编程从8255C口输入数据,再从A口输出。三、编程提示1、8255控制寄存器端口地址28BHA口的地址288HC口的地址28AH2、参考流程图四、实验程序MOVDX,28BH//写端口CMOVAL,10001001BOUTDX,AL//8255初始化L1:MOVDX,28AHINAL,DX//读取C口数据MOVDX,288H//写端口AOUTDX,AL//从A口输出MOVAH,11//十一号功能调用INT21HINCALJNZL1MOVAH,

5、4CHINT21H五、实验总结这个实验可以看作是第一个实验的加强,同样也考验的是对端口的读写操作,因为有了第一次实验的经验、所以这次实验特别顺利,没有出现什么问题。实验三:七段数码管静态显示一、实验目的掌握数码管显示数字的原理二、实验内容静态显示:按图1连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。图1图2三、编程提示1、实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数

6、码管亮,位码加反相驱动器,位码输入端高电平选中。2、段数码管的字型代码表如下表:3、参考流程图(见图3)四、实验程序LEDDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH//建立表格用于显示数字MOVDX,28BH//写控制字寄存器MOVAL,10000000B//使端口C按方式0输出OUTDX,AL//8255初始化,A口为输出L2:MOVAH,1INT21HCMPAL,30H//和0比较JBL1//小于则结束程序CMPAL,39H//和9比较JAL1//大于则结束程序SUBAL,30H//ASCII码减30得到对应数

7、字MOVBX,OFFSETLED//将表LED的首地址赋值给BXADDBL,AL//将AL的值加给BLADCBH,0MOVAL,[BX]//查表MOVDX,288H//通过A口输出OUTDX,ALJMPL2//继续循环L1:MOVAH,4CHINT21H五、实验总结因为以前在学习单片机和FPGA的时候都做过静态数码管的实验,所以实验原理已经非常了解了,这里的难点就是用汇编语言来实现。首先,要建立一个表以便于快速得到数字对应的数码管的值;其次写一个比较程序来确定输入的值是否是自然数;然后再通过ASCII码减30即可得到这个数的值,经过查表就可以输出了,实验

8、思路清晰,所以做起来并不难。实验四:七段数码管动态显示一、实验目的掌握数码管显示

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。