html 门户网站模板,养老网站建设的意义,成都网站建设创意,营销网站建设资料串口是串行接口#xff08;serial port#xff09;的简称#xff0c;也称为串行通信接口或COM接口。串口通信是指采用串行通信协议#xff08;serial communication#xff09;在一条信号线上将数据一个比特一个比特地逐位进行传输的通信模式。串口按电气标准及协议来划分… 串口是串行接口serial port的简称也称为串行通信接口或COM接口。串口通信是指采用串行通信协议serial communication在一条信号线上将数据一个比特一个比特地逐位进行传输的通信模式。串口按电气标准及协议来划分包括RS-232-C、RS-422、RS485等。串行通信在串行通信中数据在1位宽的单条线路上进行传输一个字节的数据要分为8次由低位到高位按顺序一位一位的进行传送。串行通信的数据是逐位传输的发送方发送的每一位都具有固定的时间间隔这就要求接收方也要按照发送方同样的时间间隔来接收每一位。不仅如此接收方还必须能够确定一个信息组的开始和结束。常用的两种基本串行通信方式包括同步通信和异步通信。1串行同步通信同步通信SYNC:synchronous data communication是指在约定的通信速率下发送端和接收端的时钟信号频率和相位始终保持一致同步这样就保证了通信双方在发送和接收数据时具有完全一致的定时关系。同步通信把许多字符组成一个信息组信息帧每帧的开始用同步字符来指示一次通信只传送一帧信息。在传输数据的同时还需要传输时钟信号以便接收方可以用时针信号来确定每个信息位。同步通信的优点是传送信息的位数几乎不受限制一次通信传输的数据有几十到几千个字节通信效率较高。同步通信的缺点是要求在通信中始终保持精确的同步时钟即发送时钟和接收时钟要严格的同步常用的做法是两个设备使用同一个时钟源。在后续的串口通信与编程中将只讨论异步通信方式所以在这里就不对同步通信做过多的赘述了。2串行异步通信异步通信ASYNCasynchronous data communication又称为起止式异步通信是以字符为单位进行传输的字符之间没有固定的时间间隔要求而每个字符中的各位则以固定的时间传送。在异步通信中收发双方取得同步是通过在字符格式中设置起始位和停止位的方法来实现的。具体来说就是在一个有效字符正式发送之前发送器先发送一个起始位然后发送有效字符位在字符结束时再发送一个停止位起始位至停止位构成一帧。停止位至下一个起始位之间是不定长的空闲位并且规定起始位为低电平逻辑值为0停止位和空闲位都是高电平逻辑值为1这样就保证了起始位开始处一定会有一个下跳沿由此就可以标志一个字符传输的起始。而根据起始位和停止位也就很容易的实现了字符的界定和同步。显然采用异步通信时发送端和接收端可以由各自的时钟来控制数据的发送和接收这两个时钟源彼此独立可以互不同步。下面简单的说说异步通信的数据发送和接收过程。▶ 数据格式在介绍异步通信的数据发送和接收过程之前有必要先弄清楚异步通信的数据格式。异步通信规定传输的数据格式由起始位start bit、数据位data bit、奇偶校验位parity bit和停止位stop bit组成如图1所示该图中未画出奇偶校验位因为奇偶检验位不是必须有的如果有奇偶检验位则奇偶检验位应该在数据位之后停止位之前。图1 异步通信数据格式1起始位起始位必须是持续一个比特时间的逻辑0电平标志传输一个字符的开始接收方可用起始位使自己的接收时钟与发送方的数据同步。2数据位数据位紧跟在起始位之后是通信中的真正有效信息。数据位的位数可以由通信双方共同约定一般可以是5位、7位或8位标准的ASCII码是0~1277位扩展的ASCII码是0~2558位。传输数据时先传送字符的低位后传送字符的高位。3奇偶校验位奇偶校验位仅占一位用于进行奇校验或偶校验奇偶检验位不是必须有的。如果是奇校验需要保证传输的数据总共有奇数个逻辑高位如果是偶校验需要保证传输的数据总共有偶数个逻辑高位。举例来说假设传输的数据位为01001100如果是奇校验则奇校验位为0要确保总共有奇数个1如果是偶校验则偶校验位为1要确保总共有偶数个1。由此可见奇偶校验位仅是对数据进行简单的置逻辑高位或逻辑低位不会对数据进行实质的判断这样做的好处是接收设备能够知道一个位的状态有可能判断是否有噪声干扰了通信以及传输的数据是否同步。4停止位停止位可以是是1位、1.5位或2位可以由软件设定。它一定是逻辑1电平标志着传输一个字符的结束。5空闲位空闲位是指从一个字符的停止位结束到下一个字符的起始位开始表示线路处于空闲状态必须由高电平来填充。▶ 数据发送过程清楚了异步通信的数据格式之后就可以按照指定的数据格式发送数据了发送数据的具体步骤如下1初始化后或者没有数据需要发送时发送端输出逻辑1可以有任意数量的空闲位。2当需要发送数据时发送端首先输出逻辑0作为起始位。3接着就可以开始输出数据位了发送端首先输出数据的最低位D0然后是D1最后是数据的最高位。4如果设有奇偶检验位发送端输出检验位。5最后发送端输出停止位逻辑1。6如果没有信息需要发送发送端输出逻辑1空闲位如果有信息需要发送则转入步骤2。▶ 数据接收过程在异步通信中接收端以接收时钟和波特率因子决定每一位的时间长度。下面以波特率因子等于16接收时钟每16个时钟周期使接收移位寄存器移位一次为例来说明。1开始通信信号线为空闲逻辑1当检测到由1到0的跳变时开始对接收时钟计数。2当计到8个时钟的时候对输入信号进行检测若仍然为低电平则确认这是起始位而不是干扰信号。3接收端检测到起始位后隔16个接收时钟对输入信号检测一次把对应的值作为D0位数据。4再隔16个接收时钟对输入信号检测一次把对应的值作为D1位数据直到全部数据位都输入。5检验奇偶检验位。6接收到规定的数据位个数和校验位之后通信接口电路希望收到停止位逻辑1若此时未收到逻辑1说明出现了错误在状态寄存器中置“帧错误”标志若没有错误对全部数据位进行奇偶校验无校验错时把数据位从移位寄存器中取出送至数据输入寄存器若校验错在状态寄存器中置“奇偶错”标志。7本帧信息全部接收完把线路上出现的高电平作为空闲位。8当信号再次变为低时开始进入下一帧的检测。以上就是异步通信中数据发送和接收的全过程了。3几个概念为了更好的理解串口通信我们还需要了解几个串口通信当中的基本概念。1发送时钟发送数据时首先将要发送的数据送入移位寄存器然后在发送时钟的控制下将该并行数据逐位移位输出。2接收时钟在接收串行数据时接收时钟的上升沿对接收数据采样进行数据位检测并将其移入接收器的移位寄存器中最后组成并行数据输出。3波特率因子波特率因子是指发送或接收1个数据位所需要的时钟脉冲个数。串口接头常用的串口接头有两种一种是9针串口简称DB-9一种是25针串口简称DB-25。每种接头都有公头和母头之分其中带针状的接头是公头而带孔状的接头是母头。图2 DB-9外观图由图2可以看出在9针串口接头中公头和母头的管脚定义顺序是不一样的这一点需要特别注意。那么这个管脚都有什么作用呢9针串口和25针串口常用管脚的功能说明如图3所示。图3 9针串口和25针串口常用管脚的功能RS-232C标准常用的串行通信接口标准有RS-232C、RS-422、RS-423和RS-485。其中RS-232C作为串行通信接口的电气标准定义了数据终端设备DTE:data terminal equipment和数据通信设备DCE:data communication equipment间按位串行传输的接口信息合理安排了接口的电气信号和机械要求在世界范围内得到了广泛的应用。1电气特性RS-232C对电器特性、逻辑电平和各种信号功能都做了规定。在TXD和RXD数据线上逻辑1为-3~-15V的电压。逻辑0为3~15V的电压。在RTS、CTS、DSR、DTR和DCD等控制线上信号有效ON状态为3~15V的电压。信号无效OFF状态为-3~-15V的电压。由此可见RS-232C是用正负电压来表示逻辑状态与晶体管-晶体管逻辑集成电路TTL以高低电平表示逻辑状态的规定正好相反。2信号线分配RS-232C标准接口有25条线其中4条数据线、11条控制线、3条定时线以及7条备用和未定义线。那么这些信号线在9针串口和25针串口的管脚上是如何分配的呢9针串口和25针串口信号线分配如图4所示。图4 9针串口和25针串口信号线分配图下面对这些信号线做个简单的介绍。1数据装置准备好DSR有效状态ON表示数据通信设备处于可以使用状态。2数据终端准备好DTR有效状态ON表示数据终端设备处于可以使用状态。这两个设备状态信号有效只表示设备本身可用并不说明通信链路可以开始进行通信了能否开始进行通信要由下面的一些控制信号决定。3请求发送RTS用来表示数据终端设备DTE请求数据通信设备DCE发送数据。4允许发送CTS用来表示数据通信设备DCE已经准备好了数据可以向数据终端设备DTE发送数据是对请求发送信号RTS的响应。请求发送RTS和允许发送CTS用于半双工的通信系统中在全双工的系统中不需要使用请求发送RTS和允许发送CTS信号直接将其置为ON即可。5数据载波检出DCD用于表示数据通信设备DCE已接通通信链路告知数据终端设备DTE准备接收数据。6振铃指示RI当数据通信设备收到交换台送来的振铃呼叫信号时使该信号有效ON通知终端已被呼叫。7发送数据TXD数据终端设备DTE通过该信号线将串行数据发送到数据通信设备DCE。8接收信号RXD数据终端设备DTE通过该信号线接收从数据通信设备DCE发来的串行数据。9地线SG、PG分别表示信号地和保护地信号线。IT技术分享社区个人博客网站https://programmerblog.xyz文章推荐程序员效率画流程图常用的工具程序员效率整理常用的在线笔记软件远程办公常用的远程协助软件你都知道吗51单片机程序下载、ISP及串口基础知识硬件断路器、接触器、继电器基础知识