一种UART多主实时通信系统技术方案

技术编号:14569893 阅读:121 留言:0更新日期:2017-02-06 03:46
本发明专利技术公开了一种UART多主实时通信系统,包括单片机U1,CAN收发器U2,总线仲裁单元,发送控制单元。本发明专利技术的UART多主实时通信系统通过利用单片机的异步串行通信口UART驱动CAN收发器来实现多主实时通信,解决了现有的单片机通过扩展外挂CAN控制器的方式或者通过采取模拟I2C通信程序,增设握手信号的方式来实现多主实时通信,其硬件电路的成本高,软件设计的实时性差的问题,本发明专利技术不仅节省了电路的生产成本,同时,由于还具有不限定小数据包、可插入紧急报警的特点,所以其实时性比CAN协议的实时通信系统更优越。

【技术实现步骤摘要】

本专利技术涉及通信
,特别涉及一种UART多主实时通信系统
技术介绍
I2C接口与CAN接口都具有多主仲裁功能,通过I2C总线或CAN总线可以实现多主实时通信。然而现有的单片机,许多都不具备I2C接口与CAN接口,如果要实现多主实时通信,要么选择通过扩展外挂一个CAN控制器的方式,要么选择采取模拟I2C通信程序,通过增设握手信号的方式来完成,但是这两种实现方式,其硬件电路的成本都较高,软件设计的实时性也较差,而且,CAN接口为了保证通信系统的实时性,它限定一帧有效数据包为0到8个字节,这在许多实际通信系统中带来不便。
技术实现思路
本专利技术的目的在于提供一种UART多主实时通信系统,旨在解决针对现有的单片机通过扩展外挂CAN控制器的方式或者通过采取模拟I2C通信程序,增设握手信号的方式来实现多主实时通信,其硬件电路的成本高,软件设计的实时性差的问题。本专利技术是这样实现的,一种UART多主实时通信系统,包括单片机U1,CAN收发器U2,总线仲裁单元,发送控制单元,所述单片机U1的INT中断输入端连接所述总线仲裁单元,数据发送输出端TXD连接所述发送控制单元,P2.0输出端连接所述发送控制单元和所述CAN收发器U2的STB唤醒端,数据接收输入端RXD连接所述总线仲裁单元和所述CAN收发器U2的数据接收输出端RXD,所述CAN收发器U2的数据发送输入端TXD连接所述总线仲裁单元和所述发送控制单元,所述单片机U1和CAN收发器U2的电源正端VCC分别连接电源端,负端GND分别接地。进一步地,所述UART多主实时通信系统还包括去耦电容C1、C2和电阻R6、R7,所述去耦电容C1,C2分别连接在电源端和地之间,所述电阻R6连接在所述CAN收发器U2的CANH端和SPLIT端之间,所述电阻R7连接在所述CAN收发器U2的CANL端和SPLIT端之间。进一步地,所述总线仲裁单元包括三极管Q1,电阻R4和R1,所述发送控制单元包括三极管Q2、Q3,电阻R2、R3和R5,所述单片机U1的数据接收输入端RXD连接所述电阻R4的一端和所述CAN收发器U2的数据接收输出端RXD,所述电阻R4的另一端连接所述三极管Q1的集电极和所述单片机U1的INT端,所述三极管Q1的发射极连接电源端,所述三极管Q1的基极连接电阻R1的一端,电阻R1的另一端连接所述CAN收发器U2的数据发送输入端TXD,所述单片机U1的数据发送输出端TXD连接所述三极管Q2的发射极,所述三极管Q2的集电极连接所述CAN收发器U2的数据发送输入端TXD和所述电阻R3的一端,所述电阻R3的另一端连接电源端,所述三极管Q2的基极连接所述电阻R2的一端和所述三极管Q3的集电极,所述电阻R2的另一端连接电源端,所述三极管Q3的发射极接地,所述三极管Q3的基极连接所述电阻R5的一端,所述电阻R5的另一端连接所述单片机U1的P2.0端和所述CAN收发器U2的STB端。本专利技术的有益效果是:与现有技术相比,本专利技术的UART多主实时通信系统通过利用单片机的异步串行通信口UART驱动CAN收发器来实现多主实时通信,解决了现有的单片机通过扩展外挂CAN控制器的方式或者通过采取模拟I2C通信程序,增设握手信号的方式来实现多主实时通信,其硬件电路的成本高,软件设计的实时性差的问题,本专利技术不仅节省了电路的生产成本,同时,由于还具有不限定小数据包、可插入紧急报警的特点,所以其实时性比CAN协议的实时通信系统更优越。附图说明图1为本专利技术提供的一种UART多主实时通信系统的模块框图;图2为本专利技术提供的UART多主实时通信系统的一实施例的电路原理图;图3为字节收发位的示意图;图4为帧首字节位的示意图;图5为轮巡式通行信息帧协议格式示意图;图6为事件触发警报信息帧协议格式示意图;图7为通信信道的仲裁与控制逻辑时序图;图8为UART初始化程序的流程图;图9为主程序启动UART发送函数的流程图;图10为主程序处理UART接收解析函数的流程图;图11为仲裁外部中断的中断服务程序的流程图;图12为UART口发送中断的中断服务程序的流程图;图13为UART口接收中断的中断服务程序的流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示为本专利技术提供的一种UART多主实时通信系统的模块框图,本专利技术提供的UART多主实时通信系统包括单片机U1,CAN收发器U2,总线仲裁单元,发送控制单元,单片机U1的INT中断输入端连接总线仲裁单元,数据发送输出端TXD连接发送控制单元,P2.0输出端连接发送控制单元和CAN收发器U2的STB唤醒端,数据接收输入端RXD连接总线仲裁单元和CAN收发器U2的数据接收输出端RXD,CAN收发器U2的数据发送输入端TXD连接总线仲裁单元和发送控制单元,单片机U1和CAN收发器U2的电源正端VCC分别连接电源端,负端GND分别接地。UART多主实时通信系统还包括去耦电容C1、C2和电阻R6、R7,去耦电容C1,C2分别连接在电源端和地之间,电阻R6连接在CAN收发器U2的CANH端和SPLIT端之间,电阻R7连接在CAN收发器U2的CANL端和SPLIT端之间。如图2所示为本专利技术提供的一种UART多主实时通信系统的一实施例的电路原理图,总线仲裁单元包括三极管Q1,电阻R4和R1,发送控制单元包括三极管Q2、Q3,电阻R2、R3和R5,单片机U1的数据接收输入端RXD连接电阻R4的一端和CAN收发器U2的数据接收输出端RXD,电阻R4的另一端连接三极管Q1的集电极和单片机U1的INT端,三极管Q1的发射极连接电源端,三极管Q1的基极连接电阻R1的一端,电阻R1的另一端连接CAN收发器U2的数据发送输入端TXD,单片机U1的数据发送输出端TXD连接三极管Q2的发射极,三极管Q2的集电极连接CAN收发器U2的数据发送输入端TXD和电阻R3的一端,电阻R3的另一端连接电源端,三极管Q2的基极连接电阻R2的一端和三极管Q3的集电极,电阻R2的另一端连接电源端,三极管Q3的发射极接地,三极管Q3的基极连接电阻R5的一端,电阻R5的另一端连接单片机U1的P2.0端和CAN收发器U2的STB端。在单片机U1的异步串行通信口UART启动发送前,单片机U1的P2.0端输出低电平,CAN收发器U2被唤醒,三极管Q3截止,三极管Q2把单片机U1的TXD端电平信号同相地传送到CAN收发器U2的TXD端。当单片机U1的异步串行通信口UART的数据发送一旦启动,异步串行通信口UART就发送一完整字节,在这一字节的发送过程当中,如果CAN收发器U2的TXD端与RXD端的电平不一致,TXD呈隐性,RXD呈显性,那么,仲裁信号Arbitrtion就送出下降沿外部中断请求信号,意味着总线上的数据不再由本地方决定,而是由远端决定的,中断服务程序就本文档来自技高网...

