串口编程实现通信.pdf

串口编程实现通信.pdf

ID:52240864

大小:211.57 KB

页数:5页

时间:2020-03-25

串口编程实现通信.pdf_第1页
串口编程实现通信.pdf_第2页
串口编程实现通信.pdf_第3页
串口编程实现通信.pdf_第4页
串口编程实现通信.pdf_第5页
资源描述:

《串口编程实现通信.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、2005年第2期漳州师范学院学报(自然科学版)No.2.2005年(总第48期)JournalofZhangzhouTeachersCollege(Nat.Sci.)GeneralNo.48文章编号:1008-7826(2005)02-0037-05串口通讯在Linux操作系统中的应用12陈磊松,许华荣(1.漳州师范学院物理系,福建漳州363000;2.福建师大福清分校数学与计算机系,福建福清350300)摘要:本文介绍了在linux操作系统下,如何通过串行通讯口和自定义通信协议来实现计算机之间或计算机与其它设备之间的数据传

2、输,以满足一些特定场合中安全的数据传输的需求.关键词:linux;串口;数据传输中图分类号:TP393.09文献标识码:A1引言随着计算机应用的日益普及和计算机网络技术的飞速发展,计算机之间的数据交换变得越来越频繁而重要,在进行数据交换的同时,网络安全又是面临的一个重大问题.由于微软的Windows操作系统非常容易受到攻击,目前,使用linux和unix操作系统的用户已经越来越多,基于linux操作系统下的数据交换问题也受到人们的关注.对于近距离的计算机之间的数据交换,通常可以通过组建局域网、软盘拷贝、硬盘拷贝等,本文介绍的

3、是使用串行通讯口的“对拷线”.如果使用局域网,必然要通过ipx/spx、netbeui、Tcp/ip等协议,由于这些协议都是公开的,所以不管防火墙设置多么严密,黑客总是能够找到漏洞进行攻击.所以现在大多数的政府机关和企业公司通常都会有两个网络,一个是对外公开的外网;而另一个则是内部使用的内网.通常外网是与公众互联网连接且信息是对外公开的,而内网的信息是对外保密的,所以为了防止内网的保密信息被窃取或恶意破坏,这两个内、外网之间是绝对物理隔离的.当两个网络之间需要交换信息的时候,通常是由网络管理员用硬盘或其它媒介手工在两者之间进

4、行传递,这样的话,一方面实时性差,通常要一段时间才能更新;另一方面比较烦琐,需要有专人每隔一段时间手工操作.这时我们就可以利用串口在两个网络之间传递消息或文件,因为在串口通讯中我们可以自己定义通信协议和规则,而不需要通过Tcp/ip协议,这样只要外界不知道我们定义的串口通信协议,就无法通过串口来窃取和破坏内网的信息.网络管理员则可以很方便地在使用串口信息和文件传送程序在两个网络之间传递信息和文件,这将非常方便,并且省去了许多的人力和物力.同样,对于远程计算机之间的数据通讯,也可以通过计算机的串口,借用普通的电话线和modem

5、实现计算机之间的远程高速数据通讯.而且这种方法比起单纯使用邮政电话网具有很高的保密性和速度,所以这种方法适合于一些要求较高速度传输具有一定保密性质的数据的场合.2Linux操作系统中的串口通信设备2.1Linux中的设备文件在Linux环境下,文件是抽象的,它将几乎所有的东西都按文件来对待,所以我们可以象操作普通文件一样去打开、关闭、读取和写入不同的串口终端设备.文件抽象提供了一个一致的、统一的接口收稿日期:2004-12-11作者简介:陈磊松(1973-),男,福建福安人,讲师,本科.38漳州师范学院学报(自然科学版)20

6、05年用来和所有的设备和文件类型进行交互.这些设备文件(devicefile)也称为特殊文件(specialfile),该文件提供了到大多数物理设备的接口.它们分为字符型特殊文件和块特殊文件.字符型特殊文件一次只能读出或写入一个字节或字符的数据;块特殊文件必须以一定大小的块来读出或写入数据.而串口终端设备就属于字符型特殊文件.所以我们可以象操作普通文件一样,利用文件描述符使用open、create、close、read、write、fchmod、select等调用来设置和操纵串口.这些调用的使用方法与普通文件大体一致.Lin

7、ux操作系统下串口等通信资源是作为串行通信终端设备ttySxx实现的.包括标准pc串口(COM1~COM4)和可扩展的多口串行通信卡,均可方便地安装、使用.一般来说,Linux的串行通信终端ttySxx的驱动程序能够支持所有使用8250,I6450,I6550,I6550A及其兼容的UART芯片的串口卡.通常Linux的内核编译配置时已经加入串口支持,因此当Linux启动时会自动检测到标准的串口设备.对于扩展的多口串行通信卡,则采用在系统启动的配置脚本中配置/etc/serial.conf文件或调用setserial命令动态

8、加载.Linux操作系统中的所有设备以设备文件名的方式存储在目录/dev中,其中每一个设备由一个主设备号和一个次设备号唯一确定.对于串口设备,ttySxx的主设备号为4,它既能用于输入也能用于输出.Linux串行通信设备和Windows操作系统中的串口对应如表1所示.表1串口设备特征表Li

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

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

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