CN113141288A - 一种can总线控制器的邮箱报文收发方法和装置 - Google Patents
一种can总线控制器的邮箱报文收发方法和装置 Download PDFInfo
- Publication number
- CN113141288A CN113141288A CN202110443753.XA CN202110443753A CN113141288A CN 113141288 A CN113141288 A CN 113141288A CN 202110443753 A CN202110443753 A CN 202110443753A CN 113141288 A CN113141288 A CN 113141288A
- Authority
- CN
- China
- Prior art keywords
- mailbox
- sending
- message
- receiving
- register
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/42—Mailbox-related aspects, e.g. synchronisation of mailboxes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供了一种CAN总线控制器的邮箱报文收发方法和装置,解决现有现有CAN邮箱资源利用率低,应用可靠性差的技术问题。方法包括:通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱;在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新;在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新。解决了邮箱配置及收发流程复杂、容易丢帧、DSP硬件资源浪费等问题,实现了在高速率、高负载率下可靠的数据接收和发送。
Description
技术领域
本发明涉及DSP技术领域,具体涉及一种CAN总线控制器的邮箱报文收发方法和装置。
背景技术
现有技术中,C28x系列DSP为TI公司开发的一系列DSP,此类DSP内嵌CAN总线控制器,具备高达1Mbps的CAN2.0B通道,具有高安全级别和较快的通信速率,能够在恶劣的电磁环境中进行可靠通信。总线控制器利用CAN通道可以在内存中配置最多32个邮箱,每个邮箱都可配置为发送或接收邮箱。
由于C28x系列DSP的CAN邮箱数量多,配置和使用步骤复杂,通常会涉及CAN总线控制器中大量的专用寄存器及其标志位的设置和反馈,没有通用的设置逻辑策略。为了配置方便,一般情况下,用户仅使用了其中的几个邮箱,这种使用方法造成了CAN邮箱硬件资源的浪费,并且在高速率、高负载率通信下,仅用的几个邮箱在接收过程中容易溢出而造成丢帧。在现有发送流程中,如果发送邮箱被占用,一般采取空循环的方式等待,浪费了CPU的资源。此外,在CAN总线异常时,现有的发送方式可能会造成DSP向总线发送错误数据,影响系统的正常运行。
发明内容
鉴于上述问题,本发明实施例提供一种CAN总线控制器的邮箱报文收发方法和装置,解决现有现有CAN邮箱资源利用率低,应用可靠性差的技术问题。
本发明实施例的CAN总线控制器的邮箱报文收发方法,包括:
通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对所述关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱;
根据触发条件启动报文的邮箱接收响应,在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新;
根据主进程进度启动报文的邮箱发送响应,在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新。
本发明实施例的CAN总线控制器的邮箱报文收发系统,包括:
存储器,用于存储上述的CAN总线控制器的邮箱报文收发方法的处理过程的程序代码;
处理器,用于执行所述程序代码。
本发明实施例的CAN总线控制器的邮箱报文收发系统,包括:
初始化装置,用于通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对所述关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱;
接收优化装置,用于根据触发条件启动报文的邮箱接收响应,在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新;
发送优化装置,用于根据主进程进度启动报文的邮箱发送响应,在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新。
本发明实施例的CAN总线控制器的邮箱报文收发方法和装置针对C28x系列DSP的CAN邮箱配置、使用复杂的问题,提供一种简单且高性能、高可靠的邮箱报文收发方法,解决现有CAN邮箱使用方法中配置及收发流程复杂、容易丢帧、DSP硬件资源浪费等问题。实现了在高速率、高负载率下可靠的数据接收和发送。该方法对多达32个邮箱进行统一配置,提高了CAN邮箱硬件资源的利用率。并且优化了CAN报文的收取、发送流程,在降低CAN收发过程中对系统资源消耗的同时,提高了收发报文的可靠性。
附图说明
图1所示为本发明一实施例CAN总线控制器的邮箱报文收发方法的流程示意图。
图2所示为本发明一实施例CAN总线控制器的邮箱报文收发方法的初始化过程示意图。
图3所示为本发明一实施例CAN总线控制器的邮箱报文收发方法的报文邮箱接收响应过程示意图。
图4所示为本发明一实施例CAN总线控制器的邮箱报文收发方法的报文邮箱发送过响应程示意图。
图5所示为本发明一实施例CAN总线控制器的邮箱报文收发系统的架构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明白,以下结合附图及具体实施方式对本发明作进一步说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明一实施例CAN总线控制器的邮箱报文收发方法如图1所示。在图1中,本实施例包括:
步骤100:通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱。
本领域技术人员可以理解,指针是计算机系统内存管理中使用的一种变量结构,针对内存地址。CAN总线控制器的邮箱包括与邮箱对应的关键寄存器集合和邮箱状态标识的通用寄存器集合,寄存器通过映射的确定内存地址进行操作,寄存器内的数据可以形成标志位。
通过寄存器指针可以获取对应邮箱的寄存器定位,通过地址偏移可以利用寄存器指进行关联地址的内存访问。依次初始化邮箱包括对邮箱收发状态的初始化和初始化策略。
步骤200:根据触发条件启动报文的邮箱接收响应,在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新。
触发条件包括但不限于主进程的调用或硬件终端的调用。顺序启动邮箱收文的接收响应包括对每个接收邮箱的独立接收响应过程。邮箱状态进行判断、对一个接收邮箱的接收内容进行邮箱缓存、对邮箱缓存状态进行更新是依次处理步骤。通用寄存器中接收标志位包括但不限于与接收处理相关的通用寄存器中的全部或部分标志位。
步骤300:根据主进程进度启动报文的邮箱发送响应,在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新。
邮箱发文的发送响应可以位于启动进程中的主循环或主要进程中的主要控制域下的循环部分,主进程进度是指主循环或循环部分在启动进程或主要进程中的所处运行节点。对发文状态进行判断包括但不限于持续状态判断、传输线路判断和数据传输判断。通用寄存器中发送标志位包括但不限于与发送处理相关的通用寄存器中的全部或部分标志位。
本发明实施例的CAN总线控制器的邮箱报文收发方法可以将所有邮箱资源根据需求进行统一初始化配置,保证配置代码、接收代码在质量和数量上的一致性和可靠性。通过触发接收策略可以充分利用空闲的接收邮箱作为总线上报文的硬件缓冲充分利用邮箱硬件资源,在高速率、高负载率CAN通信下可以可靠缓冲报文,不丢帧。同时,通过发送策略向控制器提供发送邮箱的占用状态判断结果和总线传输异常判断结果,保证控制器可以及时适配计算资源响应实时处理请求,对传输总线异常及时正确识别,避免错误发送报文。
如图1所示,在本发明一实施例中,步骤100包括:
步骤110:通过通用寄存器配置CAN总线控制器的工作模式和邮箱收发模式。
步骤120:获取确定关键寄存器指针,通过设置地址偏移量利用确定关键寄存器指针顺序设置各接收邮箱的确定关键寄存器的初始化数据。
步骤130:通过判断最终接收邮箱对其他关键寄存器初始化。
本发明一实施例CAN总线控制器的邮箱报文收发方法的初始化过程如图2所示。在图2中,步骤110包括:
配置CANTX引脚、CANRX引脚并配置CAN总线传输比特率;
配置CAN主控制寄存器CANMC确定工作模式和数量邮箱的收发状态。
本事实例中,0-30个邮箱初始化为接收邮箱。
如图2所示,在本发明一实施例中,步骤120包括:
分别获取消息控制寄存器(MSGCTRL)指针、消息标识符寄存器(MSGID)指针、本地接收屏蔽寄存器(LAM)指针和写保护控制寄存器(CANOPC)指针;
获取初始地址和地址偏移量4,控制消息控制寄存器指针顺序指向各接收邮箱的消息控制寄存器,对消息控制寄存器赋值0,形成初始化;
获取初始地址和地址偏移量4,控制消息标识符寄存器指针顺序指向各接收邮箱的消息标识符寄存器,对消息控制寄存器赋值0xC0000000,形成初始化;
获取初始地址和地址偏移量1,控制本地接收屏蔽寄存器指针顺序指向各接收邮箱的本地接收屏蔽寄存器,对本地接收屏蔽寄存器赋值0x1FFFFFFF,形成初始化;
获取初始地址和地址偏移量4,控制写保护控制寄存器指针顺序指向各接收邮箱的写保护控制寄存器,对写保护控制寄存器赋值0xFFFFFFFE,形成初始化。
如图2所示,在本发明一实施例中,步骤130包括:
判断初始化是否达到接收邮箱数量,达到则结束未达到则继续;
在控制消息控制寄存器初始化达到接收邮箱数量时,根据确定策略初始化以下寄存器:
CANTA、CANRMP、CANGIF、CANMIL、CANMIM、CANGIM、CANME、CANMD。
如图1所示,在本发明一实施例中,步骤200包括:
步骤210:根据接收邮箱数量设置比对循环次数和比对标识,通过比对标识与每个接收邮箱的接收状态标识位逐一比对确定报文到达邮箱,通过报文到达邮箱的数据读取指针读取报文。
步骤220:在读取报文后重置报文到达邮箱的接收状态标识位。
本发明一实施例CAN总线控制器的邮箱报文收发方法的邮箱接收响应过程如图3所示。在图3中,步骤210包括:
设置比对标识为布尔值1;
获取接收消息挂起寄存器(CANRMP)内容,在对比过程中将比对标识由高位向低位逐一右移,逐一与对应接收邮箱的标志位做与操作,根据与操作的真值确定报文到达邮箱;
根据报文到达邮箱确定数据读取指针;
利用数据读取指针读取报文到达邮箱内的报文数据,将报文数据写入接收缓冲区。
如图3所示,在本发明一实施例中,步骤220包括:
将比对标识与报文到达邮箱的标志位做或操作并将操作结果配置在接收消息挂起寄存器的对应标志位中,以清除对应的邮箱接收标志。如图1所示,在本发明一实施例中,步骤300包括:
步骤310:顺序建立数据发送超时-数据发送中-发送缓冲区非空-传输总线异常的发送异常判断流程,根据发送异常判断流程的连续判断形成报文发送流程。
步骤320:根据发送异常判断流程的单步判断更新发送流程。
本发明一实施例CAN总线控制器的邮箱报文收发方法的报文邮箱发送过程如图4所示。在图4中,步骤310包括:
通过发送请求复位寄存器(CANTRR)的标志位判断报文发送是否超时;
当未超时时,通过发送寄存器(CANTRS)的标志位判断发送是否进行中;当发送未在进行中,判断缓冲区中是否有待发送报文;
当有待发送报文时,将待发送报文写入发送邮箱的发送寄存器;
通过主控制寄存器(CANMC)、错误和状态寄存器(CANES)的标志位检查CAN总线是否异常;当CAN总线正常时,通过发送寄存器(CANTRS)的发送标志位设置发送请求,并删除缓冲区中对应的报文。
如图4所示,在本发明一实施例中,步骤320包括:
当发送请求复位寄存器(CANTRR)的标志位判断报文发送超时时,取消发送请求;
当发送寄存器(CANTRS)的标志位判断发送进行中缓冲区中,退出发送流程;
当判断缓冲区中没有待发送报文时,退出发送流程;
当通过主控制寄存器(CANMC)、错误和状态寄存器(CANES)的标志位检查CAN总线异常时,退出发送流程。
本发明一实施例的CAN总线控制器的邮箱报文收发系统,包括:
存储器,用于存储上述实施例的CAN总线控制器的邮箱报文收发方法的处理过程的程序代码;
处理器,用于执行上述实施例的CAN总线控制器的邮箱报文收发方法的处理过程的程序代码。
处理器可以采用DSP(Digital Signal Processing)数字信号处理器、FPGA(Field-Programmable Gate Array)现场可编程门阵列、MCU(Microcontroller Unit)系统板、SoC(system on a chip)系统板或包括I/O的PLC(Programmable Logic Controller)最小系统。
本发明一实施例CAN总线控制器的邮箱报文收发系统的架构如图5所示。在图5中,本实施例包括:
初始化装置10,用于通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱;
接收优化装置20,用于根据触发条件启动报文的邮箱接收响应,在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新;
发送优化装置30,用于根据主进程进度启动报文的邮箱发送响应,在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新。
如图5所示,在本发明一实施例中,初始化装置10包括:
通用设置模块11,用于通过通用寄存器配置CAN总线控制器的工作模式和邮箱收发模式;
邮箱设置模块12,用于获取确定关键寄存器指针,通过设置地址偏移量利用确定关键寄存器指针顺序设置各接收邮箱的确定关键寄存器的初始化数据;
接收设置模块13,用于通过判断最终接收邮箱对其他关键寄存器初始化。
如图5所示,在本发明一实施例中,接收优化装置20包括:
接收响应模块21,用于根据接收邮箱数量设置比对循环次数和比对标识,通过比对标识与每个接收邮箱的接收状态标识位逐一比对确定报文到达邮箱,通过报文到达邮箱的数据读取指针读取报文;
接收更新模块22,用于在读取报文后重置报文到达邮箱的接收状态标识位。
如图5所示,在本发明一实施例中,发送优化装置30包括:
发送响应模块31,用于顺序建立数据发送超时-数据发送中-发送缓冲区非空-传输总线异常的发送异常判断流程,根据发送异常判断流程的连续判断形成报文发送流程;
发送更新模块32,用于根据发送异常判断流程的单步判断更新发送流程。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (10)
1.一种CAN总线控制器的邮箱报文收发方法,其特征在于,包括:
通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对所述关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱;
根据触发条件启动报文的邮箱接收响应,在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新;
根据主进程进度启动报文的邮箱发送响应,在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新。
2.如权利要求1所述的CAN总线控制器的邮箱报文收发方法,其特征在于,所述通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对所述关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱包括:
通过通用寄存器配置CAN总线控制器的工作模式和邮箱收发模式;
获取确定关键寄存器指针,通过设置地址偏移量利用确定关键寄存器指针顺序设置各接收邮箱的确定关键寄存器的初始化数据;
通过判断最终接收邮箱对其他关键寄存器初始化。
3.如权利要求1所述的CAN总线控制器的邮箱报文收发方法,其特征在于,所述根据触发条件启动报文的邮箱接收响应,在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新包括:
根据接收邮箱数量设置比对循环次数和比对标识,通过比对标识与每个接收邮箱的接收状态标识位逐一比对确定报文到达邮箱,通过报文到达邮箱的数据读取指针读取报文;
在读取报文后重置报文到达邮箱的接收状态标识位。
4.如权利要求1所述的CAN总线控制器的邮箱报文收发方法,其特征在于,所述根据主进程进度启动报文的邮箱发送响应,在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新包括:
顺序建立数据发送超时-数据发送中-发送缓冲区非空-传输总线异常的发送异常判断流程,根据发送异常判断流程的连续判断形成报文发送流程;
根据发送异常判断流程的单步判断更新发送流程。
5.如权利要求4所述的CAN总线控制器的邮箱报文收发方法,其特征在于,所述顺序建立数据发送超时-数据发送中-发送缓冲区非空-传输总线异常的发送异常判断流程,根据发送异常判断流程的连续判断形成报文发送流程包括:
通过发送请求复位寄存器的标志位判断报文发送是否超时;
当未超时时,通过发送寄存器的标志位判断发送是否进行中;当发送未在进行中,判断缓冲区中是否有待发送报文;
当有待发送报文时,将待发送报文写入发送邮箱的发送寄存器;
通过主控制寄存器、错误和状态寄存器的标志位检查CAN总线是否异常;当CAN总线正常时,通过发送寄存器的发送标志位设置发送请求,并删除缓冲区中对应的报文。
6.一种CAN总线控制器的邮箱报文收发系统,其特征在于,包括:
存储器,用于存储如权利要求1至5任一所述的CAN总线控制器的邮箱报文收发方法的处理过程的程序代码;
处理器,用于执行所述程序代码。
7.一种CAN总线控制器的邮箱报文收发系统,其特征在于,包括:
初始化装置,用于通过对通用寄存器确定标志位进行赋值以初始化邮箱的报文收发状态,依次获取各邮箱的关键寄存器指针,对所述关键寄存器指针的指向地址进行初始化赋值以依次初始化邮箱;
接收优化装置,用于根据触发条件启动报文的邮箱接收响应,在邮箱接收响应过程中根据通用寄存器中接收标志位对邮箱状态进行顺序判断、对接收内容进行邮箱缓存、对邮箱状态进行更新;
发送优化装置,用于根据主进程进度启动报文的邮箱发送响应,在邮箱发送响应过程中根据通用寄存器发送标志位对发文状态进行判断、对发送内容进行缓存、对邮箱状态进行更新。
8.如权利要求7所述的CAN总线控制器的邮箱报文收发系统,其特征在于,所述初始化装置包括:
通用设置模块,用于通过通用寄存器配置CAN总线控制器的工作模式和邮箱收发模式
邮箱设置模块,用于获取确定关键寄存器指针,通过设置地址偏移量利用确定关键寄存器指针顺序设置各接收邮箱的确定关键寄存器的初始化数据
接收设置模块,用于通过判断最终接收邮箱对其他关键寄存器初始化。
9.如权利要求7所述的CAN总线控制器的邮箱报文收发系统,其特征在于,所述接收优化装置包括:
接收响应模块,用于根据接收邮箱数量设置比对循环次数和比对标识,通过比对标识与每个接收邮箱的接收状态标识位逐一比对确定报文到达邮箱,通过报文到达邮箱的数据读取指针读取报文;
接收更新模块,用于在读取报文后重置报文到达邮箱的接收状态标识位。
10.如权利要求7所述的CAN总线控制器的邮箱报文收发系统,其特征在于,所述发送优化装置包括:
发送响应模块,用于顺序建立数据发送超时-数据发送中-发送缓冲区非空-传输总线异常的发送异常判断流程,根据发送异常判断流程的连续判断形成报文发送流程;
发送更新模块,用于根据发送异常判断流程的单步判断更新发送流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110443753.XA CN113141288B (zh) | 2021-04-23 | 2021-04-23 | 一种can总线控制器的邮箱报文收发方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110443753.XA CN113141288B (zh) | 2021-04-23 | 2021-04-23 | 一种can总线控制器的邮箱报文收发方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113141288A true CN113141288A (zh) | 2021-07-20 |
CN113141288B CN113141288B (zh) | 2022-08-23 |
Family
ID=76812436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110443753.XA Active CN113141288B (zh) | 2021-04-23 | 2021-04-23 | 一种can总线控制器的邮箱报文收发方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113141288B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114979058A (zh) * | 2022-06-30 | 2022-08-30 | 东风电驱动系统有限公司 | 一种can多邮箱复用处理方法及系统 |
CN115460035A (zh) * | 2022-08-08 | 2022-12-09 | 武汉海微科技有限公司 | 基于can控制器的文件收发方法、系统、介质及设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1783030A (zh) * | 2004-11-30 | 2006-06-07 | 中兴通讯股份有限公司 | 一种现场可编程门阵列中管理发送缓冲区的方法和装置 |
US20060142061A1 (en) * | 2004-12-23 | 2006-06-29 | Peter Steffan | Dual module clock supply for CAN communication module |
CN101551736A (zh) * | 2009-05-20 | 2009-10-07 | 杭州华三通信技术有限公司 | 基于地址指针链表的缓存管理装置和方法 |
CN102662908A (zh) * | 2012-04-23 | 2012-09-12 | 西安电子科技大学 | 对片上多核系统中的高速接口进行控制的方法及系统 |
CN102752084A (zh) * | 2012-07-27 | 2012-10-24 | 湖南先步信息股份有限公司 | 一种多设备can通讯智能重发方法 |
CN104058323A (zh) * | 2014-06-12 | 2014-09-24 | 重庆伊士顿电梯有限责任公司 | 应用于电梯轿顶的串行通信电路及其控制方法 |
US20150089104A1 (en) * | 2012-12-29 | 2015-03-26 | Guangdong Zhicheng Cahmapiona Group Co., LTD. | Method for controlling multiple can interfaces through single spi bus |
JP2016132318A (ja) * | 2015-01-16 | 2016-07-25 | 株式会社デンソー | 電子制御装置 |
CN109981431A (zh) * | 2019-03-15 | 2019-07-05 | 西安微电子技术研究所 | 一种can总线控制器数据存储电路及数据存储方法 |
CN111899501A (zh) * | 2020-08-04 | 2020-11-06 | 广东电网有限责任公司 | 一种配网自动化主站变电站内开关的遥控方法 |
-
2021
- 2021-04-23 CN CN202110443753.XA patent/CN113141288B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1783030A (zh) * | 2004-11-30 | 2006-06-07 | 中兴通讯股份有限公司 | 一种现场可编程门阵列中管理发送缓冲区的方法和装置 |
US20060142061A1 (en) * | 2004-12-23 | 2006-06-29 | Peter Steffan | Dual module clock supply for CAN communication module |
CN101551736A (zh) * | 2009-05-20 | 2009-10-07 | 杭州华三通信技术有限公司 | 基于地址指针链表的缓存管理装置和方法 |
CN102662908A (zh) * | 2012-04-23 | 2012-09-12 | 西安电子科技大学 | 对片上多核系统中的高速接口进行控制的方法及系统 |
CN102752084A (zh) * | 2012-07-27 | 2012-10-24 | 湖南先步信息股份有限公司 | 一种多设备can通讯智能重发方法 |
US20150089104A1 (en) * | 2012-12-29 | 2015-03-26 | Guangdong Zhicheng Cahmapiona Group Co., LTD. | Method for controlling multiple can interfaces through single spi bus |
CN104058323A (zh) * | 2014-06-12 | 2014-09-24 | 重庆伊士顿电梯有限责任公司 | 应用于电梯轿顶的串行通信电路及其控制方法 |
JP2016132318A (ja) * | 2015-01-16 | 2016-07-25 | 株式会社デンソー | 電子制御装置 |
CN109981431A (zh) * | 2019-03-15 | 2019-07-05 | 西安微电子技术研究所 | 一种can总线控制器数据存储电路及数据存储方法 |
CN111899501A (zh) * | 2020-08-04 | 2020-11-06 | 广东电网有限责任公司 | 一种配网自动化主站变电站内开关的遥控方法 |
Non-Patent Citations (11)
Title |
---|
GLASSINE: "DSP处理器CAN应用程序的实现TMS320F28335", 《BLOG.CSDN.NET.NET/GLASSINE/ARTICLE/DETAILS/97915402》 * |
刘忠菁: "DSP内嵌CAN控制器的邮箱方式数据传输", 《单片机与嵌入式系统应用》 * |
张坤鳌: "基于CAN总线的高压变频系统的应用研究", 《仪表技术与传感器》 * |
张席旗等: "基于CAN总线的ECAN模块设计", 《电子技术与软件工程》 * |
沈跃等: "基于LPC2119和μC/OS-II的CAN中继器设计", 《单片机与嵌入式系统应用》 * |
海光美等: "基于DSP的分析仪器CAN网络通信系统", 《微计算机信息》 * |
王啸: "屏蔽门门控单元在线固件更新方法的研究", 《现代电子技术》 * |
王治国等: "AVR单片机集成CAN总线控制器分析与应用", 《电子产品世界》 * |
胡刚毅等: "基于CAN总线的发动机转速遥控控制技术", 《起重运输机械》 * |
邓红德等: "基于CAN总线的双DSP通信方案设计与实现", 《测控技术》 * |
郑秀芳等: "快速加载系统中基于CVI与DSP的CAN通信研究", 《计算机测量与控制》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114979058A (zh) * | 2022-06-30 | 2022-08-30 | 东风电驱动系统有限公司 | 一种can多邮箱复用处理方法及系统 |
CN114979058B (zh) * | 2022-06-30 | 2023-10-03 | 东风电驱动系统有限公司 | 一种can多邮箱复用处理方法及系统 |
CN115460035A (zh) * | 2022-08-08 | 2022-12-09 | 武汉海微科技有限公司 | 基于can控制器的文件收发方法、系统、介质及设备 |
CN115460035B (zh) * | 2022-08-08 | 2024-01-09 | 武汉海微科技有限公司 | 基于can控制器的文件收发方法、系统、介质及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113141288B (zh) | 2022-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113141288B (zh) | 一种can总线控制器的邮箱报文收发方法和装置 | |
WO2020236280A1 (en) | System and method for facilitating operation management in a network interface controller (nic) for accelerators | |
WO2015078219A1 (zh) | 一种信息缓存方法、装置和通信设备 | |
CN108200544A (zh) | 短信下发方法和短信平台 | |
US8694701B2 (en) | Recovering dropped instructions in a network interface controller | |
US11989556B2 (en) | Detecting infinite loops in a programmable atomic transaction | |
CN113518044B (zh) | Epa设备 | |
CN109062847A (zh) | 片上系统、用于rs485串口通讯的ip核及其控制方法 | |
CN101158936A (zh) | 一种节点之间的数据传输系统和装置及方法 | |
CN112559436A (zh) | 一种rdma通信设备的上下文访问方法及系统 | |
CN115794313B (zh) | 一种虚拟机调试方法、系统、电子设备及存储介质 | |
CN115934625A (zh) | 一种用于远程直接内存访问的敲门铃方法、设备及介质 | |
CN115905046A (zh) | 网卡驱动数据包处理方法、装置、电子设备及存储介质 | |
CN107911372B (zh) | 一种基于逻辑器件实现串口设备接入以太网的方法和装置 | |
CN101420341B (zh) | 嵌入式系统的处理器性能测试方法和装置 | |
US7853713B2 (en) | Communication interface device and communication method | |
CN104901857A (zh) | 总线分析仪 | |
CN111078618A (zh) | 电子设备以及双处理器的通信方法 | |
CN116301627A (zh) | 一种NVMe控制器及其初始化、数据读写方法 | |
CN115955441A (zh) | 一种基于tsn队列的管理调度方法、装置 | |
CN111190840A (zh) | 基于现场可编程门阵列控制的多方中央处理器通信架构 | |
US11178075B2 (en) | Relay device | |
US7443886B1 (en) | Communication protocol system and method | |
CN102761527B (zh) | 集群中服务的访问方法及系统 | |
US20220141051A1 (en) | Relay device |
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 |