- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Delphi第10章_串口通信编程精要
; 用Delphi xe8实现串口通信,最常用的几种方法为:使用API函数、使用组件(如MSComm等)或者在Delphi中调用其他串口通信程序。
10.1 RS-232C标准
所谓串行通信接口标准,是指串行通信接口与外设的信号连接标准。
实际中常用的串行通信接口标准有3种:RS-232C,RS-422A/423A和20mA电流环。常用的PC机都配置了RS-232C标准接口。RS-232C标准常简称为RS-232。; RS-232C的定义包括电气特性(如电压值)、机械特性(如接头形状)及功能特性(如脚位信号)等。
串行通信接口基本功能是:在发送时,把CPU送来的并行码转换成串行码,逐位地依次发送出去;在接收时,把发送过来的串行码逐位地接收,组装成并行码,并行地发送给CPU去处理。这种串行到并行转换的功能,常用硬件电路来实现,这种硬件电路叫做串行通信接口。
普通的Modem通常都是通过RS-232C串行口信号线与计算机连接。 ; 根据RS-232C标准规定,接口电路采用一对物理D型连接器:DTE设备应该有一个D型插头接口,DCE设备应该有一个D型插座接口。
D型连接可以是25芯(简称为DB25),也可以是9芯(简称为DB9)。RS-232C引脚分配如图10-1所示。;10.1.1信号连接
RS-232C规定使用一种DB25连接器,其中20个脚作了定义,9、10、11、18、25未作定义。
RS-232C串行口信号分为3类:传送信号、联络信号和信号地。
1.传送信号(TxD和RxD)
传送信号是经由(发送数据信号线,引脚2)传送和(接收数据信号线,引脚3)接收的信息格式即一个传送单位(字节)由起始位、数据位、奇偶校验和停止位组成。 ;2.联络信号(RTS、CTS、 DTR、DSR、DCD和RI等6个信号)
RTS(请求传送,引脚4),是PC向Modem发出的联络信号。高电压表不PC机请求向Modem传送数据。
CTS(清除发送,引脚5),是Modem向PC机发出的联络信号。高电压表示Modem响应PC发出的RTS信号,且准备向远端Modem发送数据。
DTR(数据终端就绪,引脚),是PC向Modem发出的联络信号。高电压表示PC机处于就绪状态,本地Modem和远端Modem之间可以建立通信信道。若为低电平,则强迫Modem终止通信。 ; DSR(数据装置就绪,引脚),是Modem向PC发出的联络信号。它指出本地Modem的工作状态,高电压表示Modem没有处于测试通话状态,可以和远端Modem建立通道。
DCD(传送检测,引脚),是Modem向PC发出的状态信号,高电压表示本地DCE接收远端Modem发来的载波信号。
RI(铃指示,引脚),Modem向PC发出的状态信号。高电压表示本地Modem收到远端Modem发来的振铃信号。
3.SG(信号地)
SG(信号地,引脚)为相连的PC和Modem提供同一电势参考点。;10.1.2 握手
DTE和DCE之间要实现双向通信,至少需要3条信号线:TxD使数据从DTE到ECE。RxD使数据从ECE到ETE,SG为信号地。
必须使用握手信号,它提供了一种控制数据流的方法,即接收设备可以控制发送设备的数据发送。
在异步串行通信中,这称之为握手(handshaking)或流量控制(flow control)。握手控制可以具体分为硬件握手(硬件流控)和软件握手(软件流控)。;1.硬件握手
硬件握手是使用专门的握手电路去控制数据的传输。当接收设备准备好之后,就通过专用的握手电路传送一个正电压给发送设备,指示发送设备数据。如果接收传送一个负电压给发送设备,则指示发送设备停止发送数据。
为了完成数据通信需要有3类电路:数据线、信号线和握手线。
(1)DTE到DCE
为了控制DTE的发送数据,DCE使用DSR信号作为主握手信号去通知DTE已做好接收数据库的准备。当通知DTE暂停发送数据时,置DSR无效。;(2)DCE到DTE
为了控制DCE的数据发送,DTE使用DTR信号作为主握手信号去通知DCE已做好接收数据的准备。当通知DCE暂停发送数据时,置DTR无效。
DTE还使用RTS信号作为第二握手信号控制DCE设备。仅当这两条握手线都有效时,DCE才发送数据。;2.软件握手
软件握手的原理机制与硬件握手基本相同,不同的握手信号是在数据线(TxD和RxD)上进行传送的,而不是在专门握手线上传送。这是因为软件握手信号是由特殊字符组成的,所以传送这些字符必须使用数据电路,而不是使用专门握手电路。这种方法常用在直接连接或通过Modem连接的两台计算机之间进行双向通信的场合。
软件握手最常用的协议是XO
文档评论(0)