微机原理课程设计_路灯控制设计(完整版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 设计任务描述
1.1设计题目
路灯控制设计
1.2设计内容
1)天黑时路灯电亮,天亮时路灯关闭。
2)用中断模拟天黑。
1.2.1 设计目的
通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。通过查阅资料,结合所学知识进行
软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。为以后学生结
合专业从事微机应用设计奠定基础
1.2.2 设计要求
1)通过K O—K7和K++来输入。
2)用LED指示灯显示结果。
3)输出为1灯亮,输入为0灯灭。
2设计思路
本次微机原理课程设计我设计的是路灯控制器。通过中断信号来使路灯点亮,再经延时程序来使灯自动熄灭。然后重新回到初始状态。
我们用到的芯片是中断控制器8259和可编程并行接口8255这两种芯片再外加一个LED 显示单元及开关单元。用中断控制器8259的控制字来设置单片、边沿触发、非缓冲、非自动,用ICW4来设置IR7非屏蔽。
设置中断控制器8255的控制字,让它A口输出来显示灯亮,。由于我们没用到B口和C口,所以让B口输入C口高低四位均输出。
设置完控制字后,再使A口输出全为0(这时路灯初始状态为灭),接着让程序循环进入空操作。当天黑需要路灯亮时,按下中断(代表天黑),程序从循环执行空操作中中断出来,使A口输出从全为0变成全为1(这时路灯全亮),程序后面连接一个延迟子程序,来控制灯亮的时间。
最后到了程序该结束的时候了,A口输出从全1再次变为全0(这时路灯全灭,代表夜晚已过,天亮了)。这时程序本该结束了,程序结束后,又返回到中断控制器8259这部分,这样程序又可以通过按中断来控制灯亮,这样就简单又实用。
大体上程序主要分四大部分:输入部分,中断部分,延迟部分和输出部分。结合所学的知识外加查找相关资料,把这几大部分合理的连接起来,从而实现一个完整、功能强大的程序。
3 主要元器件介绍
1
3.1 所用芯片8255简介: 3.1.1 外部引线
D
0~D
7
为双向数据信号线,用来传送数据和控制字。、
RD为读信号线,与其它信号线一起实现对8255接口的读操作通常接系统总线的IOR信号。
WR为写信号线,与其它信号一起实现对8255的写操作,通常接系统总线的IOW。
CS为片选信号线,当它为低电平(有效)时,才能选中该8255芯片,也才能对8255进行操作。、
A
0,A
1
为口地址选择信号线。8255内部有3个口;A口,B口,C 口,还有一个控制寄存
器,它们可由程序寻址。A
0,A
1
上的不同编码可分别寻址上述3个口和一个控制寄存器,具体
规定如下:
A
1 A
选择
0 0 A口
0 1 B口
1 0 C口
1 1 控制寄存器
通常 A
0,A
1
分别接系统总线A
和 A
1
,它们与CS一起来决定8255的接口地址。
RESET为复位输入信号。此端上的高电平可使8255复位。复位后,8255的A口,B口,C 口均被定为输入状态。
PA
0~PA
7
为A口的8条输入输出信号线。
PB
0~PB
7
为B口的8条输入输出信号线。
PC
0~PC
7
8条线根据其工作方式可作为数据的输入或输出线,也可以用作控制信号的输出
或状态信号的输入线。
3.1.2 8255有三种工作方式:方式0、方式1和方式2。
①:方式0--基本输入/输出
在此工作方式下,每个口都作为基本的输入输出口,C口的高4位和低4位以及A口和B 口都可独立地设置为输入口和输出口。在此工作方式下:输出的数据被锁存,而输入的数据不被锁存。
而且,在方式0之下,C口还有按位置位和复位的能力。
②:方式1--选通输入/输出
此工作方式下,三个端口分为A、B两组,A、B两个口仍用作数据输入输出口,而C口分成两部分,分别作为A口和B口的联络信号。在8255A中,联络信号是3位,两个数据口,共用去C口的6位,剩余的两位仍可作为数据位使用。
③:方式2--双向选通输入/输出此工作方式只限于A组使用,在A口工作于双向输入输出方式时,要利用C口的5条线才能实现此时B口子能工作在方式0或方式1,而C口剩下的3条线可作为输入输出线使用或用作B口方式1之下的控制线。
当A口工作在方式2时,B口可以在方式0或方式1工作。
2
3.1.3 8255的寻址:
8255占外设编址的4个地址,即A口,B口,C口和控制寄存器各占一个外设接口地址。对同一个地址分别可以进行读写操作。例如,读A口可将A口的数据读出;写A口可将CPU 的数据写入A口并输出。
8255方式0基本功能:
方式0是基本输入/输出方式。其功能如下:
①进行数据传送时不需要联络信号。
②任一设置成方式0的端口均可设置成输入或输出。
③输出具有锁存功能。
④输入没有锁存功能。
⑤每一个8位口和4位口均可设置成方式0。如果所有的8位口和4位口都设置成方
端口是否具有锁存功能是需要注意的。如果具有锁存功能,则8255A可作为CPtJ与外设
3
之间数据传送的中转站。这时,CPU与外设之间数据传送是异步的。如果没有锁存功能,则8255A作为数据通道,仅起单向三态门的作用。这时,CPU与外设之间数据传送是同步的。方式0的输出具有锁存功能,而输入没有锁存功能。
可编程并行接口8255引线图
C口的位选择
D3 D2 D1选择
000PC0
001PC1
010 PC2
011 PC3
100 PC4
4