微机原理与接口技术实验4——8255并行接口及拓展实验.pptVIP

微机原理与接口技术实验4——8255并行接口及拓展实验.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序说明 源代码文件名:tra_r.asm * 同济大学 微机原理与接口技术实验 * 谢谢! * 同济大学 微机原理与接口技术实验 * * 东西路口绿灯亮,南北路口红灯亮,东西方向通车,持续6秒;东西路口绿灯闪烁,南北路口红灯亮,持续5秒;东西路口黄灯亮,南北路口红灯亮,持续1秒;东西路口红灯亮,南北路口绿灯亮,南北方向通车,持续6秒;东西路口红灯亮,南北路口绿灯闪烁,持续5秒;东西路口红灯亮,南北路口黄灯亮,持续1秒;之后重复以上过程直至停机。 * FD-SJ8088A实验系统上8255的连线图如图1所示,其3个IO口分别通过三排插孔(J32、J31和J30)引出,片选信号也通过插孔(J29)引出。本实验中片选信号接总线8H地址。 * 8253共有3个工作方式,本实验采用方式0,方式0也叫做基本输入/输出方式。在这种方式下,端口A和端口B可以通过方式选择控制字规定为输入口或者输出口。方式选择控制字共8位,其格式如图2所示。 * FD-SJ8088A提供一套模拟交通灯的发光二极管显示电路,J16-J19四组插孔从左到右分别对应四组红黄绿灯,其中J16对应北面路口(以上为北),J17对应东面路口,J18对应南面路口,J19对应西面路口,每个插孔均为1为红灯,2为黄灯,3为绿灯。当输入端为低电平“0”时,发光二极管点亮,当输入端为高电平“1”时,发光二极管变暗。 * 本实验使用8255的端口A和B控制四组红黄绿灯的亮灭,端口A和B均工作于方式0,且两个端口均用作输出。因此本实验的方式选择控制字为80H。每个端口的八位分成两组,低四位对应一个方向的路口,高四位对应另一个方向的路口,每一组四位中,最低位对应红灯,第二位对应黄灯,第三位对应绿灯,最高位不用。其中A口对应南面路口与西面路口,B口对应东面路口与南面路口。 * 黄色的两条指令实现了延时,但是这只是一个较长的循环,延时时间根据cpu的频率和执行指令的时间而变化,不是真实的时间。 * 在基础教学实验项目“8255并行接口”的“模拟交通灯控制”实验中,由于只使用了并行接口芯片8255,无法做到准确定时,仅能达到模拟交通灯亮灭的效果,其亮灭的间隔时间与实际时间并不匹配。在本拓展实验中,我们希望能够将模拟时间变成真实的时间间隔。 * 8253是一块可编程的计数器/定时器,它具有3个独立的16位计数器通道,6种工作方式可编程,输入脉冲的最大频率为2MHz,可按二进制或BCD码计数,使用单一+5V电源。 * 根据片选信号ˉCS及地址线A1、A0,8253具有四个端口地址,当A1A0=00时,选中的为0通道计数器;A1A0=01时,选中的为1通道计数器;A1A0=10时,选中的为2通道计数器;A1A0=11时,选中控制字寄存器。 * 方式0为计数结束申请中断的方式,当方式控制字写入后,输出为低电平。在写入计数值后,计数器开始计数,计数器减到0后,输出变为高电平,此高电平信号一直维持到写入新的控制字,或写入新的计数值为止。此时可利用计数到0时,输出由低电平变为高电平的信号申请中断,如果在计数过程中写入新的计数值,则在写入第一个字节时中止计数,写入第二个字节时启动新的计数。其工作波形如图5所示。 * 方式2为脉冲发生器。它对输入信号作N次分频,产生连续的负脉冲,其宽度为一个时钟周期,当计数器写入新的计数值后,脉冲周期受影响。可用门控信号为同步信号,当门控信号为低电平时,输出为高电平;当门控信号为高电平时,计数器从最初计数值启动,由于计数器在写入控制字后输出为高电平,当写入计数值后才开始计数并输出脉冲,因此也可通过写入计数值来实现软件同步。其工作波形如图6所示。 * * 本实验中,选用1MHz脉冲作为8253的时钟输入信号,该信号是由FD-SJ8088A实验系统上的8MHz方波输出经8分频后得到的。研究红绿灯的时间间隔可以发现,最短为0.5秒,故希望8253输出的定时周期为0.5秒。根据公式可知,预置的计数初值应为500000,而16位二进制数最大能表示的值为65535,小于需要的计数初值,所以需要采用8253通道级联的方式。 其中通道1采用方式2,通道2采用方式0。计数方式采用二进制。通道1将输入的时钟信号的周期变慢10000倍,然后作为通道2的时钟信号,在通道2的计数过程中,其输出端将保持低电平,当计数器计到0时,不会自动装入初值重新计数,其输出将跳变为高电平并保持。计数过程中两个通道 GATE端均为高电平,否则暂停计数。因此,将输出端作为中断的触发信号使用。 * 初始化及主程序设计 在对三块接口芯片进行初始化前,先关中断,并将中断处理程序入口地址写入中断向量表。由于使用的是IRQ2,故中断号为10,中断处理程序入口地址为10×4=40。 初始化8259A。先设置中断屏蔽字OC

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档