基于增强型并行口的智能仪表与微机的高速通讯
介绍计算机增强型并行口的信号,论述单片机控制的仪器仪表经增强型并行口与微机通讯时的信号连接方式及通讯软件设计方法。
关键词:增强型并行口;微机;单片机;高速通讯
and a PC based on EPP
微型计算机的新型并行口电路主要由状态寄存器、控制寄存器、地址寄存器、数据寄存器等组成。工作在增强型并行口EPP模式且“基地址”为378H时,状态寄存器、控制寄存器、地址寄存器、数据寄存器的地址分别为379H、37AH、37BH、37CH。EPP信号与这4个寄存器密切相关。
WRITE信号:主机并行口插孔1,输出,低电平写,高电平读。当控制寄存器的D0位为0时,若向数据寄存器/地址寄存器发送一条I/O指令,则产生WRITE信号。
AD0~AD7信号:并行口插孔2~9,双向数据/地址线,对应于数据寄存器/地址寄存器的D0~D7位,用于传输数据/地址。
INTR信号:并行口插孔10,输入,外部设备中断请求信号,上升沿有效。当控制寄存器的D4位为1时,才允许并行口向主机传送来自外设的中断请求信号IRQ7。状态寄存器D6位取值与INTR信号相同。
WAIT信号:并行口插孔11,输入,握手信号,低可以开始一个周期,高可以结束一个周期(EPP1.9标准时)。状态寄存器的D7位取值与WAIT信号相反。
USER1、USER2、USER3信号:分别为并行口插孔12、13、15,输入,用户定义。状态寄存器的D3、D4、D5位取值分别与USER3、USER2、USER1取值相同。
DATASTB信号:并行口插孔14,输出,低有效,表示正在进行数据读/写操作。当控制寄存器的D1位为0时,若向数据寄存器发送一条I/O指令,则产生DATASTB信号。
RESET信号:并行口插孔16,输出,低有效,为外部设备复位信号。当控制寄存器的D2位为1时,产生RESET信号。
ADDRSTB信号:并行口插孔17,输出,低有效,表示正在进行地址读/写操作。当控制寄存器的D3位为0时,若向地址寄存器发送一条I/O指令,则产生ADDRSTB信号。
GND信号:并行口插孔18,地线,所有信号公共端。
在EPP模式下,对EPP控制寄存器的各位写入规定的值后,再用一个I/O指令向EPP的数据寄存器/地址寄存器传输一个字节的数据/地址,EPP电路则会自动处理握手信号,并自动产生时序信号[1],即信号的产生是靠硬件而不是软件,这就是EPP能高速传输数据的原因。?
为实现PC与单片机间的双向字节数据传送,把EPP的AD0~AD7与单片机的P1.0~P1.7(P1口)对应连接。
单片机向PC发送数据或从PC接收数据,需经EPP向PC发送中断请求信号,同时还要告诉PC是发送数据还是接收数据,为此需把INTR与P3.2相连。当P3.2由0变为1时,向PC发送中断请求信号;当P3.2为0时,让PC发送数据;当P3.2为1时,让PC接收数据。
主要设计思想:主程序中,把控制字19H写入EPP的控制寄存器,即允许产生DATASTB信号及允许并行口中断。当PC接到单片机发来的中断请求信号IRQ7并响应中断后,中断服务程序先读取EPP状态寄存器的D6位(与INTR值相同)值。当该位值为0时,PC执行发送数据子程序;当该位值为1时,PC执行接收数据子程序。在收/发数据子程序中,通过查询的方法可收/发多个字节数据;当WAIT(与EPP状态寄存器的D7位取值相反)为0时,PC读/写EPP的数据寄存器,同时EEP自动产生DATASTB信号(由1变0),让单片机写/读P1口。程序清单如下。
?
3.2单片机收/发数据
主要设计思想:单片机经P3.2(由0变1)向PC发送通讯中断请求信号并发送收/发数据标志;*在收/发数据子程序中通过查询的方法可收/发多个字节数据。当查询到EPP的DATASTB为0时,写/读P1口,并经P3.4向PC发送握手信号(P3.4为0),让PC读/写EPP的数据寄存器。程序清单如下。
上一篇:新型耐压测试系统研究
下一篇:表面贴装焊接的不良原因和防止对策
推荐阅读最新更新时间:2023-10-12 20:32