《路灯控制》课程设计报告学院:化工装备学院专业:电气自动化技术班级:2班姓名:xx学号: 5指导教师:xxx20 11年6 月20~24 日目录N O TABLE OF CONTENTS ENTRIES FOUND.(1.课程设计目的1)结合所学的电子电路的理论知识完成路灯控制课程设计;2)通过该设计学会并掌握常用电子元器件的选择和使用方法;3)提高自己综合分析问题和解决问题的能力。
2.课程设计任务和要求课程设计任务本次设计的程序为路灯控制设计,此程序是通过中断控制器8259和并行接口芯片8255与8088计算机的硬件连接,以及延时方法,来实现夜晚路灯亮灭的控制。
程序主要分四大部分:输入部分,中断部分,延迟部分和输出部分。
输入部分用K0至K7来实现,中断部分用中断控制器8259来实现,延迟部分用一个延迟子程序来实现,而输出部分则用LED显示单元及开关单元来实现。
通过中断K++来实现天黑,天黑时路灯电亮,天亮时路灯关闭。
课程设计要求1)通过K O—K7和K++来输入。
2)用LED指示灯显示结果。
3)输出为1灯亮,输入为0灯灭。
3. 课程设计报告内容课程设计方案选择及说明本次微机原理课程设计我设计的是路灯控制器。
通过中断信号来使路灯点亮,再经延时程序来使灯自动熄灭。
然后重新回到初始状态。
我们用到的芯片是中断控制器8259和可编程并行接口8255这两种芯片再外加一个LED显示单元及开关单元。
用中断控制器8259的控制字来设置单片、边沿触发、非缓冲、非自动,用ICW4来设置IR7非屏蔽。
设置中断控制器8255的控制字,让它A口输出来显示灯亮,。
由于我们没用到B口和C口,所以让B口输入C口高低四位均输出。
设置完控制字后,再使A口输出全为0(这时路灯初始状态为灭),接着让程序循环进入空操作。
当天黑需要路灯亮时,按下中断(代表天黑),程序从循环执行空操作中中断出来,使A口输出从全为0变成全为1(这时路灯全亮),程序后面连接一个延迟子程序,来控制灯亮的时间。
最后到了程序该结束的时候了,A口输出从全1再次变为全0(这时路灯全灭,代表夜晚已过,天亮了)。
这时程序本该结束了,程序结束后,又返回到中断控制器8259这部分,这样程序又可以通过按中断来控制灯亮,这样就简单又实用。
大体上程序主要分四大部分:输入部分,中断部分,延迟部分和输出部分。
结合所学的知识外加查找相关资料,把这几大部分合理的连接起来,从而实现一个完整、功能强大的程序。
各单元电路的工作原理3.2.1所用芯片8255简介: 外部引线D 0~D7为双向数据信号线,用来传送数据和控制字。
、RD为读信号线,与其它信号线一起实现对8255接口的读操作通常接系统总线的IOR信号。
WR为写信号线,与其它信号一起实现对8255的写操作,通常接系统总线的IOW。
CS为片选信号线,当它为低电平(有效)时,才能选中该8255芯片,也才能对8255进行操作。
、A 0,A1为口地址选择信号线。
8255内部有3个口;A口,B口,C 口,还有一个控制寄存器,它们可由程序寻址。
A0,A1上的不同编码可分别寻址上述3个口和一个控制寄存器,具体规定如下:A1 A选择0 0 A口0 1 B口1 0 C口1 1 控制寄存器通常 A0,A1分别接系统总线A和 A1,它们与CS一起来决定8255的接口地址。
RESET为复位输入信号。
此端上的高电平可使8255复位。
复位后,8255的A口,B口,C 口均被定为输入状态。
PA0~PA7为A口的8条输入输出信号线。
PB0~PB7为B口的8条输入输出信号线。
PC0~PC78条线根据其工作方式可作为数据的输入或输出线,也可以用作控制信号的输出或状态信号的输入线。
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工作。
A 组B组A口(PA0---PA7)C口(PC4---PC7)B口(PB0---PB7)C口(PC0---PC3)入入入入入入入出入入出入入入出出入出入入入出入出入出出入入出出出出入入入出入入出出入出入出入出出出出入入出出入出出出出入出出出出8255的寻址:8255占外设编址的4个地址,即A口,B口,C口和控制寄存器各占一个外设接口地址。
对同一个地址分别可以进行读写操作。
例如,读A口可将A口的数据读出;写A口可将CPU的数据写入A口并输出。
___CS A1 A0 ____IOR____IOW 操作0 0 0 0 1 读A口0 0 1 0 1 读B口0 1 0 0 1 读C口0 0 0 1 0 写A口0 0 1 1 0 写B口0 1 0 1 0 写C口0 1 1 1 0 写控制寄存器1 X X 1 1 D0~D7三态8255方式0基本功能:方式0是基本输入/输出方式。
其功能如下:①进行数据传送时不需要联络信号。
②任一设置成方式0的端口均可设置成输入或输出。
③输出具有锁存功能。
④输入没有锁存功能。
⑤每一个8位口和4位口均可设置成方式0。
如果所有的8位口和4位口都设置成方端口是否具有锁存功能是需要注意的。
如果具有锁存功能,则8255A可作为CPtJ与外设之间数据传送的中转站。
这时,CPU与外设之间数据传送是异步的。
如果没有锁存功能,则8255A作为数据通道,仅起单向三态门的作用。
这时,CPU与外设之间数据传送是同步的。
方式0的输出具有锁存功能,而输入没有锁存功能。
X X X无关置/复位0 0:复位1:置位C口的位选择D3 D2 D1选择000PC0001PC1010 PC2011 PC3100 PC4101 PC5110 PC6111 PC7C口的按位操作控制字格式A组控制 B组控制7 6 5 4 3 2 1 0控制C口低四位1:输入0:输出控制B口八位1:输入0:输出方式选择0:方式01:方式1控制C口高四位0:输出1:输入控制A口8位0:输出1:输入方式选择00:方式010:方式111:方式2功能控制0:位操作1:方式选择8255的控制字格式所用芯片8259简介:8259的外部引线D 0~D7为双向数据信号线,与系统总线的数据线相连接。
WR、RD为写和读控制信号,与系统总线的读写信号相连接。
CS为片选信号,只有CS为低电平时,才能实现CPU对8259的写或读操作。
A是8259内部寄存器的选择信号。
它的不同状态,对应不同的内部寄存器。
INT为8259的中断请求输出信号。
可直接接到CPU的INTR输入端。
INTA为中断响应输入信号。
在中断响应过程中CPU的中断响应信号由此端进入8259.CAS0~CAS2为级联控制线。
当多片8259级联工作时,其中一片为主控级联芯片,其他均为从属级芯片。
主控级芯片的CAS0~CAS2作为输出,连接到个从属级芯片的CAS0~CAS2上。
当某从属8259提出中断请求时,主控级8259通过CAS~CAS2送出相应的编码给从属级,是从属级中断被允许。
SP/EN为双功能引线。
当工作在缓冲模式时,它为输出,用以控制缓冲传送;在非缓冲模式时,它用作输入。
当SP=1时,指定8259芯片为主控级;SP=0时,指定它为从属级。
IR0~IR7中断请求输入端。
其他外设中断请求可加在8259的IR~IR7的任一端上。
该信号可以使上升沿有效,也可以时高电平有效。
8259的内部有多个寄存器,其中包括:中断请求寄存器(IRR),其内部保存着所有外部中断源IR0~IR7的中断请求状态。
任何一个中断源发生请求,其相应位为1;一旦得到响应,则相应位复位。
中断服务寄存器(ISR),用来保存所有正在服务的中断源。
当8259受到中断结束命令时,其寄存的状态进行调整。
中断屏蔽寄存器(IMR),保存着被屏蔽的所有中断源。
其屏蔽功能可用命令修改8259的内部控制字CPU命令分为两大类:一类时初始化命令字(ICW),主要使8259处于初始状态;另一类是操作命令字(OCW),使处于初始状态的8259去执行具体的某种操作方式。
操作命令字可在8259初始化后的任何时刻写入。
(1)初始化命令字①初始化命令字ICW1A 0=0为偶地址。
在A=0,D4=1时为写入。
1 LTIM A S IC41:需要ICW40:不需要ICW4 低8编程位 1:单片8259下,中断低口 0:多片8259级联8080/85模式 1:间隔为40:间隔为8仅用于8080、85模式 1:电平触发0:边沿触发初始化命令字ICW1②初始化命令字ICW2A=1为奇地址。
③初始化命令字ICW3=1为奇地址。
该字是用于多片8259级联的。
A在主控8259中,ICW3的每一位对应一个IR输入。
哪一位为1,表示相应的IR接从属8259.从属8259的ICW3的最低三位的编码用以表示该从属8259接至主控8259的IR编号。
主控ICW311:相应IR接从属82590:不接8259从属ICW310 0 0 0 03位编码对应从属8259接主控的IR编号初始化命令字ICW3④初始化命令字ICW4A=1为奇地址。
1模式模式1:自动EOI0:非自动结束0X:非缓冲方法10:缓冲方式\从属片11:缓冲方式\主控片1:特殊全嵌套方式0:一般嵌套方式初始化命令字ICW4(2)操作命令字OCW①操作命令字OCW1。
当这个8位的操作命令字的某一位置1时,它就屏蔽相对的IR输入。
②操作命令字OCW2。
R SL EOI 0 0 L2L1L0IR的最低优先级0 0 1 一般EOI中断结束命令0 1 1 特殊EOI1 0 1 循环优先级的一般EOI命令1 0 0 在自动EOI下置循环优先级自动循环0 0 0 在自动EOI下清循环优先级1 1 1 循环优先级的特殊EOI命令1 1 0 设置优先级特殊循环0 1 0 无效操作命令字OCW2该命令字用来设置优先级是否循环、循环的方式及中断结束的方式。
R为优先级循环控制位,R=1为循环优先级;R=0为固定优先级。
L 2、L1、L为系统最低优先级编码,用它们来指定哪个IR优先级最低。