串口扩展,uart扩展,串口扩展485接口
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
串口扩展方案
基于VK3366的串口扩展串口方案
二、技术领域
电子信息
通信工程
三、现有技术的技术方案
3.1 软件模拟法:
可根据串行通讯的传送格式,利用定时器和主机的I/O口来模拟串行通讯的时序,以达到扩展串口的目的。接收过程中需要检测起始位,这可以使用查询方式或者在端口具有中断功能的主机中也可以使用端口的中断进行处理。接收和发送过程中,对定时的处理既可以使用查询方式也可以使用定时器中断方式。为了确保数据的正确性,在接收过程中可以在检测异步传输的起始信号处加上一些防干扰处理,如果是无线传输系统,在接收每个位时可以采用多次采样。对于有线系统来说,1次采样就够了,软件模拟串口还是有它自身的一些不足,面临着采样速度比较慢,采样方式还是不如硬件采样方式准确,抗干扰能力也差很多。
3.2基于TL16C554的串行口扩展
TL16C554是TI公司生产的4通道异步收发器集成芯片。对TL16C554串行通道的控制,是通过对控制寄存器LCR、IER、DLL、DLM、MCR和FCR编程来实现的。这些控制字决定字符长度、停止位的个数、奇偶校验、波特率以及调制解调器接口。控制寄存器可以任意顺序写入,但是IER必须最后一个写入,因为它控制中断使能,如果后面还需要调整数据格式,波特率这些就比较困难,操作也不够灵活。串行通道内的波特率发生器(BRG)允许时钟除以1至65535之间的任意数,BRG根据其不同的三种通用频率中的一种来决定标准波特率。
3.3 基于GM8123/25系列芯片的串行口扩展
GM8123/25系列串口扩展芯片可以全硬件实现串口扩展,通讯格式可设置,并与标准串口通讯格式兼容。GM8125可扩展5个标准串口,通过外部引脚选
择串口扩展模式:单通道工作模式和多通道工作模式。单通道模式下,无需设置芯片的通讯格式,子串口和母串口以相同的波特率工作,同一时刻只允许一组子串口和母串口通讯,工作子串口由地址线选择。单通道工作模式适用于所有从机不需要同时通讯,并且通讯过程完全由主机控制的系统。多通道模式下,各子串口波特率相同,允许所有子串口同时与母串口通讯,母串口以子串口波特率的6倍工作。发送时由地址线选择用来发送数据的子串口;接收时子串口能主动响应从机发送的数据,再由母串口发送给主机,同时由地址线返回接收到数据的子串口地址,主机在接收到子串口送来的数据后,可以根据地址线的状态判断数据是由哪一个从机发送的。
多通道工作模式下,在进行数据通讯前要对芯片进行工作方式设置,包括串口帧格式设置和通讯波特率设置。
通过串行口和控制引脚相互配合可对芯片进行工作方式设置,引脚MS为0、且STADD2~STADD0为000时写命令字,引脚MS为1、STADD2~STADD0为000时读命令字。进行工作方式设置时,芯片的帧格式和母串口工作波特率与上一次进行数据通讯时一致;而复位后的帧格式为11bit,母串口波特率为7200bps。
显然这款芯片还是有其不足的地方:首先是需要发送和接收数据时的地址控制线,占用了较多的系统资源,对于资源比较紧张的控制器来说,这点是比较难也解决的;其次是发送数据和接收数据都必须去操作控制线,这样操作起来比较复杂,而且实时性也比较差些;再次是数据格式,波特率这些修改起来比较麻烦。
3.4 基于SP2338的串行口扩展
SP2338是采用低功耗CMOS 工艺设计的通用异步串行口扩展芯片,它可轻松将主机原有的1个串行口扩展成3 个全新的全双工串行口。
SP2338适用于1个起始位、8个数据位、1个停止位的多串口系统,也就是说其帧格式是不可编程的。主机通过改变ADRI1、ADRI0地址线状态的方式选择3个子串口中的任意一个,3个子串口的地址分别为00、01、10。地址11用于执行SP2338 芯片本身的复位指令0x35 或0xB5、睡眠指令0x55或0xD5、延时指令0x00。向RX0~RX3中的任意一个接收端口写任意数据即可将
SP2338唤醒,但由于SP2338的唤醒时间需要25ms左右,故用于芯片唤醒的数据将不会被主机接收。因此,可以先发送一个字节数据用于唤醒芯片,延时25ms后即可进行正常的数据传输。
未使用的输入端口,如RX0、RX1、RX2等必须连接到VCC;未使用的输出端口,如TX0、TX1、TX2等必须悬空;未使用的ADRI0、ADRI1必须连接到GND。
主机收发数据时序为:主机TX3接收到一个字节后应立即读取SP2338的输出地址ADRO0、ADRO1的状态,判断接收到的数据来自哪个子串口;主机发送数据时,首先通过ADRI0、ADRI1选择某一个子串口,再向TX3写将发送的数据。
从对SP2338的操作来看,通过这款芯片来扩展串口,也有些不足的地方,首先,收发数据的时候,需要地址控制线,占用较多的系统资源;其次,数据格式比较单一,只支持一种数据格式。最后,对电路设计要求比较高,系统抗干扰能力比较差。
四、现有技术的缺点及本申请提案要解决的技术问题
4.1 基于GM8125的串口扩展方案
图1 GM8125与主机的连接图
基于GM8125的串口扩展串口方案,与本方案比较接近,从GM8125的使用中,我们不难看出在该方案中存在如下一些不足的地方:
1、需要占用的系资源较多,除了基本uart接口,还需要发送和接收地址控制线。
2、操作复杂,在发送和接收数据的时候除了要操作uart,还需要操作不同的地
址控制线。
3、扩展后的功能单一。仅仅只能当作最基本的uart,数据格式单一,通信速率
可调性差,主串口和子串口只能以固定的速率进行通信。
4.2基于vk3366的串口扩展原理框图
图2 VK3366与主机的连接图
1、占用系统资源较少,最少只需要接收(MRX)和发送(MTX)端口。解决了单片
机系统资源紧张的问题。
2、操作简单,只需要通过uart发送数据,就可以控制芯片的数据发送和接收,
不需要其他地址线和控制线,只需要操作相关寄存器,就能完成数据收发。
还有可靠的中断系统,通信的实时性比较好。
3、仅仅只需要一个标准3线串口就可以扩展出4个多功能串口,除了能实现基
本的串口通信的同时,还能实现485自动数据收发和网络地址自动识别,流量控制.而且还扩展出了8个通用GPIO和MODEM控制接口等诸多扩展功能。
五、本申请提案的技术方案的详细阐述
5.1基于VK3366串口扩展的原理框图
图3 VK3366串口扩展的原理框图
5.2基于VK3366串口扩展的原理图
图4 vk3366扩展的原理图
5.3硬件原图结构分析
从原理图我们可以看出,主要分为两个功能部分,一是主机部分,其二是vk3366及相关的扩展部分
主机电路主要包括:电源接口电路,复位电路,晶振电路
5.3.2 VK3366串口扩展模块
5.3.2 .1 VK3366的原理框图
图5 VK3366的原理框图
5.3.2 .2 VK3366在串口扩展时的特点
当主接口为UART时,VK3366将一个标准3线异步串口(UART)扩展成为4个增强功能串口(UART)。主接口UART在数据传输时可以选择需要转义字符和不需要转义字符两种模式。此外,主接口的UART可以通过引脚配置为红外通信模式。
每个子通道UART的波特率、字长、校验格式可以独立设置,最高可以提供