rtx实时系统下rs_串口通信程序设计

rtx实时系统下rs_串口通信程序设计

ID:14344200

大小:180.10 KB

页数:9页

时间:2018-07-28

rtx实时系统下rs_串口通信程序设计_第1页
rtx实时系统下rs_串口通信程序设计_第2页
rtx实时系统下rs_串口通信程序设计_第3页
rtx实时系统下rs_串口通信程序设计_第4页
rtx实时系统下rs_串口通信程序设计_第5页
资源描述:

《rtx实时系统下rs_串口通信程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、RTX实时系统下RS-232串口通信程序设计赵常寿叶梦萦张鹏摘要:讨论在RTX实时系统下,PC机的RS-232串口通信程序设计方法。使用VS2008编写程序实例,在RTX8.1.2、WindowsXPSP3下使用双机串口直连测试通过。关键词:RTX实时系统;RS-232串口通信;共享内存;VS2008环境DB-25DB-9信号名称方向含义58CTS输入清除发送(MODEM)66DSR输入数据设备准备就绪(MODEM)75SG-信号地81DCD输入数据载波检测204DTR输出数据终端准备就绪(计算机)229RI输入响铃指示1引

2、言通用实时系统RTX是美国IntervalZero(前身为Ardence)公司开发的Windows平台的硬实时系统,可以为用户提供优秀的实时控制性能、高效的可扩展性及稳定性,是迄今为止在Windows平台上唯一基于软件的硬实时解决方案。RTX提供了对IRQ、I/O、内存的精确控制,以确保实时任务执行时具有100%的可靠性。RTX与Windows系统无缝地结合在一起,可以利用Windows系统的各种优势,包括大量标准的API函数、高效的内存管理机制以及各种Windows下的通用资源。利用IPC信息共享与同步机制,可以实现RTX

3、和Windows之间的数据通信。RTX的时钟分辨率可以达到100纳秒,定时器周期最低可以做到1000、500、200、100微秒。在工业控制领域,设备与设备之间的通信一般有TTL、RS232、GPIB、RJ45等,RS232是其中常见且使用广泛的一种通信方式,因其简单易用,在设备之间短距离通信时,一般都采用RS232。在下文中,将结合一个实例讨论在RTX实时系统下RS232串口通信的程序设计方法,程序的开发运行环境为:WindowsXPSP3、RTX8.1.2、VS2008、PC机串口及串口交叉线。2RS-232C串口通信P

4、C机一般使用8250或16550作为串行通信的控制器,使用9针或25针的接插件将串行口的信号送出。其信号定义如表1所示,这些信号在通信过程中可能会被全部或部分使用,最简单的通信仅需TXD、RXD和SG即可完成,其他的握手信号可以做适当处理或直接悬空。DB-25DB-9信号名称方向含义23TXD输出数据发送端32RXD输入数据接收端47RTS输出请求发送(计算机)表1RS-232C信号定义PC机支持1-4个串口,即COM1-COM4,其基地址在BIOS数据区0000:0400-0000:0406中描述,对应地址分别为3F8、

5、2F8、3E8、2E8,COM1和COM3使用中断4,COM2和COM4使用中断3。串口通信控制器的控制寄存器定义如表2所示。表2串口通信控制器8250(16550)的寄存器地址寄存器名称备注3F8H发送保持寄存器(THR)写,DLAB=03F8H接收缓冲寄存器(RBR)读,DLAB=03F8H波特率因子寄存器[低](DLL)读/写,DLAB=13F9H波特率因子寄存器[高](DLM)读/写,DLAB=13F9H中断允许寄存器(IER)读/写,DLAB=03FAH中断识别寄存器(IIR)读3FAHFIFO控制器(FCR)写3

6、FBH线路控制寄存器(LCR)读/写3FCHModem控制寄存器(MCR)读/写3FDH线路状态寄存器(LSR)读3FEHModem状态寄存器(MSR)读3FFHScratchRegister读/写(1)接收缓冲寄存器(RBR)和发送保持寄存器(THR)RBR暂存从线路上接收到的有效字符,等待本地读取。THR暂存等待发向线路的数据。它们共用同一I/O地址,在半双工工作环境下,互不干扰。2014.0372(2)中断识别寄存器(IIR)、中断允许寄存器(IER)及FIFO控制器(FCR)IIR为只读寄存器,Bit6:7用来指示F

7、IFO的状态,为00时无FIFO,此时为8250或16450芯片,为01时有FIFO但不可以使用,为11时FIFO有效并可以正常工作。Bit3用来指示超时中断(16550/16750)。Bit0用来指示是否有中断发生。Bit1:2标识具体的中断类型,这些中断具有不同的优先级别,其中LSR中断级别最高,其次是数据就绪中断,然后是发送寄存器空中断,而MSR中断级别最低。IER控制是否允许中断,Bit0为1时允许接收到数据时产生中断,Bit1为1时允许发送保持寄存器空时产生中断,Bit2为1时在LSR变化时产生中断,Bit3为1时

8、在MSR变化时产生中断。如表3所示。表3中断识别寄存器(IIR)和中断允许寄存器(IER)用1位停止位,为1则根据数据长度的不同使用1.5或2位停止位。Bit0:1设定数据长度。如表5所示。表5线路控制寄存器(LCR)b7b6b5b4b3b2b1b0访问分频器开关(DLAB位)间断控制位

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。