Linux串口编程详解

Linux串口编程详解

ID:39465487

大小:385.50 KB

页数:25页

时间:2019-07-04

Linux串口编程详解_第1页
Linux串口编程详解_第2页
Linux串口编程详解_第3页
Linux串口编程详解_第4页
Linux串口编程详解_第5页
资源描述:

《Linux串口编程详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Linux串口编程详解串口本身,标准和硬件 †串口是计算机上的串行通讯的物理接口。计算机历史上,串口曾经被广泛用于连接计算机和终端设备和各种外部设备。虽然以太网接口和USB接口也是以一个串行流进行数据传送的,但是串口连接通常特指那些与RS-232标准兼容的硬件或者调制解调器的接口。虽然现在在很多个人计算机上,原来用以连接外部设备的串口已经广泛的被USB和Firewire替代;而原来用以连接网络的串口则被以太网替代,还有用以连接终端的串口设备则已经被MDA或者VGA取而代之。但是,一方面因为串口本

2、身造价便宜技术成熟,另一方面因为串口的控制台功能RS-232标准高度标准化并且非常普及,所以直到现在它仍然被广泛应用到各种设备上。某些计算机使用一个叫做UART的集成电路来作为串口设备。这个集成电路可以进行字符和异步串行通讯序列之间的转换,并且可以自动地处理数据的时序。而某些低端设备则会让CPU直接通过输出针来传送数据,这种技术叫做bit-banging。因为“串口”,RS-232和UARTs基本上总是在同一个语境中出现,所以这些名词通常会被搞混。下面逐一解释以下一些重要的名词和术语。↑什么是串

3、行通信 †计算机可以每次传送一个或者多个位(bit)的数据。“串行”指的式每次只传输一位(1bit)数据。当需要通过串行通讯传输一个字(word)的数据时,只能以每次一位的方式接收或者发送。每个位可能是on(1)或者off(0)。很多技术术语中经常用mark表示on,而space表示off。串行数据的速度通常用每秒传输的字节数bits-per-second(bps)或者波特率(baud)表示。这个值表示的是每秒钟被送出的0和1的个数。很久很久以前,300bps就是很快的速度了,而现在的电脑可以处

4、理高达430,800的RS-232速率。表示波特率的单位还有kpbs和Mbps,1kps=1000bps而1Mbps=1000kbps。一般有人提到串行设备的时候,它通常说可能是某种数据通讯设备-DCE(DataCommunicationsEquipment)或者数据终端设备-DTE(DataTerminalEquipment)。它们之间的区别非常简单,每个信号对,比如传送和接收,它们俩正好是相反的。如果需要将两个DTE或者DCE设备连接起来的话,需要适配器或者交叉线缆将信号对交换。↑什么是RS

5、-232 †RS-232是EIA(ElectronicIndustriesAssociation)定义的串行通信的电器接口。RS-232事实上有三种(A,B和C),它们分别采用不同的电压来表示on和off。最被广泛使用的是RS-232C,它将mark(on)比特的电压定义为-3V到-12V之间,而将space(off)的电压定义到+3V到+12V之间。虽然RS-232C标准说信号最远被传输8m,但事实上你可以使用它传输更长的距离,直到信号波特率已经小到不行了为止。RS-232的连结线中除去用来传

6、入传出数据的电线,还有一些用来提供时序,状态和握手的电线:RS-232针脚定义DB-25针脚描述针脚描述针脚描述针脚描述针脚描述1EarthGround6DSR-DataSetReady11Unassigned16SecondaryRXD21SignalQualityDetect2TXD-TransmittedData7GND-LogicGround12SecondaryDCD17ReceiverClock22RingDetect3RXD-ReceivedData8DCD-DataCarrier

7、Detecter13SecondaryCTS18Unassigned23DataRateSelect4RTS-RequestToSend9Reserved14SecondaryTXD19SecondaryRTS24TransmitClock5CTS-ClearToSend10Reserved15TransmitClock20DTR-DataTerminalReady25UnassignedDB-9针脚名称全名方向(主机外设)3TDTransmitData->2RDReceiveData<-7RT

8、SRequestToSend->8CTSClearToSend<-6DSRDataSetReady<-4DTRDataTerminalReady->1CDDataCarrierDetect<-9RIRingIndicator<-5-SignalGround 另外两个比较常见的串行接口的标准式RS-422和RS-574。RS-422使用更低的电压和差分信号,这样可以将传输距离扩张到300m。而RS-574定义了通常可以见到的用在电脑上的9针连接器和电压。↑信号定义 †RS-232标准定义了18个不

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

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

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