资源描述:
《linux系统下rs—串行通信程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Linux系统下RS—485串行通信程序设计l36计算机应用研究2002芷Linux系统下RS.485串行通信程序设计王志颖(1.中国工程物理研究院电子工程研究所,四Jl用研究所,四JI1绵阳621900)马卫东绵阳621900;2.中国I程物理研究院计算机应摘要:介绍了在Linux操作系统下RS-485多hi户串行接1:2卡的安装,配王厦串1:2的程序设计技术.详细叙述了un世系统下串行通信资源的程序设计方法,相关的系统调用,程序鳊剌技巧.关键词:数据通信;RS.485;串口;Linux;系统调用中囝法分类号:TN919.5文献标识码:
2、A文章编号:1001.3695(20o2)02_0136_03RS-485SerialCommunicationProgramminginLinuxWANGi-y,MAWei-do(1lnaittaeofElearonic脚w嘶.CASP.Mio~angmn621900,∞;2l~.stltmeCom.pmerl.CAEP.却Suchttan621900.cm)Abstract:hlthispalm."introducetheinstslladon.configurationmadprogramraing缸RSM.85serialcomm
3、unicationcardinLintLxThepI曲ⅡI.mgdesignmethod,teehmqueandrelationsystemegO.ofserialeommurtleationres0ufcearensm~ted.Keywords:DataCoam~tmication;KS-485;SerialPort;Linux;SystemCallLinux秉承了Unix操作系统数十年设计的精髓,成为当前最流行的操作系统=它具有高效,健壮,安全及功能齐全等特征,并且完垒自由,免费,而赢得了人们的青睬:IJnm,:的发展凝聚了世界各地无
4、数开发人员的大量心血,体现了崭新的信息世界的共建共享,共荣的精神:Linux能够运行在i386,Alpha.SPARC.PowerPC等多种计算机平台上,符合POSIX标准.源代码公开.在相同的硬件配置平台上,其性能远比其它Pc操作系统要好=串口是微型机上的标准RS-232设备,硬件设计简单,使用方便.尤其是随着各种为工业测控领域扩展其功能而开发的RS-422,RS.485标准的高速通信板卡出现后,其传输速率高懂离远,抗干扰能力强一个接口板可同时支持多个串口等特点,使其获得了广泛的应用.1Linux操作系统中的串行通信设备Linux操作系
5、统下串口等通信资源是作为串行通信终端设备ttySxx实现的:包括标准Pc串口(COM1~COM4)和可扩展的多口串行通信卡,均可方便的安装,使用.一般来说,Linux的串行通信终端设备ttySxx的驱动程序能够支持所有使用8250,16450.16550,I6550A及其兼容的UART芯片的串口卡.1.1串行通信设备简介通常unux内核编译配置时已经加入串口支持,因此当Linox启动时会自动检测到标准的串口设备.对于扩展的多口串行通信卡,则采用在系统启动的配置脚奉中配置/ere/serialeonf文件或调用setserial命令动态加收
6、稿日期:200102—28载:Linux操作系统中的所有设备以设备文件名的方式存储在目录/dev中.其中每一个设备由一个主设备号和一个状设备号惟一确定:对于串口设备,其用于输入的串口终端ttySxx的主设备号为4,用于输出的串口设备cu的主设备号为5.从Linux2.0x开始,ttS.Sxx设备既能用于输人也能用于输出,且在Linux2.2.x版本中,CHaX已经废弃不用.Linux串行通信设备和windows操作系统中的串口对应如表1所示:表1串口设备特征表1lnu输^1王设1次世1u输出1主设毽PC机上对串奸设备名称备号备号『串行设备
7、名稀l号I备三J应的串.Ⅲ∞-14I6{Jm,Ⅲ5—rIM1一——L_——十—_}一—————一一一———!!!LJ!.i竺J!!!一/de~ltyZ',7.14J66/妇/cua25『66ICOM3——————}————卜I————————————————一————d'1y531I671,dev/eu~15-j6JCOIJnux通常的发行套件都应该已经正确地建立了这些设备.如果系统中缺少某些设备可以用mknod指令建立之.如建立ttvS0设备的操作指令如下:mknod—ol666idev/t~SOc464或者在/dev目录下运行设备制作
8、脚本程序MAKEDEV:/MAKEDEVttyS01.2RS.485通信卡的安装与配置Rs一485系列通信卡在工业测控领域应用非常广泛.笔者使用的是研华公司的PCL-846/8474口RS.4