基于GM8123的串口扩展硬件解决方案
时间:07-23
来源:互联网
点击:
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的串行接口扩展为三个,分别与微型打印机、角度计数板及上位计算机连接。
在某些特定的情况下,单片机应用系统需要连接多个串行外设,如微型打印机、液晶模块、上位计算机等,此种情况称为点对多点通信方式;或者多个单片机应用系统通过串行接口连接到一台主控计算机上,称为多点对一点通信方式。通常单片机只提供一个异步串行通信接口(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,选择写入命令字
●对母串口写入命令字,命令字的格式如下:
![](../img/eec-Analog/Analog-136059t5mnnzvwdlg.jpg)
应注意的是,命令字的高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的串行接口扩展为三个,分别与微型打印机、角度计数板及上位计算机连接。
- 单片机与串行AD转换器TLC0834的接口设计(01-22)
- 单收/单发RS-232接口芯片 ADM101E及其应用(01-25)
- 基于单片机的通用型智能充电器设计(01-06)
- 一种通信用高频开关型整流器监控系统的实现方案(02-13)
- 基于16位单片机的逆变电源系统的设计(05-26)
- 便携式单片机控制液晶显示型心率计(03-12)