串行端口依靠特殊的控制器芯片通用异步接收/传输器(UART)来实现自己的功能。UART芯片从计算机的系统总线获得并行输出,然后将其转换成串行形式,以便通过串行端口传输。为了提高效率,大多数UART芯片都内置有16到64千字节的缓冲区。利用这个缓冲区,芯片便可以在处理要流向串行端口的数据的同时,缓存从系统总线流入的数据。大多数标准串行端口的最大传输速率为115Kbps(千比特每秒),增强型串行端口(ESP)和超级增强型串行端口(Super ESP)等高速串行端口可以实现460Kbps的数据传输速率。下面这个40针的双列直插封装(DIP)芯片是NS16550D UART芯片的一种型号。
适用于串行端口的外部连接器可以是9针脚的,也可以是25针脚的。最初,串行端口的主要用途是将调制解调器连接到计算机上。针脚的功能分配反映了这一点。下面,让我们详细了解一下在连接调制解调器时,每个针脚都有何作用。
25针连接器: 1.传输数据——计算机向调制解调器发送信息。 2.接收数据——计算机接收调制解调器发送过来的信息。 3.请求发送——计算机询问调制解调器是否可以发送信息。 4.同意发送——调制解调器通知计算机可以发送信息。 5.数据集就绪——调制解调器通知计算机自己已准备好通话。 6.信号地线——针脚接地。 7.已接收线路信号检测器——确定调制解调器是否连接到了可用的电话线路。 8.未使用:传输当前回路返回值(+) 9.未使用 10. 未使用:传输当前回路数据(-) 11. 未使用:接收当前回路数据(+) 12. 数据终端就绪——计算机通知调制解调器自己已准备好通话。 13. 振铃指示器——发起呼叫后,计算机指示检测到振铃的信号(发送自调制解调器)已收到。 14. 未使用:接收当前回路返回值(-)
然后通过针脚发送的电压可以是以下两种状态之一:开或关。开(二进制值“1”)表示该针脚正在传输-3到 -25伏之间的信号,而关(二进制值“0”)表示该针脚正在传输+3到+25伏之间的信号。 串行通信一个很重要的方面就是流控制的概念。利用流控制,一个设备便能够通知另一个设备暂时停止发送数据。启用流控制需要用到命令“请求发送”(RTS)、“同意发送”(CTS)、“数据端就绪”(DTR) 和“数据集就绪”(DSR)。