基于GM8123的串口扩展硬件解决方案

发布时间:2010-7-23 23:30    发布者:conniede
关键词: GM8123 , 串口扩展
1 引言

在某些特定的情况下,单片机应用系统需要连接多个串行外设,如微型打印机、液晶模块、上位计算机等,此种情况称为点对多点通信方式;或者多个单片机应用系统通过串行接口连接到一台主控计算机上,称为多点对一点通信方式。通常单片机只提供一个异步串行通信接口(SCI)。因此,上述两种情况下,都涉及串行接口的扩展问题。以下将针对点对多点通信的串口扩展,给出一种使用最新串口扩展接口器件GM8123的解决方案。

2 点对多点通信的硬件解决方案

目前,点对多点通信在扩展串行接口时,除了使用软件虚拟的方式,将单片机的普通I/O虚拟为异步串行接口外,更多的是采用硬件接口器件扩展方法。而硬件扩展串行接口,一方面可采用多路模拟开关,或使用门电路,按需要选通相应的串行通道,实现点对多点的通信;另一方面可使用专用的串口扩展器件扩展串行接口。前者的主要问题是占用较多的单片机硬件资源,更重要的是通信过程中的实时性较差。采用最新的专用串口扩展器件可有效地解决上述问题。

3 基于GM812X的典型串口扩展电路

GM812X是成都国腾公司生产的专用串口扩展器件,包括GM8123(一扩三)、GM8125(一扩五)两个主要型号。GM8123可以将一个全双工的标准串口扩展成3个标准串口,并能通过外部引脚控制串口扩展模式:单通道工作模式和多通道工作模式,既可以指定一个子串口和母串口以相同的波特率工作,也可以让所有子串口在母串口波特率基础上分频同时工作。母串口和子串口的工作波特率可由软件调节,而不需要修改外部电路和晶振频率。图1为GM8123构成的典型串口扩展电路。



由于GM8123串口扩展器件不具有上电复位功能,因此使用单片机的P3.7控制GM8123的复位端,复位信号低电平有效,并保持200 ms。器件复位后,内部所有的BUFFER和寄存器清零,此时器件的默认状态为:波特率1 200 b/s,数据格式为11位/帧。基于以上原因,在使用时,必须对器件进行初始化设置。初始化设置包括帧格式设置和通信波特率设置。

3.1 GM8123的初始化设置

初始化设置也就是对器件的工作方式进行设置,包括帧格式设置和波特率设置。器件工作方式设置仅多通道模式有效,在单通道模式下。则无需工作方式设置,并且已设置的命令字也不起作用。多通道模式下的工作方式设置如下:

●将地址线STADD1、STADD0置为00

●将MS置0,选择写入命令字

●对母串口写入命令字,命令字的格式如下:



应注意的是,命令字的高4位必须为全1,便于和无效数据相区别。命令字中的FL用于控制串行通信时的帧格式,"0"=10位,"1"=11位。BR2~BR0用于波特率设置,与波特率的关系如表1所示。


以上均是在多通道模式下对器件子串口的波特率设置。在此模式下,各个子串口的波特率是一致的,而对应母串口的波特率为子串口的4倍,由于母串口与单片机的异步串口连接,因此,单片机串口的波特率必须与GM8123器件的母串口波特率相一致。

必须注意:在完成工作方式设置后,必须将STADD1、STADD0置为非全0后,设置才会生效。

3.2 GM8123的工作模式

通过对模式控制引脚MS的设置,可使GM8123工作在单通道模式和多通道模式下。

3.2.1 单通道工作模式

当模式控制引脚MS为1时,GM8123工作在单通道模式下。在此模式下,任何时刻只允许一组子串口与母串口进行通信。器件的地址引脚用于选择期望与母串口相连接的子串口,外部单片机通过两条输入地址线和两条输出地址线指定和母串口连接的子串口。单通道下各地址线定义如表2所示。


3.2.2 多通道工作模式

当模式控制引脚MS=1时。GM8123工作在多通道工作模式下,它允许3个串口同时全双工工作。在此模式下,器件地址线STADD1、STADD0为输入口,由单片机控制发送数据的子串口,地址线SRADD1、SRADD0为输出口,用于向单片机返回接收数据的子串口地址。在该模式下,各个子串口的波特率相同,母串口的波特率为子串口的4倍。

基于以上分析,在点对多点通信的情况下,使用GM8123实现单片机串行接口的扩展,在不过分占用单片机硬件资源的前提下,具有写控制字对器件实施控制、各个子串口波特率可调以及串行通信的数据格式可选等特点,是点对多点通信方式下串行接口扩展的首选方式。

4 串口扩展应用实例

图2为GM8123串口扩展器件在单晶定向粘接系统中的应用电路。在图2的电路中,主控单片机通过串行通信接口,不但可实现对微型打印机的打印控制,还可以实时接收来自角度计数单元电路的实时角度信息。在获取角度信息后,还可根据用户需要,将计算后的单晶定向角度上传至计算机,实现信息存储。基于以上设计需要,设计中使用了一扩三串口扩展器件GM8123,将主控单片机P89V51RD2的串行接口扩展为三个,分别与微型打印机、角度计数板及上位计算机连接。


5 结束语

使用专用的串行口扩展器件实现单片机串行通信接口的扩展,在不影响单片机I/O口使用的前提下,具有接口电路简单、易于操作以及安全稳定性好等优点。在单晶定向粘接系统的应用中,通信性能稳定,在用户一年多的使用过程中,没有出现数据通信错误的现象。但在系统开发实验过程中发现,使用51单片机控制,需要在写人命令字后立即读取命令字,由于51单片机串口工作时序是发送停止位的同时将TI置1,如果此时立即将MS置1读取命令字,将导致器件还未接收到命令字字节的停止位就转入读命令字模式,使写入操作无法完成,所以编程时要注意在TI置1后至少延时1个机器周期以上的时间才能将MS置1,以保证器件有足够的时间完成写命令字操作。
本文地址:https://www.eechina.com/thread-16417-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表