曾 波
(中国电子科技集团公司第十研究所,成都 610036)
串口通信(Serial Communication),指的是计算机和外接设备之间通过数据线,地线等按位进行传输数据的一种通信方式,属于串行通信。而异步串口通信是指通信双方以一个字符(包括特定的附加位)作为数据传输单位,且发送端发送字符的间隔时间不一定,具有不规则数据段传送特性的串行数据传输。其中MAX3233EEWP 便是异步串口通信中的常用器件。
MAX3233EEWP 是美国MAXIM 公司生产的双RS-232收发器,能支持同时将两路RS-232串口信号转换为TTL 信号。其内部逻辑如图1所示:
图1 内部逻辑示意图
器件的8脚(R1in)与20脚(R2in)为接收脚,可分别接收两路RS232 串口信号,转换成TTL 信号后分别从6 脚(R1out)与1 脚(R2out)输出,4 脚(T1in)与3 脚(T2in)则分别接收两路TTL 信号,转换成RS232信号后分别从7脚(T1out)与19脚(T2out)输出;9脚(VCC)为电源脚(3.3V),18脚为地;2脚(INVALID)为信号检测输出端,低有效;5脚(FORCEON)为输入开起,高电平有效,10脚(FORCEOFF)为输入关闭,低电平有效;11至17脚为充电泵功能,一般不使用。
器件特点:静电放电保护功能;1uA 供电电流;单电源供电(+3.0V-+3.6V);达250kpbs 的数据传输速率;6V/us 的电压转换速率。
MAX3233EEWP 使用的是异步串行通信协议,其数据格式如图2所示,每个字符(每帧信息)由4个部分构成:第1位是起始位,规定为低电平0;第2 ~9位是数据位,代表传输的有效信息;1位奇偶校验位(可无);1 ~2位停止位,规定为高电平1。
图2 异步串口数据格式
在发送间隙,即空闲时,通信线路总是处于逻辑“1”状态,每个字符数据均以逻辑“0”开始,以逻辑“1”停止。
MAX3233EEWP 是主控端与其他集成电路之间的信号转换桥梁,其典型布局框图如图3所示:
图3 电路框图
主控端下发串口数据,由MAX3233EEWP 转换成逻辑/信号处理集成电路可识别的TTL 数据,可控制集成电路实现复杂的功能。为了测试简单,可将电路简化:器件的8脚(R1in)接入计算机串口发,7脚(T1out)连接计算机串口收,4脚(T1in)与6脚(R2out)相连进行自回环;将5脚(FORCEON)和10脚(FORCEOFF)拉高,使器件一直处于工作状态。
使用计算机中的串口调试工具软件以16进制发送一组数据:C0 7E 06 00 00 12 3F
示波器探头接至器件的6脚,将示波器调至触发档,可抓取串口数据信号,波形如图4所示:
图4 波形
图4中信号波形的每个字符数据位为8位,无校验位,如果不知道数据波特率,可用示波器光标对齐波形中最窄的一格,测量出其时间宽度,如图4中最窄宽度为80us,从第一个下降沿开始算起,80us 为一位依次读取波形值,低电平为0,高电平为1,可以得到以下的二进制字符帧数据:
舍去每个字符帧一头一尾的起始位与数据位,可得:
再将每个字符帧数据前后翻转:
最后将每个字符帧转换成16进制可得:
这就是受控端所接收到的串口数据,与计算机发出的数据一致,证明传输过程中没有数据丢失或出现错误。
本文基于MAX3233EEWP 对其串口数据进行了解析。将串口数据进行解析可以更直观的了解串口数据所代表的含义,对电路中故障的排除有着十分重要的作用。