【技术保护点】
一种UART多主实时通信系统,其特征在于:包括单片机U1,CAN收发器U2,总线仲裁单元,发送控制单元,所述单片机U1的INT中断输入端连接所述总线仲裁单元,数据发送输出端TXD连接所述发送控制单元,P2.0输出端连接所述发送控制单元和所述CAN收发器U2的STB唤醒端,数据接收输入端RXD连接所述总线仲裁单元和所述CAN收发器U2的数据接收输出端RXD,所述CAN收发器U2的数据发送输入端TXD连接所述总线仲裁单元和所述发送控制单元,所述单片机U1和CAN收发器U2的电源正端VCC分别连接电源端,负端GND分别接地。

【技术特征摘要】
1.一种UART多主实时通信系统,其特征在于:包括单片机U1,CAN收发器U2,总线仲裁单元,发送控制单元,所述单片机U1的INT中断输入端连接所述总线仲裁单元,数据发送输出端TXD连接所述发送控制单元,P2.0输出端连接所述发送控制单元和所述CAN收发器U2的STB唤醒端,数据接收输入端RXD连接所述总线仲裁单元和所述CAN收发器U2的数据接收输出端RXD,所述CAN收发器U2的数据发送输入端TXD连接所述总线仲裁单元和所述发送控制单元,所述单片机U1和CAN收发器U2的电源正端VCC分别连接电源端,负端GND分别接地。
2.根据权利要求1所述的UART多主实时通信系统,其特征在于:所述UART多主实时通信系统还包括去耦电容C1、C2和电阻R6、R7,所述去耦电容C1,C2分别连接在电源端和地之间,所述电阻R6连接在所述CAN收发器U2的CANH端和SPLIT端之间,所述电阻R7连接在所述CAN收发器U2的CANL端和SPLIT端之间。
3.根据权利要求1所述的UART多主实时...

【专利技术属性】
技术研发人员:袁绪平袁帅
申请(专利权)人:深圳中德世纪新能源有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1