基于pc-104的多串口通讯的设计

基于pc-104的多串口通讯的设计

ID:26475970

大小:51.50 KB

页数:4页

时间:2018-11-27

基于pc-104的多串口通讯的设计  _第1页
基于pc-104的多串口通讯的设计  _第2页
基于pc-104的多串口通讯的设计  _第3页
基于pc-104的多串口通讯的设计  _第4页
资源描述:

《基于pc-104的多串口通讯的设计 》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于pc/104的多串口通讯的设计摘要:提出了一种在PC/104上进行多串口通讯的设计方法,介绍了多串口通讯在DOS平台上的软件设计,采用C语言进行编程,可以方便的移植到其他的平台上。关键字:串行通讯;PC104;0引言目前,最先进的嵌入式工业计算机PC/l04,以其优良的品质、高可靠性及模块化,广泛应用于工业控制、航空航天、军事、医疗、消防设备、智能仪器仪表、导航、通讯、数控、自动化生产设备的数据采集、便携式计算机等领域。而在实际的应用中,有时需要借助微机的数据处理能力和丰富的软件资源,使组成的系统功能更为强大。这样必须实现PC机与PC10

2、4之间的通讯,在通常实时性要求不高,数据量不大的情况下,可以采用串口进行通讯,但通常一般的PC机只配有两个串口,在控制领域有时候是不够的,而基于PC/104结构的嵌入式系统可以根据实际的要求通过简单的搭积木的方法进行配置,其功能模块比较丰富,当进行多串口控制时可以选用基于PC104的多串口卡(一般扩展4~6个串口)。本文采用的是HXL-4A的4串口扩展板,该板上集成了高性能的16C554控制芯片(相当于4个16C550),每个通道有独立的16字节接收缓冲器和16字节发送缓冲器,可以达到更高的通讯速率而无需占用过多的CPU资源,并且每个串口可配

3、制成RS232RS422RS485模式。1多串口通讯软件的设计:由于大部分的基于PC/104软件的设计都是在DOS平台上的,所以本文以BRAODLORDC为编译环境进行设计多串口通讯软件的设计。程序框图见图1一般情况下串口的地址是:1:3F82:2F83:3E84:2E85:3A86:2A8,如有区别参照多串口卡的手册。1.1串口波特率和数据格式的设置:首先向LCR(线路设置寄存器)的高位写入1,然后在设置波特率:在基地址和基地址+1的地方写入的数据为1843200/(16*波特率)。然后设置LCR,最后设置Modem控制寄存器和中断允许

4、寄存器。代码如下:voidinit_(int_X){outportb(_X+3,0x80)outportb(_X,0x06)outportb(_X+1,0x00)//波特率为19200outportb(_X+3,0x0b)//数据格式:8个数据位,一个停止位,奇校验outportb(_X+4,0x0b)//允许将中断信号送到系统总线outportb(_X+1,0x01)}//允许接收产生中断1.2中断的允许和禁止:一般情况下,串口通常配置成接收产生中断,发送不产生中断。在PC/104上的设计可以参照PC机的设计方式,中断控制器为两片8259,

5、一片为主片,另一片为从片。当串口所用的中断为8以下时,设置主片8259的IMR(中断屏蔽寄存器)。当中断为8以上时,要设置从片的8259的IMR。代码如下:voidOpenInterrupt(unsignedcharIntNum)//开中断{intmaskcharControlODEM)。最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连,只需要如图2进行连接即可。目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(<12m),可以用电缆线直接连接标准RS232端口。若距离较远,需附加调制解调器(MOD

6、EM)。最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连,只需要如图2进行连接即可。3结束语:本文较全面介绍了基于PC/104的多串口卡的通讯软件的设计,提出了串口通讯应注意的问题,并将此串口通讯软件应用在大庆油田的数据采集系统中,系统工作稳定,可靠。基于pc/104的多串口通讯的设计:

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

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

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