logo好方法网

双微处理器同步控制方法


技术摘要:
本发明提供一种双微处理器同步控制方法,其包括如下步骤:步骤1:将待发送的消息按照传输优先级别进行分类,将任一MCU受到事件触发产生的消息设为传输优先级别高的消息,并对所有消息按照优先程度进行编号;步骤2:MCU发送方判断消息类别并向MCU接收方发送带编号的消息  全部
背景技术:
随着现有电子产品所具备的功能数量的增长,设置在电子产品中的微处理器的数 量也相应地增加。许多电子产品采用两个微处理器(Microcontroller  Unit,MCU)进行功能 控制。现有技术中,电子产品的主流双MCU控制方案采用的是主从控制方式,其选用其中一 个MCU作为主MCU,另外一个作为从MCU,主从通信只能由主机发起,从机不能发起。同时,请 参阅图1,现有的主流双MCU控制方案多采用UART(Universal  Asynchronous  Receiver/ Transmitter,通用异步收发传输器)完成MCU间的数据通信传输,其中,MCU通常具有电源接 收端VCC、接地端GND、数据发送端TX和数据接收端RX四个引脚,在采用UART通信时,任一MCU 上的数据发送端TX均与另一MCU上的数据接收端RX连接。UART传输为异步传输方式,采用 UART传输方式的MCU发送方在发出一个数据后,不需等待MCU接收方发回响应才发送下一数 据,而是直接继续发送下个数据。 在实际应用时,为了使电子产品正常工作,双MCU系统中的两片MCU在执行开机、关 机和发出控制指令时应能够实现同步动作,因此,现有双MCU控制方案中MCU间控制同步性 是电子产品总体控制功能实现的关键。然而,由于现有MCU控制方案中UART通信方式具有异 步传输特性,且主从控制方式下从机无法向主机主动发起通信,电子产品在采用现有双MCU 控制方案时,MCU之间同步性较差,这可能导致使用电子产品时控制功能失效。
技术实现要素:
基于此,本发明的目的在于,提供一种双微处理器间同步控制的方法,其能够增强 双微处理器间的控制同步性。 所述双微处理器同步控制方法包括如下步骤: 步骤1:将待发送的消息按照传输优先级别进行分类,将任一MCU受到事件触发产 生的消息设为传输优先级别高的消息,并对所有消息按照优先程度进行编号; 步骤2:MCU发送方判断消息类别并向MCU接收方发送带编号的消息; 步骤3:若MCU接收方当前不处于发送消息状态或MCU接收方在比较本机发送消息 的编号与本机接收到的消息的编号时,本机接收到的消息优先级别更高,优先接收并执行 本机接收消息的指令。 相比于现有技术,本方法将MCU间传输的消息进行传输优先程度的分类,并将任一 MCU受外界触发产生的紧急的事件触发消息设为需要优先传输的消息,使所述事件触发消 息能够优先传输给另一MCU,增强双微处理器间的控制同步性。 进一步,步骤1中所述消息包括周期性传输消息与事件触发消息;所述事件触发类 消息包括优先级由高到低的同步开机、同步关机、同步睡眠、按键短按事件和按键长按事件 的触发消息。 4 CN 111597017 A 说 明 书 2/5 页 进一步,两片MCU之间还设置有两个中断通信通道,每个中断通信通道两端分别连 接两片MCU的一个中断连接端口。 进一步,在步骤3中,包括步骤3A;步骤3A:若MCU接收方当前不处于发送消息状态 或MCU接收方比较本机发送消息的编号与本机接收到的消息的编号时,本机接收到的消息 优先级别更高,则进一步判断接收消息的类别,若接收消息指令属于按键短按事件或按键 长按事件,执行步骤5;步骤5:MCU发送方向MCU接收方发送按键短按事件或按键长按事件请 求中断消息,打断MCU接收方当前的消息发送,同时,MCU发送方判断按键具体信息,若需要 MCU接收方处理,则通过TX引脚将按键具体信息传递给MCU接收方;在步骤2中,若MCU发送方 为主MCU,转至步骤3A。 进一步,在步骤3中,还包括步骤3B;步骤3B:若MCU接收方当前不处于发送消息状 态或MCU接收方比较本机发送消息的编号与本机接收到的消息的编号时,本机接收到的消 息优先级别更高,则进一步判断接收消息的类别,若接收消息指令属于按键短按事件或按 键长按事件,执行步骤6;步骤6:MCU发送方向MCU接收方发送按键短按事件或按键长按事件 请求中断消息的编号,MCU接收方接收所述编号后,判断所述中断消息类别,对MCU发送方进 行应答但不打断当前通信,待当前通信完成后,MCU接收方从MCU发送方接收所述中断消息; 在步骤2中,若MCU发送方为从MCU,转至步骤3B。 进一步,在步骤3A与步骤3B中,进一步判断接收消息的类别时,若所述接收消息属 于同步开机、同步关机或同步睡眠消息,执行步骤4;步骤4:MCU发送方向MCU接收方发送请 求同步开机或同步关机的中断信息,MCU接收方接收消息后发送应答消息,MCU发送方接收 应答消息后两片MCU进行同步开机或同步关机。 进一步,在步骤5中,MCU接收方接收按键具体信息后,根据按键具体信息判断是否 对MCU发送方进行应答,若无需应答,则重新开始发送被打断的周期性发送消息;若需要应 答,则在应答后,就重新开始发送被打断的周期性发送消息。 进一步,MCU接收方在发送应答消息的同时,对MCU发送方进行应答进行计时,如果 发现MCU发送方超时未应答,重新请求MCU发送方发送所述中断消息并重新计时。 进一步,所述消息设置为双微处理器间通信变长协议消息结构,所述通信变长协 议消息包括:消息ID信息:长度为1字节,用于表示消息的优先级类别,ID越小,优先级越高; 类型信息:长度为1字节,其中,高bit位置用于说明是否要求支持应答,低位bit=0为周期 性消息,低位bit=1为事件触发消息;长度信息:长度为1字节,用于表示消息的总长度;数 据信息:长度为N字节,用于表示消息的具体内容;超时信息:长度为1字节,对需要在限定时 间内应答的消息,所述超时信息可表示ACK回复的最大用时,若超时则引起重发;和CRC检验 信息:长度为1字节,用于表示数据检验信息。 进一步,所述周期性传输消息包括BAT采样消息和输出电压采样消息。 为了更好地理解和实施,下面结合附图详细说明本发明。 附图说明 图1为现有双MCU控制系统中双MCU间硬件连接示意图; 图2为本发明中双MCU间硬件连接示意图; 图3为本发明的双微处理器同步控制方法的流程图; 5 CN 111597017 A 说 明 书 3/5 页 图4为本发明的双微处理器间通信变长协议消息结构。
分享到:
收藏