资源预览内容
第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
亲,该文档总共3页全部预览完了,如果喜欢就下载吧!
资源描述
研华串口寄存器功能介绍研华串口寄存器功能介绍 研华串口卡的串口寄存器和 PC 机标准的 COM1 口 COM2 口的寄存器功能一样。每个串 口由 8 位寄存器组成。每位寄存器都有不同的功能。下面通过 PC 机的标准 COM 来说明各 位寄存器的功能。 PC 机上,COM1 和 COM2 的地址是 3F83FF 及 2F82FF,在这个范围内的每个地址都有 不同的功能, 这些功能分别通过寄存器来实现, 读写这些寄存器就可以执行与串行端口相关 的功能。 而所谓的寄存器就是暂时存放信息的地方, 这些被存放在此的信息是以位的形式存 储,通常以 8 个位(一个字节)作为一个单位。读写这些寄存器地址的同时,也就是读取这 些代表的状态或控制某些功能。 上表中, 3F8, 3F9 及 2F8, 2F9 分别有两种功能, 显然还需要其他寄存器的信号来加以区别。 在串行通信中,这一点是通过使用传输线控制寄存器(LCR)上的第 7 位来实现的。这个位 被称为分频器锁存器存取位(Divistor Latch Access Bit,DLAB),当 DLAB 为 0 时,表示读写信 息寄存器和中断启动寄存器;当 DLAB 为 1 时,表示读写波特率分频器的内容。 以下是各寄存器的说明: BDR:设置使用串行通信的传输速度。 串口波特率和数据格式的设置: 首先向 LCR(传输线控制寄存器)的高位写入 1(即 DLAB 为 1) ,然后再设置波特率:在基 地址和基地址+1 的地方写入的数据为 1843200/(16*波特率) 。然后设置 LCR,最后设置 Modem 控制寄存器和中断允许寄存器。波特率数值=1843200/(16*波特率) (十进制,可转 化为十六进制) outportb(0x3fb,0x80); 对 LCR 的最高位置1,是说明以下为输入波特率因子 outportb(0x3f8,0x0c); /outportb(0x3f8+0,0x0C)输入波特率因子的低 8 位/9600 outportb(0x3f9,0x00); /outportb(0x3f8+1,0x00) 输入波特率因子的高 8 位 DR 先令 DLAB 为 0,再读取 3F8 就等于读取被传送到 COM1 的信息。若将信息 写入 3F8, 则信息会被放入传送寄存器中, 并被芯片内的移位寄存器一位接着一位地送出去。 IER 用来启动芯片中的 4 种中断,该位为 1 时表示该中断被启动。 Bit0:接收的信息有效中断启动。 Bit1:传送器保持寄存器已空中断启动 Bit2:接收器连接状态中断启动 Bit3:调制解调器状态中断启动 Bit4Bit7:永远为 0 outportb(0x3f9,0x01); /启动中断,接收数据有效 IIR 通过读取此寄存器可以知道中断的产生是由谁所引发。 Bit0:为 0 时表示尚有中断未处理;为 1 时表示无中断。 Bit3Bit7 :永远为 0 outportb(0x3fa,0x07); /表示处于连接控制状态 LCR 此寄存器定义传输信息的格式。各位的意义如下: Bit2:终止位。设为 0 表示使用 1 个终止位;设为 1 时有两种情况,字符长度为 5 时表示 1.5 个终止位,而字符长度不是 5 时则表示 2 个终止位。 Bit3:奇偶校验位启动。设为 0 时表示无奇偶校验位,设为 1 时表示使用奇偶校验位。 Bit4:奇偶校验方式选择。设为 0 时选择奇校验;设为 1 时选择偶校验。 Bit5:指定奇偶校验位的方式。设为 0 时表示不限制;设为 1 时,则选择奇校验时,奇偶校 验位为 1;选择偶校验时,奇偶校验位为 0。 Bit6:终止控制位。设为 0 时表示正常输出;设为 1 时则强迫输出 0。 Bit7:除法器轩锁位。设为 0 时表示存取信息寄存器;设为 1 时表示存取波特率分频器。 outportb(0x3fb,0x80); /对 LCR 的最高位置1,是说明以下代码为输入波特率因子 MCR 用来控制调制解调器的接口信号。 Bit0:设为 1 时,DTR 脚位为 LOW;设为 0 时,DTR 脚位为 HIGH。 Bit1:设为 1 时,DTS 脚位为 LOW;设为 0 时,RTS 脚位为 HIGH Bit2,Bit3:用于控制芯片上的输出,新型芯片现已不用。 Bit4: :设为 1 时,芯片内部作自我诊断。 其他位永远为 0 outportb(0x3fc,0x0b); /见上 LSR 表示信息传送过程种的各种状态。各位为 1 时表示该状态成立,为 0 时不成 立 Bit0:数据已接收完毕。 (Data Ready) Bit1:数据溢出错误。 (Overrun Error) Bit2:奇偶校验位错误。 (Parity Error) Bit3:信息框错误。 (Framing Error) Bit4:终止中断。 (Break Interrupt) Bit5:传送器保存寄存器空闲(Transmitter Holding Register Empty) 。 Bit6:传送移位寄存器空闲(Transmitter Shift Register Empty) 。 Bit7:永远为 0 MSR 此寄存器高 4 位为调制解调器控制线目前状态; 低 4 位在调制解调器有信 号时被设为 1,在被读取后会恢复为 0。 Bit0:1 时表示 CTS 信号改变 Bit1:1 时表示 DSR 信号改变 Bit2:1 时表示 RI 信号改变 Bit3:1 时表示 DCD 信号改变 Bit4:CTS 信号的补码 Bit5:DSR 的补码 Bit6:RI 信号的补码 Bit7:DCD 信号的补码。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号