用I/O操作实现RS232口数字及模拟信号的采集
时间:12-16
来源:互联网
点击:
1.前言
RS232端口几乎是所有x86计算机必备的端口,它可以连接FAX/MODEM设备、串行鼠标器、串行小键盘、采集模块、PLC等,还可以连接RS232-RS485适配接头,控制RS485网络设备。RS232端口广泛采用9芯D型接头,具有接线简单、传输速率高、传数据可靠等优点。除了Tx/Rx方式的高效数据传输外,RS232接口还具备直接I/O输入输出能力。本文介绍的是利用RS232接口直接完成4路数字量信号的输入,可广泛地应用于机关开关式传感器、临近感应式传感器、霍尔效应式传感器、小型机械键盘、TTL信号的输入。除此之外,利用简单的I/O操作,还可实现RS232口的多路模拟信号采集。简单的串口I/O操作,只是利用RS232口的MCR及MSR寄存器,无需串口初始化及波特率设置等烦琐操作。
2.RS232的端口安排
计算机正常启动后,RS232端口COM1、COM2、COM3、COM4的地址一般被安排在3F8、2F8、3E8、2E8,用于了解外部状态的寄存器地址则被分别设置为3FE、2FE、3EE、2EE,用于控制外部设备的寄器地址则被设置3FC、2FC、3EC、2EC,。RS232接口的针脚安排如下:
由于大多数x86计算机都使用9芯D型接头。下面讲述的寄存器安排,均指的是9芯D型接头。
RS232口MCR寄存器安排:
RS232口MSR寄存器安排
上面的列表对RS232寄存器进行了必要的简化。MCR寄存器用于控制D型接头的7脚和4脚,MSR用于读取1、9、8、6脚的状态,5脚为地。标有X的位用于其它用途,本文不作介绍。
3.RS232窃电技术
EIA-RS232标准中未定义电源输出引脚,所以RS232接口中找不到电源输出针脚,只能间接地从RS232的其它引脚中获取电源。最直接的方法是利用PIN7和PIN4两个针脚,它们足以驱动CD4093、LM324等MOS型IC芯片器件。除此之外,还可以用下述方法从Tx和Rx引脚中获取电源。
RS232端口几乎是所有x86计算机必备的端口,它可以连接FAX/MODEM设备、串行鼠标器、串行小键盘、采集模块、PLC等,还可以连接RS232-RS485适配接头,控制RS485网络设备。RS232端口广泛采用9芯D型接头,具有接线简单、传输速率高、传数据可靠等优点。除了Tx/Rx方式的高效数据传输外,RS232接口还具备直接I/O输入输出能力。本文介绍的是利用RS232接口直接完成4路数字量信号的输入,可广泛地应用于机关开关式传感器、临近感应式传感器、霍尔效应式传感器、小型机械键盘、TTL信号的输入。除此之外,利用简单的I/O操作,还可实现RS232口的多路模拟信号采集。简单的串口I/O操作,只是利用RS232口的MCR及MSR寄存器,无需串口初始化及波特率设置等烦琐操作。
2.RS232的端口安排
计算机正常启动后,RS232端口COM1、COM2、COM3、COM4的地址一般被安排在3F8、2F8、3E8、2E8,用于了解外部状态的寄存器地址则被分别设置为3FE、2FE、3EE、2EE,用于控制外部设备的寄器地址则被设置3FC、2FC、3EC、2EC,。RS232接口的针脚安排如下:
D型25芯接头 | D型9芯接头 | ||
pin8....CD | pin1 | ||
pin3...RxD | pin2 | ||
pin2...TxD | pin3 | ||
pin20..DTR | pin4 | ||
pin7....SG | pin5 | ||
pin6...DSR | pin6 | ||
pin4...RTS | pin7 | ||
pin5...CTS | pin8 | ||
pin22...RI | pin9 | ||
信号名称 | |||
TxD | Transmit Data | RxD | Receive data |
RTS | Request to send | CTS | Clear to Send |
DSR | Data Set Ready | DTR | Data terminal ready |
SG | Signal ground | RI | Ring indicator |
CD | Carrier Detect |
由于大多数x86计算机都使用9芯D型接头。下面讲述的寄存器安排,均指的是9芯D型接头。
RS232口MCR寄存器安排:
地址 | BIT7 | BIT6 | BIT5 | BIT4 | BIT3 | BIT2 | BIT1 | BIT0 |
3FC | X | X | X | X | X | X | PIN7 | PIN4 |
2FC | X | X | X | X | X | X | PIN7 | PIN4 |
3EC | X | X | X | X | X | X | PIN7 | PIN4 |
2EC | X | X | X | X | X | X | PIN7 | PIN4 |
RS232口MSR寄存器安排
地址 | BIT7 | BIT6 | BIT5 | BIT4 | BIT3 | BIT2 | BIT1 | BIT0 |
3FE | PIN1 | PIN9 | PIN6 | PIN8 | X | X | X | X |
2FE | PIN1 | PIN9 | PIN6 | PIN8 | X | X | X | X |
3EE | PIN1 | PIN9 | PIN6 | PIN8 | X | X | X | X |
2EE | PIN1 | PIN9 | PIN6 | PIN8 | X | X | X | X |
上面的列表对RS232寄存器进行了必要的简化。MCR寄存器用于控制D型接头的7脚和4脚,MSR用于读取1、9、8、6脚的状态,5脚为地。标有X的位用于其它用途,本文不作介绍。
3.RS232窃电技术
EIA-RS232标准中未定义电源输出引脚,所以RS232接口中找不到电源输出针脚,只能间接地从RS232的其它引脚中获取电源。最直接的方法是利用PIN7和PIN4两个针脚,它们足以驱动CD4093、LM324等MOS型IC芯片器件。除此之外,还可以用下述方法从Tx和Rx引脚中获取电源。
IO操作RS232口模拟信 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)