CN117171072B - 微控制单元单向通讯方法及系统 - Google Patents

微控制单元单向通讯方法及系统 Download PDF

Info

Publication number
CN117171072B
CN117171072B CN202311456032.8A CN202311456032A CN117171072B CN 117171072 B CN117171072 B CN 117171072B CN 202311456032 A CN202311456032 A CN 202311456032A CN 117171072 B CN117171072 B CN 117171072B
Authority
CN
China
Prior art keywords
control unit
level
micro control
low
level signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311456032.8A
Other languages
English (en)
Other versions
CN117171072A (zh
Inventor
汤海浪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Lianxin Microelectronics Technology Co ltd
Original Assignee
Shenzhen Lianxin Microelectronics Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Lianxin Microelectronics Technology Co ltd filed Critical Shenzhen Lianxin Microelectronics Technology Co ltd
Priority to CN202311456032.8A priority Critical patent/CN117171072B/zh
Publication of CN117171072A publication Critical patent/CN117171072A/zh
Application granted granted Critical
Publication of CN117171072B publication Critical patent/CN117171072B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Information Transfer Systems (AREA)
  • Dc Digital Transmission (AREA)

Abstract

本发明涉及电子通讯技术领域中的一种微控制单元单向通讯方法及系统,应用于主微控制单元向从微控制单元发送数据,主微控制单元与从微控制单元之间通过I/O接口物理连接,主微控制单元通过I/O接口向从微控制单元输出低电平起始信号,在延时第一预设时长后停止输出低电平起始信号;从微控制单元在接收到低电平起始信号后关闭中断,持续处于接收数据状态;主微控制单元在停止输出低电平起始信号后,依次向从微控制单元发送高低电平相间的高电平信号和低电平信号;从微控制单元每次接收到高电平信号,根据高电平信号的接收时长确定高电平信号的数据类型;主微控制单元在高电平信号和低电平信号发送完成后恢复默认的初始空闲高电平,释放总线。

Description

微控制单元单向通讯方法及系统
技术领域
本公开涉及电子通讯技术领域,尤其涉及一种微控制单元单向通讯方法及系统。
背景技术
通常,微控制单元(Microcontroller Unit,MCU)与微控制单元MCU之间进行单向通讯时采用通用异步收发器(Universal Asynchronous Receiver/Transmitter,UART)实现。然而,微控制单元通过通过UART实现单向通讯的基础是MCU均在硬件上支持UART,这无疑提高了微控制单元单向通讯的实现难度,导致灵活性和便捷性较低。并且,微控制单元在硬件上满足UART配置的成本较高。
发明内容
本发明的目的是提供一种微控制单元单向通讯方法及系统,旨在解决相关场景中通过UART进行单向通讯时,微控制单元单向通讯的实现难度较高,导致灵活性和便捷性较低。并且,微控制单元在硬件上满足UART配置的成本较高的技术问题。
为了实现上述目的,本公开实施例的第一方面,提供一种微控制单元单向通讯方法,应用于主微控制单元向从微控制单元发送数据,所述主微控制单元与所述从微控制单元之间通过I/O接口进行物理连接,所述方法包括:
所述主微控制单元通过所述I/O接口向所述从微控制单元输出低电平起始信号,并在延时第一预设时长后,停止输出所述低电平起始信号;
所述从微控制单元在接收到所述低电平起始信号后,关闭中断,并持续处于接收数据状态;
所述主微控制单元在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高电平信号和低电平信号,其中,所述高电平信号用于携带数据,所述低电平信号用于时间修正,并且,所述低电平信号的低电平延时时长相同,所述高电平信号的高电平延时时长不同对应的数据类型不同;
所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型;
所述主微控制单元在所述高低电平相间的高电平信号和低电平信号发送完成后,恢复默认的初始空闲高电平,释放总线。
在一种可能实现的方式中,所述主微控制单元在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高电平信号和低电平信号,包括:
所述主微控制单元在停止输出所述低电平起始信号后,依次从低位bit0至高位bit7向所述从微控制单元发送高低电平相间的8个所述高电平信号和8个所述低电平信号。
在一种可能实现的方式中,所述主微控制单元在停止输出所述低电平起始信号后,依次从低位bit0至高位bit7向所述从微控制单元发送高低电平相间的8个高电平信号和8个低电平信号,包括:
所述主微控制单元在停止输出所述低电平起始信号后,在bit0向所述从微控制单元发送第一高电平信号,并在所述第一高电平信号发送完成后,将电位拉低;
在所述电位拉低持续所述低电平延时时长后,在bit1向所述从微控制单元发送第二高电平信号,并在所述第二高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit2向所述从微控制单元发送第三高电平信号,并在所述第三高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit3向所述从微控制单元发送第四高电平信号,并在所述第四高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit4向所述从微控制单元发送第五高电平信号,并在所述第五高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit5向所述从微控制单元发送第六高电平信号,并在所述第五高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit6向所述从微控制单元发送第七高电平信号,并在所述第七高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit7向所述从微控制单元发送第八高电平信号,并在所述第八高电平信号发送完成后,再次将所述电位拉低。
在一种可能实现的方式中,在所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型之前,包括:
所述从微控制单元将在关闭中断后接收到的第一个高电平信号与Header进行匹配;
若关闭中断后接收到的第一个高电平信号与Header匹配,则确定关闭中断后接收到的所述第一个高电平信号为头数据;
将关闭中断后接收到的所述第一个高电平信号作为头数据,以及将随后接收到的高电平信号作为有效数据保存到数据存储器中。
在一种可能实现的方式中,所述方法还包括:
所述主微控制单元在所述高电平信号和低电平信号发送完成后,计算CRC,并向所述从微控制单元发送CRC校验值;
所述从微控制单元在一次接收完所述主微控制单元发送的数据的情况下,以FSR0中的值作为地址,访问所述数据存储器中的数据,其中,所述一次接收为所述低电平起始信号至所述初始空闲高电平之间的接收过程;
根据所述CRC校验值,采用CRC8_MAXIM算法对从所述数据存储器中访问的所述数据进行校验。
在一种可能实现的方式中,所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型,包括:
所述从微控制单元在每一次接收到所述高电平信号的情况下,若所述高电平信号的接收时长超过预设时长阈值的情况下,则确定所述高电平信号的数据类型为第一数据类型,若所述高电平信号的接收时长不超过所述预设时长阈值,则确定所述高电平信号的数据类型为第二数据类型。
在一种可能实现的方式中,所述预设时长阈值为8us,所述第一数据类型对应的延时时长为12us,所述第二数据类型对应的延时时长为4us。
在一种可能实现的方式中,所述方法还包括:
所述从微控制单元在接收到任意高电平信号的情况下,启动计时;
在所述计时达到第二时长的情况下,若仍为接收到下一个低电平信号,则重新获取所述I/O接口的状态,以及重新扫描,以查询是否扫描到所述低电平起始信号。
在一种可能实现的方式中,所述低电平信号的低电平延时时长为4us。
本公开实施例的第二方面,提供一种微控制单元单向通讯系统,所述系统包括:通过I/O接口进行物理连接的主微控制单元和从微控制单元;
其中,所述主微控制单元具备通过所述I/O接口向所述从微控制单元发送数据的能力;
所述主微控制单元用于,通过所述I/O接口向所述从微控制单元输出低电平起始信号,并在延时第一预设时长后,停止输出所述低电平起始信号;
所述从微控制单元用于,在接收到所述低电平起始信号后,关闭中断,并持续处于接收数据状态;
所述主微控制单元用于,在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高电平信号和低电平信号,其中,所述高电平信号用于携带数据,所述低电平信号用于时间修正,并且,所述低电平信号的低电平延时时长相同,所述高电平信号的高电平延时时长不同对应的数据类型不同;
所述从微控制单元用于,在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型;
所述主微控制单元用于,在所述高低电平相间的高电平信号和低电平信号发送完成后,恢复默认的初始空闲高电平,释放总线。
本发明提供了一种微控制单元单向通讯方法及系统。与现有技术相比具备以下有益效果:
通过I/O接口物理连接主微控制单元和从微控制单元,解决了Uart串口通讯对时序的严格要求。并且,主微控制单元和从微控制单元之间通信协议简单,灵活性和便捷性提高,使得实现对MCU要求非常低,任意配置I/O接口的低成本的MCU即可采用,有效降低成本。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据说明书实施例示出的一种微控制单元单向通讯方法的流程图。
图2是根据说明书实施例示出的一种主微控制单元与从微控制单元物理连接的示意图。
图3是根据说明书实施例示出的一种主微控制单元发送数据的代码的示意图。
图4是根据说明书实施例示出的一种从微控制单元接收数据的代码的示意图。
图5是根据说明书实施例示出的一种主微控制单元发送数据的时序示意图。
图6是根据说明书实施例示出的一种发送3个字节数据的流程图。
图7是根据说明书实施例示出的一种发送3个字节数据的波形的示意图。
图8是根据说明书实施例示出的一种主微控制单元进行CRC计算的代码的示意图。
图9是根据说明书实施例示出的一种从微控制单元对数据进行校验的代码的示意图。
图10是根据说明书实施例示出的一种微控制单元单向通讯的效果示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
为了实现上述目的,本公开提供一种微控制单元单向通讯方法,图1是根据一实施例示出的一种微控制单元单向通讯方法的流程图。应用于主微控制单元向从微控制单元发送数据,参见图2所示,所述主微控制单元与所述从微控制单元之间通过I/O接口进行物理连接,所述方法包括:
在步骤S11中,所述主微控制单元通过所述I/O接口向所述从微控制单元输出低电平起始信号,并在延时第一预设时长后,停止输出所述低电平起始信号;
本公开实施例中,第一预设时长为20us。
在步骤S12中,所述从微控制单元在接收到所述低电平起始信号后,关闭中断,并持续处于接收数据状态;
在步骤S13中,所述主微控制单元在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高电平信号和低电平信号。
其中,所述高电平信号用于携带数据,所述低电平信号用于时间修正,并且,所述低电平信号的低电平延时时长相同,所述高电平信号的高电平延时时长不同对应的数据类型不同。
参见图3所示出的,为主微控制单元发送数据的代码。
本公开实施例中,低电平信号用于时间修正是指在低电平信号之前发送的一个高电平信号发送的时长长于或者短于数据类型对应的高电平延时时长的情况下,可以对整个发送时间长度进行修正,以及对发送的时长长于或者短于数据类型对应的高电平延时时长的高电平信号的接收时长进行修正。
在步骤S14中,所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型。
参见图4所示出的,为从微控制单元接收数据的代码。
在步骤S15中,所述主微控制单元在所述高低电平相间的高电平信号和低电平信号发送完成后,恢复默认的初始空闲高电平,释放总线。
该步骤的实现代码请继续参见图3。
上述技术方案通过I/O接口物理连接主微控制单元和从微控制单元,解决了Uart串口通讯对时序的严格要求。并且,主微控制单元和从微控制单元之间通信协议简单,灵活性和便捷性提高,使得实现对MCU要求非常低,任意配置I/O接口的低成本的MCU即可采用,有效降低成本。
在一种可能实现的方式中,在步骤S13中,所述主微控制单元在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高电平信号和低电平信号,包括:
所述主微控制单元在停止输出所述低电平起始信号后,依次从低位bit0至高位bit7向所述从微控制单元发送高低电平相间的8个所述高电平信号和8个所述低电平信号。
在一种可能实现的方式中,参见图5所示,所述主微控制单元在停止输出所述低电平起始信号后,依次从低位bit0至高位bit7向所述从微控制单元发送高低电平相间的8个高电平信号和8个低电平信号,包括:
所述主微控制单元在停止输出所述低电平起始信号后,在bit0向所述从微控制单元发送第一高电平信号,并在所述第一高电平信号发送完成后,将电位拉低;
在所述电位拉低持续所述低电平延时时长后,在bit1向所述从微控制单元发送第二高电平信号,并在所述第二高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit2向所述从微控制单元发送第三高电平信号,并在所述第三高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit3向所述从微控制单元发送第四高电平信号,并在所述第四高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit4向所述从微控制单元发送第五高电平信号,并在所述第五高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit5向所述从微控制单元发送第六高电平信号,并在所述第五高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit6向所述从微控制单元发送第七高电平信号,并在所述第七高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit7向所述从微控制单元发送第八高电平信号,并在所述第八高电平信号发送完成后,再次将所述电位拉低。
在一种可能实现的方式中,在所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型之前,包括:
所述从微控制单元将在关闭中断后接收到的第一个高电平信号与Header进行匹配;
若关闭中断后接收到的第一个高电平信号与Header匹配,则确定关闭中断后接收到的所述第一个高电平信号为头数据;
将关闭中断后接收到的所述第一个高电平信号作为头数据,以及将随后接收到的高电平信号作为有效数据保存到数据存储器中。
参见图6所示,以发送3个字节的完整数据为例进行流程说明。以固定自定义数据的形式发送数据头,可以发送有效数据1、有效数据2、有效数据3,并在发送完成以后,计算CRC,并向从微控制单元发送CRC校验值。参见图7所示出的是发送该3个字节的完整数据的波形。
在一种可能实现的方式中,所述方法还包括:
所述主微控制单元在所述高电平信号和低电平信号发送完成后,计算CRC,并向所述从微控制单元发送CRC校验值;
参见图8所示,为主微控制单元进行CRC计算的代码。
所述从微控制单元在一次接收完所述主微控制单元发送的数据的情况下,以FSR0中的值作为地址,访问所述数据存储器中的数据,其中,所述一次接收为所述低电平起始信号至所述初始空闲高电平之间的接收过程;
根据所述CRC校验值,采用CRC8_MAXIM算法对从所述数据存储器中访问的所述数据进行校验。
参见图9所示,对数据进行校验的代码。
在一种可能实现的方式中,所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型,包括:
所述从微控制单元在每一次接收到所述高电平信号的情况下,若所述高电平信号的接收时长超过预设时长阈值的情况下,则确定所述高电平信号的数据类型为第一数据类型,若所述高电平信号的接收时长不超过所述预设时长阈值,则确定所述高电平信号的数据类型为第二数据类型。
在一种可能实现的方式中,所述预设时长阈值为8us,所述第一数据类型对应的延时时长为12us,所述第二数据类型对应的延时时长为4us。
在一种可能实现的方式中,所述方法还包括:
所述从微控制单元在接收到任意高电平信号的情况下,启动计时;
在所述计时达到第二时长的情况下,若仍为接收到下一个低电平信号,则重新获取所述I/O接口的状态,以及重新扫描,以查询是否扫描到所述低电平起始信号。
本公开实施例中,第二时长为40us。
在一种可能实现的方式中,所述低电平信号的低电平延时时长为4us。
上述实施例中,单线通讯协议,解决串口Uart通讯对时序的严格要求。改进型协议及软件的实现对MCU要求非常低,不需要MCU支持Uart,基本的只支持I/O口的MCU均可实现双MCU通讯,对MCU要求极低,有效降低成本。
本公开实施例中,主微控制单元MCU采用CSU3AF10,从微控制单元MCU采用MC30P6230,参见图10所示出的效果图,数据传输成功率与传统Uart效果相当。相较于传统Uart单线通讯电路,对MCU的要求大大降低,在同样的数据传输质量系统中,对MCU要求低,MCU的选择范围更大,同时大大降低成本。
本公开实施例还提供一种微控制单元单向通讯系统,继续参见图2所示,所述系统包括:通过I/O接口进行物理连接的主微控制单元和从微控制单元;
其中,所述主微控制单元具备通过所述I/O接口向所述从微控制单元发送数据的能力;
所述主微控制单元用于,通过所述I/O接口向所述从微控制单元输出低电平起始信号,并在延时第一预设时长后,停止输出所述低电平起始信号;
所述从微控制单元用于,在接收到所述低电平起始信号后,关闭中断,并持续处于接收数据状态;
所述主微控制单元用于,在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高电平信号和低电平信号,其中,所述高电平信号用于携带数据,所述低电平信号用于时间修正,并且,所述低电平信号的低电平延时时长相同,所述高电平信号的高电平延时时长不同对应的数据类型不同;
所述从微控制单元用于,在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型;
所述主微控制单元用于,在所述高低电平相间的高电平信号和低电平信号发送完成后,恢复默认的初始空闲高电平,释放总线。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对这些实施例进行多种变化、修改、替换和变型,这些变化、修改、替换和变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,其同样应当视为本公开所公开的内容,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。本项申请的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。

Claims (8)

1.一种微控制单元单向通讯方法,其特征在于,应用于主微控制单元向从微控制单元发送数据,所述主微控制单元与所述从微控制单元之间通过I/O接口进行物理连接,所述方法包括:
所述主微控制单元通过所述I/O接口向所述从微控制单元输出低电平起始信号,并在延时第一预设时长后,停止输出所述低电平起始信号;
所述从微控制单元在接收到所述低电平起始信号后,关闭中断,并持续处于接收数据状态;
所述主微控制单元在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高、低电平信号,其中,所述高电平信号用于携带数据,所述低电平信号用于时间修正,并且,所述低电平信号的低电平延时时长相同,所述高电平信号的高电平延时时长不同对应的数据类型不同,其中,所述低电平信号用于时间修正是指在低电平信号之前发送的一个高电平信号发送的时长长于或者短于数据类型对应的高电平延时时长的情况下,对整个发送时间长度进行修正,以及对发送的时长长于或者短于数据类型对应的高电平延时时长的高电平信号的接收时长进行修正;
所述从微控制单元将在关闭中断后接收到的第一个高电平信号与Header进行匹配;若关闭中断后接收到的第一个高电平信号与Header匹配,则确定关闭中断后接收到的所述第一个高电平信号为头数据;将关闭中断后接收到的所述第一个高电平信号作为头数据,以及将随后接收到的高电平信号作为有效数据保存到数据存储中;
所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型;
所述主微控制单元在所述高低电平相间的高、低电平信号发送完成后,计算CRC,并向所述从微控制单元发送CRC校验值;
所述从微控制单元在一次接收完所述主微控制单元发送的数据的情况下,以FSR0中的值作为地址,访问所述数据存储器中的数据,其中,所述一次接收为所述低电平起始信号至初始空闲高电平之间的接收过程;根据所述CRC校验值,采用CRC8_MAXIM算法对从所述数据存储器中访问的所述数据进行校验;
所述主微控制单元在校验成功的情况下,恢复默认的初始空闲高电平,释放总线。
2.根据权利要求1所述的方法,其特征在于,所述主微控制单元在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高、低电平信号,包括:
所述主微控制单元在停止输出所述低电平起始信号后,依次从低位bit0至高位bit7向所述从微控制单元发送高低电平相间的8个所述高电平信号和8个所述低电平信号。
3.根据权利要求2所述的方法,其特征在于,所述主微控制单元在停止输出所述低电平起始信号后,依次从低位bit0至高位bit7向所述从微控制单元发送高低电平相间的8个高电平信号和8个低电平信号,包括:
所述主微控制单元在停止输出所述低电平起始信号后,在bit0向所述从微控制单元发送第一高电平信号,并在所述第一高电平信号发送完成后,将电位拉低;
在所述电位拉低持续所述低电平延时时长后,在bit1向所述从微控制单元发送第二高电平信号,并在所述第二高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit2向所述从微控制单元发送第三高电平信号,并在所述第三高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit3向所述从微控制单元发送第四高电平信号,并在所述第四高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit4向所述从微控制单元发送第五高电平信号,并在所述第五高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit5向所述从微控制单元发送第六高电平信号,并在所述第五高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit6向所述从微控制单元发送第七高电平信号,并在所述第七高电平信号发送完成后,再次将所述电位拉低;
在所述电位拉低再次持续所述低电平延时时长后,在bit7向所述从微控制单元发送第八高电平信号,并在所述第八高电平信号发送完成后,再次将所述电位拉低。
4.根据权利要求1所述的方法,其特征在于,所述从微控制单元在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型,包括:
所述从微控制单元在每一次接收到所述高电平信号的情况下,若所述高电平信号的接收时长超过预设时长阈值的情况下,则确定所述高电平信号的数据类型为第一数据类型,若所述高电平信号的接收时长不超过所述预设时长阈值,则确定所述高电平信号的数据类型为第二数据类型。
5.根据权利要求4所述的方法,其特征在于,所述预设时长阈值为8us,所述第一数据类型对应的延时时长为12us,所述第二数据类型对应的延时时长为4us。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述从微控制单元在接收到任意高电平信号的情况下,启动计时;
在所述计时达到第二时长的情况下,若仍为接收到下一个低电平信号,则重新获取所述I/O接口的状态,以及重新扫描,以查询是否扫描到所述低电平起始信号。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述低电平信号的低电平延时时长为4us。
8.一种微控制单元单向通讯系统,其特征在于,所述系统包括:通过I/O接口进行物理连接的主微控制单元和从微控制单元;
其中,所述主微控制单元具备通过所述I/O接口向所述从微控制单元发送数据的能力;
所述主微控制单元用于,通过所述I/O接口向所述从微控制单元输出低电平起始信号,并在延时第一预设时长后,停止输出所述低电平起始信号;
所述从微控制单元用于,在接收到所述低电平起始信号后,关闭中断,并持续处于接收数据状态;
所述主微控制单元用于,在停止输出所述低电平起始信号后,依次向所述从微控制单元发送高低电平相间的高、低电平信号,其中,所述高电平信号用于携带数据,所述低电平信号用于时间修正,并且,所述低电平信号的低电平延时时长相同,所述高电平信号的高电平延时时长不同对应的数据类型不同,其中,所述低电平信号用于时间修正是指在低电平信号之前发送的一个高电平信号发送的时长长于或者短于数据类型对应的高电平延时时长的情况下,对整个发送时间长度进行修正,以及对发送的时长长于或者短于数据类型对应的高电平延时时长的高电平信号的接收时长进行修正;
所述从微控制单元用于,将在关闭中断后接收到的第一个高电平信号与Header进行匹配;若关闭中断后接收到的第一个高电平信号与Header匹配,则确定关闭中断后接收到的所述第一个高电平信号为头数据;将关闭中断后接收到的所述第一个高电平信号作为头数据,以及将随后接收到的高电平信号作为有效数据保存到数据存储中;
所述从微控制单元用于,在每一次接收到所述高电平信号的情况下,根据所述高电平信号的接收时长,确定所述高电平信号的数据类型;
所述主微控制单元用于,在所述高低电平相间的高、低电平信号发送完成后,计算CRC,并向所述从微控制单元发送CRC校验值;
所述从微控制单元在一次接收完所述主微控制单元发送的数据的情况下,以FSR0中的值作为地址,访问所述数据存储器中的数据,其中,所述一次接收为所述低电平起始信号至初始空闲高电平之间的接收过程;根据所述CRC校验值,采用CRC8_MAXIM算法对从所述数据存储器中访问的所述数据进行校验;
所述主微控制单元在校验成功的情况下,恢复默认的初始空闲高电平,释放总线。
CN202311456032.8A 2023-11-03 2023-11-03 微控制单元单向通讯方法及系统 Active CN117171072B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311456032.8A CN117171072B (zh) 2023-11-03 2023-11-03 微控制单元单向通讯方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311456032.8A CN117171072B (zh) 2023-11-03 2023-11-03 微控制单元单向通讯方法及系统

Publications (2)

Publication Number Publication Date
CN117171072A CN117171072A (zh) 2023-12-05
CN117171072B true CN117171072B (zh) 2024-02-23

Family

ID=88947329

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311456032.8A Active CN117171072B (zh) 2023-11-03 2023-11-03 微控制单元单向通讯方法及系统

Country Status (1)

Country Link
CN (1) CN117171072B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727422A (zh) * 2008-10-29 2010-06-09 大唐移动通信设备有限公司 一种控制单总线设备的方法及系统
CN105224492A (zh) * 2015-09-01 2016-01-06 浙江省通信产业服务有限公司 一种单片机i/o口模拟串行通信方法
CN105468554A (zh) * 2015-11-27 2016-04-06 宁波三星医疗电气股份有限公司 一种实现极性自适应的模拟uart的方法
CN207410054U (zh) * 2017-09-06 2018-05-25 深圳市格维科技有限公司 一种多功能充电装置
CN109062850A (zh) * 2018-08-09 2018-12-21 广州麦芮声电子有限公司 一种单片机的数据发送和接收方法
KR20190091929A (ko) * 2018-01-30 2019-08-07 엘에스산전 주식회사 Uart 통신속도 자동 전환 방법
CN110996461A (zh) * 2019-12-30 2020-04-10 南京浣轩半导体有限公司 一种单线led数据传输显示方法及驱动芯片
CN113242168A (zh) * 2021-04-20 2021-08-10 河北稳控科技有限公司 一种单总线通讯方法
CN216361783U (zh) * 2021-11-27 2022-04-22 深圳联芯微电子科技有限公司 一种用于pcb电路板生产加工的检测装置
CN115412818A (zh) * 2021-05-27 2022-11-29 瑶芯微电子科技(上海)有限公司 Mems麦克风系统、mems麦克风测试修调电路和方法
CN116955242A (zh) * 2023-07-25 2023-10-27 深圳市拓普瑞电子有限公司 一种单总线通信方法、存储介质及智能终端

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727422A (zh) * 2008-10-29 2010-06-09 大唐移动通信设备有限公司 一种控制单总线设备的方法及系统
CN105224492A (zh) * 2015-09-01 2016-01-06 浙江省通信产业服务有限公司 一种单片机i/o口模拟串行通信方法
CN105468554A (zh) * 2015-11-27 2016-04-06 宁波三星医疗电气股份有限公司 一种实现极性自适应的模拟uart的方法
CN207410054U (zh) * 2017-09-06 2018-05-25 深圳市格维科技有限公司 一种多功能充电装置
KR20190091929A (ko) * 2018-01-30 2019-08-07 엘에스산전 주식회사 Uart 통신속도 자동 전환 방법
CN109062850A (zh) * 2018-08-09 2018-12-21 广州麦芮声电子有限公司 一种单片机的数据发送和接收方法
CN110996461A (zh) * 2019-12-30 2020-04-10 南京浣轩半导体有限公司 一种单线led数据传输显示方法及驱动芯片
CN113242168A (zh) * 2021-04-20 2021-08-10 河北稳控科技有限公司 一种单总线通讯方法
CN115412818A (zh) * 2021-05-27 2022-11-29 瑶芯微电子科技(上海)有限公司 Mems麦克风系统、mems麦克风测试修调电路和方法
CN216361783U (zh) * 2021-11-27 2022-04-22 深圳联芯微电子科技有限公司 一种用于pcb电路板生产加工的检测装置
CN116955242A (zh) * 2023-07-25 2023-10-27 深圳市拓普瑞电子有限公司 一种单总线通信方法、存储介质及智能终端

Also Published As

Publication number Publication date
CN117171072A (zh) 2023-12-05

Similar Documents

Publication Publication Date Title
US20170255588A1 (en) Multiprotocol i3c common command codes
CN103218331B (zh) 采用同步模式切换及帧优先级自动调整的总线装置及方法
US7639765B2 (en) Single-line bidirectional communication apparatus and system
US8082373B2 (en) Specialized universal serial bus controller
KR20160140847A (ko) 집적회로간 (i2c) 버스상에서 인-밴드로 여분의 정보를 전송하는 방법들
WO2018095181A1 (zh) 数据传输方法及装置
CN107637023B (zh) 用于在数据总线系统中传输消息的方法、收发器和用于机动车的电子控制单元
US20160224501A1 (en) Adaptation device for a bus system, and method for operating a can subscriber station and a can fd subscriber station in a bus system
US11431531B2 (en) Termination for high-frequency transmission lines
CN117171072B (zh) 微控制单元单向通讯方法及系统
JP2016532967A (ja) 周辺装置からのirq線の数を1線に最小化する方法
US20140289547A1 (en) Microcontroller and method of controlling the same
US20180357121A1 (en) Error correction calculation upon serial bus abort
CN114500159B (zh) 中央吸油烟机系统的有线通讯方法、装置和电子设备
US20190171611A1 (en) Protocol-framed clock line driving for device communication over master-originated clock line
US9490964B2 (en) Symbol transition clocking clock and data recovery to suppress excess clock caused by symbol glitch during stable symbol period
US8004988B2 (en) Ethernet controller
CN103458116A (zh) 一种音频通讯装置及其实现通讯的方法
US20230199306A1 (en) Communication device and communication system
TWI437821B (zh) 用以調校傳輸介面之驅動電流的方法以及相關裝置
US10305672B2 (en) Communication device and communication system
CN115657567B (zh) 一种单引脚传输控制信号的方法及控制系统
US20090138786A1 (en) Communication control apparatus, communication control method, and communication control program
CN102791021B (zh) 一种确定探针的传输功率的方法及装置
CN112486887B (zh) 一种利用spi总线传输异步信号的方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant