通用异步串口扩展芯片GM8123/25的原理和应用
REN = 1;
(等待接收处理)
}
void CommReceive(void) interrupt 4
{
if(RI)
{
switch(P1&0x07) //判断SRADD0~2的状态确定接收数据来自哪一个子串口
{
case 0:
{ReceiveBuff0=SBUF; //读命令字存入ReceiveBuff0
}
break;
case 1:
{ReceiveBuff1=SBUF; //子通道1接收的数据存入ReceiveBuff1
}
break;
。。。。。。
default:
break;
}
RI = 0;
}
}
该芯片的单通道模式适用于各从机不需要同时工作的系统,具体应用方法在此不做详述,请参
考国腾微电子有限公司发布的《GM812X应用手册》。
四.结束语
利用GM8123/25进行串口扩展,有以下优点:
1、 控制简单。该芯片利用软件设置工作方式,最大限度地减少控制线,不需要占用太多主机的系统资源,同时又保证使用的简便性。
2、 应用灵活。该芯片具备两种工作模式、多种工作波特率、10位或11位数据帧长可选,用户可根据自己的系统需求灵活选择。
3、 通用性强。该芯片设计时充分考虑各种用户的需求,保证了芯片的通用性,与标准串口通讯格式完全兼容,同时提供多种可选设置,适用于大多数串口通讯系统。
4、 工作波特率高。该芯片子串口在单通道模式下波特率支持20Mbps,多通道模式下支持38400bps,此波特率完全能满足一般的串口通讯的需求。
5、 性能稳定。硬件实现串口比软件实现串口更能保证串行通讯的稳定性,同时每bit采样16次,保证了数据的正确性。
6、 波特率误差小。输出波特率误差小于0.2%,输入波特率误差要求小于2.8%。
该芯片不足之处在于:不满足超低功耗应用要求;多通道模式下,所有子串口工作波特率只能设置成统一值,不适用于各从机工作波特率不一致、又要求同时工作的系统。
《通用异步串口扩展芯片GM8123/25的原理和应用(第3页)》