CN112217704A - 收发器与微控制器间的通信 - Google Patents

收发器与微控制器间的通信 Download PDF

Info

Publication number
CN112217704A
CN112217704A CN202010643612.8A CN202010643612A CN112217704A CN 112217704 A CN112217704 A CN 112217704A CN 202010643612 A CN202010643612 A CN 202010643612A CN 112217704 A CN112217704 A CN 112217704A
Authority
CN
China
Prior art keywords
bus
transceiver
data
diagnostic
microcontroller
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.)
Pending
Application number
CN202010643612.8A
Other languages
English (en)
Inventor
卢卡斯·P·L·范戴克
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.)
NXP BV
Original Assignee
NXP BV
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 NXP BV filed Critical NXP BV
Publication of CN112217704A publication Critical patent/CN112217704A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0784Routing of error reports, e.g. with a specific transmission path or data flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3041Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4072Drivers or receivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0062Bandwidth consumption reduction during transfers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开一种配置成通过数据总线发送和接收数据的收发器。所述收发器包括连接到所述数据总线的通信端口、配置成检测所述数据总线何时空闲的总线空闲检测器、配置成选择性地接收和发送数据的TXDC接口,以及配置成发送数据的RXDC接口。所述收发器还包括由所述总线空闲检测器的输出端控制的开关。所述开关配置成当所述总线空闲检测器检测到所述数据总线空闲时,使所述TXDC接口用于发送出数据。

Description

收发器与微控制器间的通信
技术领域
本发明涉及收发器与微控制器间的通信,具体地,涉及通过数据总线发送和接收数据的收发器。
背景技术
现代汽车可具有许多电子控制单元(ECU),用于例如引擎控制模块、传输、气囊、防抱死制动、巡航控制、电动转向、音频系统、电动车窗、车门、后视镜调节、用于混合动力/电动汽车的电池和再充电系统等的各种子系统。这些ECU之间的通信可能是必不可少的。子系统可能需要控制致动器或从传感器接收反馈。控制器局域网(CAN)标准被设计成在这些子系统中提供标准化通信协议。CAN是一种双线、半双工、高速串行网络,通常用于在网络节点之间提供通信而无需加载系统微控制器,并且通常用于车辆中。CAN收发器是CAN协议控制器与物理CAN总线之间的接口。例如FlexRay、CAN-FD、CAN-XL和局域互联网络(LIN)等其它协议也用于车辆或系统中的组件之间的通信。
发明内容
提供此发明内容是为了以简化形式引入一些概念,下文在具体实施方式中进一步描述这些概念。此发明内容并不旨在识别所要求的主题的关键特征或必要特征,也不旨在用于限制所要求的主题的范围。
在一个实施例中,公开一种配置成通过数据总线发送和接收数据的收发器。所述收发器包括连接到数据总线的通信端口、配置成检测数据总线何时空闲的总线空闲检测器、配置成选择性地接收和发送数据的TXDC接口,以及配置成发送数据的RXDC接口。所述收发器还包括由总线空闲检测器的输出端控制的开关。所述开关配置成当总线空闲检测器检测到数据总线空闲时,使TXDC接口用于发送出数据。
在另一实施例中,公开一种配置成通过数据总线发送和接收数据的收发器。所述收发器包括连接到数据总线的通信端口、配置成检测数据总线何时空闲的总线空闲检测器、配置成接收数据的TXDC接口、配置成发送数据的RXDC接口,以及配置成选择性地接收控制命令并且发送出数据的控制接口。所述收发器还包括由总线空闲检测器的输出端控制的开关,所述开关配置成当总线空闲检测器检测到数据总线空闲时,使控制接口用于发送出数据。
在一些例子中,所述收发器还包括耦合到通信端口的总线诊断模块,其中所述总线诊断模块配置成分析通信端口以检测错误,并且输出针对检测到的错误预定义的诊断代码,其中在发送出数据时使用所述诊断代码。若未检测到错误,则总线诊断模块配置成输出针对健康状况预定义的诊断代码。所述收发器还可包括收发器诊断模块,所述收发器诊断模块配置成监测内部组件并且输出针对一个或多个内部组件中的检测到的错误预定义的诊断代码,其中在发送出数据时使用所述诊断代码。若内部组件中未检测到错误,则收发器诊断模块配置成发送针对内部组件的健康状况预定义的诊断代码。
在一些实施例中,可包括报告模块,所述报告模块与收发器诊断模块和总线诊断模块耦合,以收集诊断数据并且确定用于所收集诊断数据的预定义诊断代码。确定预定义诊断代码可包括在存储器表中执行查找,所述存储器表包括总线参数和诊断代码的映射。
总线空闲检测器配置成根据数据总线的通信协议的预定义帧结构来检测数据总线的空闲状态。数据总线是控制器局域网(CAN)总线、FlexRay总线、CAN-FD总线、CAN-XL总线和局域互联网络(LIN)总线中的一个。
附图说明
为了可以详细地理解本发明的上述特征,可通过参考实施例获得上述简要概括的本发明的更具体描述,其中一些实施例在附图中示出。然而,应注意附图仅说明本发明的典型实施例,并且因此不应被视为限制本发明的范围,因为本发明可准许其它同等有效的实施例。在结合附图阅读此描述后,所要求的主题的优点对本领域的技术人员将变得显而易见,其中已使用相同附图标记表示相同元件,并且在附图中:
图1描绘包括多个电子控制单元(ECU)的CAN网络,每个电子控制单元连接到CAN总线;
图2描绘与微控制器耦合的收发器;
图3示出根据本公开的一个或多个实施例的与微控制器耦合的收发器的详细视图;
图4示出根据本公开的一个或多个实施例含有用于收发器到微控制器通知的样本诊断代码的表;
图5示出根据本公开的一个或多个实施例含有用于控制收发器的样本控制代码的表;
图6示出根据本公开的一个或多个实施例的收发器的详细视图;以及
图7示出根据本公开的一个或多个实施例的收发器的详细视图。
应注意,图式未按比例绘制。图过渡之间的中间步骤已省略,以免混淆本公开。那些中间步骤对于本领域的技术人员而言是已知的。
具体实施方式
描述中已省略或未详细描述许多熟知的制造步骤、组件和连接件,以免混淆本公开。
容易理解的是,本文大体描述且在附图中示出的实施例的组件可以广泛多种的不同配置来设置和设计。因此,如图中所表示的各种实施例的以下更详细描述并不旨在限制本发明的范围,而是仅表示各种实施例。虽然附图中呈现了实施例的各种方面,但附图未必按比例绘制,除非具体指出。
在不脱离本发明的精神或基本特征的情况下,可以其它特定形式实施本发明。所描述的实施例在所有方面均被视为是说明性而非限制性的。因此,本发明的范围由所附权利要求书而不是由此具体实施方式指示。在权利要求书等效含义和范围内的所有变化均涵盖在权利要求书范围内。
贯穿本说明书对特征、优点或类似语言的参考并不暗示本发明实现的所有特征和优点应是本发明的任何单一实施例或在本发明的任何单一实施例中。确切地说,参考特征和优点的语言应理解为,结合实施例所描述的特定特征、优点或特性包括在本发明的至少一个实施例中。因此,贯穿本说明书对特征和优点以及类似语言的论述可以指但不一定指同一实施例。
此外,本发明的所描述的特征、优点和特性可以任何合适的方式在一个或多个实施例中组合。相关领域的技术人员将认识到,鉴于本文的描述,可在无特定实施例的特定特征或优点中的一个或多个的情况下实践本发明。在其它情况下,在某些实施例中可识别另外的特征和优点,这些特征和优点可能并非在本发明的所有实施例中都存在。
贯穿本说明书对“一个实施例”、“实施例”、“一个例子”或类似语言的参考,是指结合所说明的实施例所描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,“在一个实施例中”、“在实施例中”和贯穿本说明书的类似语言可以但不一定全部指代相同实施例。
图1描绘包括多个ECU 102的CAN网络100,ECU 102也被称作“节点”。每个节点连接到CAN总线104。在图1的实施例中,每个ECU包括微控制器110,微控制器110具有嵌入式CAN协议控制器114和CAN收发器120。微控制器通常连接到至少一个装置,例如传感器、致动器或某一其它控制装置,并且经编程以确定所接收消息的含义并生成适当的传出消息。本领域中已知微控制器也被称作主处理器或数字信号处理器(DSP)。
应注意术语“CAN”仅用于例子。本文所描述的实施例可适用于其它协议,例如FlexRay、CAN-FD、CAN-XL和局域互联网络(LIN)。因此,若本文所描述的实施例应用于LIN协议,则替代地,术语“CAN控制器”将指“LIN控制器”或术语“CAN收发器”将指“LIN收发器”等。
CAN协议控制器114可嵌入在微控制器110内或在微控制器外,如本领域中已知地实现数据链路层操作。例如,在接收操作中,CAN协议控制器存储来自收发器的所接收的串行位,直到可通过微控制器获取整条消息为止。CAN协议控制器还可根据标准化帧格式对CAN帧进行解码。在传输操作中,CAN协议控制器从微控制器接收传输消息,并且以CAN帧格式(或以所使用的协议的帧格式)将位串行传输到CAN收发器。
CAN收发器120位于微控制器110和CAN总线104之间,并且实施物理层操作。例如,在接收操作中,CAN收发器将来自CAN总线的模拟差分信号转换成CAN协议控制器可以解译的串行数字信号。CAN收发器还保护CAN协议控制器以免处于CAN总线上的极端电气条件,例如电涌。在传输操作中,CAN收发器将从CAN协议控制器接收到的串行数字位转换成在CAN总线上发送的模拟差分信号。
CAN总线104承载模拟差分信号,并且包括CAN高电平(CANH)总线线路124和CAN低电平(CANL)总线线路126。CAN总线在本领域中是已知的。
图2描绘图1的一个ECU 102的放大图。所述ECU的微控制器110和CAN收发器120连接在电源电压VCC和接地GND之间。如图2中所示出,从微控制器传送到CAN收发器的数据被识别为传输数据(TXD),而从CAN收发器传送到微控制器的数据被称为接收数据(RXD)。数据分别通过CANH总线线路124和CANL总线线路126传送到CAN总线和从CAN总线传送。包括STBN输入端以使微控制器110能够设置收发器120的操作模式。操作模式可包括仅接听模式、正常模式、待用模式和休眠模式。在一些实施例中,STBN输入端还可用于发送其它控制信号到收发器120。例如,STBN输入端可用于使收发器120执行CAN总线诊断并执行内部诊断。
如上文所述,CAN协议控制器114可配置成支持正常模式或灵活数据速率模式。如本文所用,“CAN正常模式”指根据ISO 11898-1标准格式化的帧,并且“CAN FD模式”指根据新出现的ISO 11898-1WD标准或其等效标准格式化的帧。2012年4月17日发布的文献“具有灵活数据速率的CAN(CAN with Flexible Data-Rate)”(规范版本1.0)中描述了新出现的ISO 11898-1WD标准,所述文献以引用的方式并入本文中。
典型收发器充当数据传递装置,所述数据传递装置将在CAN总线104处接收到的数据转移到微控制器110,且反之亦然。然而,需要将收发器不仅用作传递装置。例如,在本文所描述的实施例中,将收发器120用于其它功能,例如用于CAN总线104诊断和自身的内部诊断。通过这些诊断收集的数据被传输到微控制器110。不使用另外的引脚或数据线将此另外数据传输到微控制器110(或从微控制器110接收命令),只需对控制器软件或操作微控制器110的逻辑进行修改,就能够继续使用现有印刷电路板(PCB)布局(收发器120和微控制器110没有引脚和封装变化)。收发器120和微控制器110保持符合CAN标准,但仍添加如本文所述的特征。例如,基于诊断信息,微控制器110可通过改变收发器110的操作模式或通知其它ECU可能的错误条件等采取校正动作。可基于微控制器110的程序逻辑来扩展校正动作。
为了确保不需要另外的数据线将诊断信息传送到微控制器110,收发器120需要使用现有TXDC和/或RXDC数据线。然而,这些数据线已配置成用于与CAN总线104的数据通信。在一些实施例中,当收发器120需要传输诊断信息到微控制器110时,在从CAN总线104接收最后数据后,收发器120等待收发器120与微控制器110之间达成一致的预定时间段,然后将诊断代码发送到微控制器110。诊断代码可包括少量位(例如,4到10位,取决于配置)。因此,传输这些位可仅花费少量时间(例如,通常几微秒)。在一些实例中,收发器120可先将标记数据发送到微控制器110,以指示下一预定义位数将为诊断代码。
图3更详细地示出收发器120和微控制器110,然而未示出许多组件(例如,接收器)以免混淆本公开。在一些实施例中,CAN控制器或CAN协议控制器114可以是微控制器110的一部分。在其它实施例中,CAN控制器114可在微控制器110外部。收发器120包括用于改变收发器120的操作模式的模式控制模块240。收发器120还包括与CANH 124和CANL 126耦合的输出级(或传输器)230。包括总线诊断模块250以监测CANH 124和CANL 126的状态。视情况可包括收发器诊断模块220以执行收发器120的内部健康检查。包括输入单元270以从微控制器114接收STBN引脚上的控制信号。包括输出驱动器260以通过RXDC引脚发送数据到微控制器。包括输入/输出(I/O)模块280以通过TXDC引脚发送和接收数据。I/O模块280可包括用于发送数据的输出驱动器和用于接收数据的输入单元。
应注意,并未示出收发器120的所有组件,以免混淆本公开。例如,在安全收发器的情况下,收发器120可包括CAN代码查找表,因此可停止来自未被授权发送特定CAN代码的CAN节点的传输。本文所描述的实施例不取决于特定类型的收发器。
总线诊断模块250配置成监测CANH 124和CANL126。例如,总线诊断模块250可检测CANH 124和/或CANL 126是否断开(例如,不连接到CAN总线104)、一起短路、接地短路、电池短路。在一些实施例中,以预选定的规则间隔执行诊断。在其它实施例中,微控制器110可要求收发器120执行诊断。诊断结果被传输到微控制器110以进行另外的动作。例如,向用户控制面板或外部报告模块报告。微控制器110还可取决于错误的类型而采取校正动作。例如,微控制器110可将收发器120置于降级的操作模式,或将收发器120置于休眠模式或低功率模式等。例如,若CANH124断开,则微控制器110可重新配置收发器120以仅通过CANL 126在单向通信模式下操作,因此仍可执行至少一些操作直到执行修复。
在一些例子中,当总线诊断模块250未检测到错误时,也将这一情况传送到微控制器110。在一些实施例中,当微控制器110在预定时间内未接收到诊断状态时,微控制器110可假定收发器120出现故障,并且微控制器110将此情况报告给控制面板或用户,使得可以执行校正动作。在一些例子中,若存在用于关键安全性相关操作的冗余组件(例如,用于自动驾驶车辆中的雷达等关键组件),则车辆的中央控制器可重新配置系统,以在接收到组件不在规范内操作的报告后或在组件发生故障时使用冗余组件。
收发器诊断模块220可与收发器120的至少关键内部组件耦合,并且可对收发器120的内部组件执行内部诊断。例如,若内部组件在当前规范外操作,则可通知微控制器110,使得可通知系统的操作者并且可执行修复。例如,若内部电源电压过低,或组件在低于或接近组件规范中规定的较低电压的电压下输出信号,则可以是老化的标志,并且需要通知微控制器110,因此微控制器110可通知控制面板或系统(例如,车辆)的操作者。在一些实例中,内部诊断数据还可用于故障预测。当检测到错误时,发送未检测到错误代码。
可包括报告模块252以提供接口,用于从微控制器110接收控制信号,并且向微控制器110提供诊断数据。报告模块252与总线诊断模块250和收发器诊断模块220耦合。报告模块252可与STBN引脚耦合,或者,若控制器110配置成通过例如TXDC或RXDC等任何其它引脚发送控制信号,则报告模块252与所述引脚耦合。取决于用于发送诊断数据到微控制器110的配置,报告模块252与TXDC引脚耦合。报告模块252配置成使总线诊断模块250和收发器诊断模块220以预定义间隔执行诊断操作,或在从微控制器110接收到状态检查控制信号后执行诊断操作。在一些例子中,微控制器110可配置成发送特定状态检查控制信号,如图5所描述。
在另一实施例中,TXDC引脚可用于发送诊断代码到微控制器110。TXDC引脚由微控制器110用于发送数据到收发器120。因此,当在TXDC引脚上接收到数据时,微控制器110可假定接收到的数据为诊断代码。例如,微控制器110可发送状态检查控制信号到收发器120,并且开始监测TXDC引脚以接收诊断代码。在此例子中,微控制器110可继续使用RXDC接脚以从CAN总线104接收数据,同时仍执行所描述的状态检查。在一些例子中,STBN引脚还可用于接收控制信号并且发送诊断代码。
图4示出包括样本诊断代码的表300。在表300中,每一诊断代码包括五个位(b0到b4)。然而,位数是任意的,系统设计者可选择不同数目的位,这取决于需要传输到微控制器110的不同消息总数。应注意,表300示出的每个诊断代码的错误消息仅作为例子。系统设计者可针对不同类型的消息选择不同代码。一些代码可设置成保留以在未来使用。例如,在未来的某个日期,可对收发器-控制器对进行再编程以使用保留的代码。在从总线诊断模块252和/或收发器诊断模块220收集诊断数据后,报告模块252可预处理数据,并且发送诊断代码到微控制器110。在一些实施例中,总线诊断模块250、收发器诊断模块220和报告模块252中的一个或多个可组合成一个模块。在一些例子中,至少报告模块252可在软件中实施,并且可由收发器微控制器(图未示出)执行。若报告模块在硬件中实施,则可不需要收发器微控制器。
图5示出表310,表310包括由微控制器110使用以控制收发器120的样本控制代码。在一些实施例中,可通过STBN引脚发送这些控制代码。在其它例子中,TXDC引脚可用于发送控制代码到收发器。可由系统设计者基于所需的此类代码的数目来决定控制代码中的位数。
收发器120可包括用于存储表300、310的存储器242。错误条件参数的映射可与表300所示的诊断代码一起存储。例如,在CANL 126处的0电压检测可映射到CAN接地短路诊断代码。报告模块252配置成基于从CAN总线诊断模块250和/或收发器诊断模块220接收到的参数值,查找适当的诊断代码。
类似地,可连同针对表310中的每一控制代码执行的可能动作一起存储表310。当从微控制器110接收到状态检查控制信号时,报告模块252查找表310以找出需要执行什么操作。例如,关机收发器控制代码可映射到操作“切断组件x1、x2、x3的电源”(例子仅为易于理解)。
图6示出另一实施例中的收发器120。如上文所陈述,可修改收发器120以用于例如CAN、FlexRay和LIN等各种通信协议中。CAN和FlexRay使用两根线,而LIN使用一根线,用于发送和接收数据。CANH124在FlexRay术语中可被称作BP 124。类似地,CANL 126在FlexRay术语中可被称作BM 126。LIN线以虚线示出。若收发器120被设计成用于LIN协议,而不是CANH 124和CANL 126,则收发器120将仅具有用于通过LIN总线发送/接收数据的LIN线。
收发器120包含总线空闲检测器255。收发器120还包含接收器231。总线空闲检测器根据协议配置。通信协议包括明确界定的分组结构和识别总线空闲状态的机制。例如,在CAN协议中,十一个隐性位的连续流指示总线进入空闲状态,因为CANL 126上不再有待接收数据。类似地,在FlexRay分组中,每一“循环”包括静态段、动态段、符号窗口以及在这些之后的网络空闲时间。在LIN协议中,数据帧之间使用帧间间隔,并且所述间隔在时间上足够宽,以允许在那些帧间间隔间发送诊断代码的位到微控制器110。各种通信协议的这些分组结构在本领域中是众所周知的,因此省略详细论述。
在一些例子中,微控制器110可继续在RXDC上接收数据,并且缓冲将在TXDC上发送的数据数微秒,以给收发器120发送报告数据位的机会。通常,发送五位将仅花费几微秒,因此,不需要大存储器来缓冲将通过数据总线传输的数据。在此例子中,开关257基于来自微控制器110的控制信号而操作,而不是使用总线空闲检测器255。
总线空闲检测器255根据收发器120的协议配置成根据预定义协议标准检测总线空闲状态。总线空闲检测器255监测接收器末端的总线。在一些实施例中,总线空闲检测器255还可监测传输器侧总线,以检查微控制器是否仍发送数据。收发器120包括可配置的输入/输出单元280和开关257。输入/输出单元280包括输入单元和输出驱动器。在一些实施例中,开关257可在输入/输出单元280中实施。当总线空闲检测器255检测到总线空闲时,开关257使报告模块252通过输入/输出单元280中的输出驱动器连接到TXDC。如上文所描述,报告模块252可收集将通过总线诊断模块250和/或收发器诊断模块220发送到微控制器110的数据。微控制器110还包括检测总线空闲状态的类似机制。收发器120和微控制器110对总线上数据接收的定时不具有任何控制。然而,微控制器110对何时通过TXDC发送数据具有控制。当开关257将报告模块252连接到TXDC时,微控制器110配置自身以在TXDC上接收数据。当微控制器110在TXDC上接收数据时,微控制器110保存将通过TXDC传输到总线的数据。当报告模块252通过TXDC发送数据到微控制器110时,收发器120可开始通过接收器231接收数据。然而,收发器120处不需要中断数据缓冲,因为通过接收器231接收的数据可通过输出驱动器260和RXDC传输到微控制器110。RXDC继续照常充当接收线。按照诊断代码的设计,报告模块252通常仅发送几个位。例如,本文的例子中使用的五位协议。如上文所描述,通过TXDC传输这些少量位将仅花费几微秒。因此,即使微控制器110有一些将通过TXDC发送的数据,也仅需等待几微秒。一旦完成报告数据或数据请求的传输,开关257再次将传输器230连接到TXDC。
在一些实施例中,在开关257将报告模块252连接到TXDC后,收发器120配置成在开始通过TXDC发送数据到微控制器110前等待预选定的时间,以考虑微控制器110中可能的延迟来配置自身以开始通过TXDC接收数据。可注意到,如上文所描述,报告模块252配置成通过其它模块积累数据,以发送到微控制器110。当开关257将报告模块连接到TXDC时,微控制器110还可使用TXDC发送控制信号的数据请求到报告模块252。
图7示出又一实施例中的收发器120。在此实施例中,STBN引脚,若可用,则用于发送报告数据到微控制器110或从微控制器110接收命令。STBN引脚通常仅耦合到输入单元,并且用于接收例如模式控制命令等控制命令,如先前所描述。在此实施例中,输入/输出单元280代替输入单元。当总线繁忙时,开关257将STBN连接到模块控制模块240。一旦总线空闲检测器255检测到总线空闲状态,开关257就通过输入/输出单元280将报告模块252连接到STBN。微控制器110还配置成检测总线空闲,并且配置自身以开始通过STBN接收报告数据,或通过STBN将命令或数据请求发送到报告管理器252。一旦完成传输报告数据或数据请求,开关257再次将模式控制模块240连接到STBN。在此实施例中,由于STBN处的操作不干扰TXDC和RXDC处的数据传输,因此收发器120照常继续通过总线发送和接收数据。在一些实例中,微控制器110可继续在RXDC上接收数据和在TXDC上发送数据,并且可通过STBN发送控制信号,以使收发器120能够通过STBN发送诊断数据到微控制器110,无需等待总线空闲状态。在此例子中,开关257基于来自微控制器110的控制信号而操作,而不是使用总线空闲检测器255。
可组合这些实施例中的一些或全部,可完全省略一些,并且可添加另外的过程步骤,同时仍实现本文所描述的产品。因此,本文所描述的主题可以许多不同变化形式体现,并且所有此类变化涵盖在所要求的范围内。
虽然已借助例子且就具体实施例描述了一个或多个实现方式,但应理解,一个或多个实现方式不限于所公开的实施例。相反,如对本领域的技术人员显而易见,希望覆盖各种修改和类似设置。因此,所附权利要求书的范围应被赋予最广泛的解释,以便包含所有此类修改和类似设置。
除非本文中另外表明或与上下文有明显矛盾,否则在描述主题的上下文中(特别是在所附权利要求书的上下文中)使用术语“一”、“所述”和类似指代物应理解为覆盖单数和复数两者。除非在此另有表明,否则本文中的值范围的叙述仅旨在充当分别提及所述范围内每一单独值的速记方法,且每一单独值并入本说明书中,如本文分别所述。此外,前文描述仅出于说明的目的,而非出于限制的目的,因为所寻求的保护范围由所附权利要求书及其任何等效物定义。本文所提供的任何和所有例子,或实例性语言(例如“例如”)的使用,仅旨在更好地说明主图,并且除非有另外要求,不对主题的范围造成限制。权利要求书中和在书面描述中都使用术语“基于”和其它类似短语表明引起结果的条件,并不旨在排除产生所述结果的任何其它条件。本说明书中的任何语言都不应被解释为表明任何未要求的要素是本发明所要求的实践所需的。
实现所要求的主题的发明人已知本文描述的优选实施例。当然,在阅读前述描述后,那些优选实施例的变化对于本领域的普通技术人员变得显而易见。本发明人期望熟练的技术人员按需要采用此类变化,并且本发明人旨在以不同于本文中具体描述的方式来实践所要求的主题。因此,所要求保护的主题包括法律所准许的所附权利要求书中叙述的主题的所有修改和等效物。此外,除非本文另外指明或明显与上下文矛盾,否则包含上文所描述的要素在其所有可能变化形式中的任何组合。

Claims (10)

1.一种配置成通过数据总线发送和接收数据的收发器,其特征在于,所述收发器包括:
通信端口,所述通信端口连接到所述数据总线;
总线空闲检测器,所述总线空闲检测器配置成检测所述数据总线何时空闲;
TXDC接口,所述TXDC接口配置成选择性地接收和发送数据;
RXDC接口,所述RXDC接口配置成发送数据;以及
开关,所述开关由所述总线空闲检测器的输出端控制,其中所述开关配置成当所述总线空闲检测器检测到所述数据总线空闲时,使所述TXDC接口用于发送出数据。
2.根据权利要求1所述的收发器,其特征在于,另外包括耦合到所述通信端口的总线诊断模块,其中所述总线诊断模块配置成分析所述通信端口以检测错误,并且输出针对检测到的错误预定义的诊断代码,其中在所述发送出数据时使用所述诊断代码。
3.根据权利要求2所述的收发器,其特征在于,若未检测到错误,则所述总线诊断模块配置成输出针对健康状况预定义的诊断代码。
4.根据权利要求1所述的收发器,其特征在于,另外包括收发器诊断模块,所述收发器诊断模块配置成监测内部组件并且输出针对一个或多个内部组件中的所述检测到的错误预定义的诊断代码,其中在所述发送出数据时使用所述诊断代码。
5.根据权利要求4所述的收发器,其特征在于,若所述内部组件中未检测到错误,则所述收发器诊断模块配置成发送针对所述内部组件的健康状况预定义的诊断代码。
6.根据权利要求4所述的收发器,其特征在于,另外包括报告模块,所述报告模块与所述收发器诊断模块和所述总线诊断模块耦合,以收集诊断数据并且确定用于所收集诊断数据的预定义诊断代码。
7.根据权利要求6所述的收发器,其特征在于,所述确定包括在存储器表中执行查找,所述存储器表包括总线参数和诊断代码的映射。
8.根据权利要求1所述的收发器,其特征在于,所述总线空闲检测器配置成根据所述数据总线的通信协议的预定义帧结构来检测所述数据总线的空闲状态。
9.根据权利要求1所述的收发器,其特征在于,所述数据总线是控制器局域网(CAN)总线、FlexRay总线、CAN-FD总线、CAN-XL总线和局域互联网络(LIN)总线中的一个。
10.一种配置成通过数据总线发送和接收数据的收发器,其特征在于,所述收发器包括:
通信端口,所述通信端口连接到所述数据总线;
总线空闲检测器,所述总线空闲检测器配置成检测所述数据总线何时空闲;
TXDC接口,所述TXDC接口配置成接收数据;
RXDC接口,所述RXDC接口配置成发送数据;
控制接口,所述控制接口配置成选择性地接收控制命令并且发送出数据;以及
开关,所述开关由所述总线空闲检测器的输出端控制,所述开关配置成当所述总线空闲检测器检测到所述数据总线空闲时,使所述控制接口用于发送出数据。
CN202010643612.8A 2019-07-11 2020-07-06 收发器与微控制器间的通信 Pending CN112217704A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/509,304 2019-07-11
US16/509,304 US10838906B1 (en) 2019-07-11 2019-07-11 Communication between transceiver and microcontroller

Publications (1)

Publication Number Publication Date
CN112217704A true CN112217704A (zh) 2021-01-12

Family

ID=73264148

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010643612.8A Pending CN112217704A (zh) 2019-07-11 2020-07-06 收发器与微控制器间的通信

Country Status (2)

Country Link
US (1) US10838906B1 (zh)
CN (1) CN112217704A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115695080A (zh) * 2022-12-30 2023-02-03 北京国科天迅科技有限公司 实现高速串行数据传输的装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3852314B1 (en) 2020-01-17 2024-03-13 Nxp B.V. Controller area network transceiver and controller
EP4080832A1 (en) 2021-04-23 2022-10-26 Nxp B.V. Additional communication in standardized pinout of a bidirectional interface between a first and second communication device
EP4099641A1 (en) * 2021-06-03 2022-12-07 Nxp B.V. Transceiver device
US11870603B2 (en) 2021-12-31 2024-01-09 Nxp B.V. Controller area network termination scheme

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6604038B1 (en) * 1999-11-09 2003-08-05 Power Talk, Inc. Apparatus, method, and computer program product for establishing a remote data link with a vehicle with minimal data transmission delay
CN1659064A (zh) * 2002-06-10 2005-08-24 皇家飞利浦电子股份有限公司 用于检测一个网络的部件的接地偏移的电路
CN1671141A (zh) * 2005-02-28 2005-09-21 邹润民 多主通信系统
CN101320269A (zh) * 2007-06-08 2008-12-10 联创汽车电子有限公司 具有can诊断的车身控制模块
US20140129748A1 (en) * 2012-11-02 2014-05-08 Nxp B.V. Controller area network (can) transceiver and method for operating a can transceiver
CN105453440A (zh) * 2013-07-24 2016-03-30 飞思卡尔半导体公司 收发器电路以及用于控制器局域网络的方法
CN205871957U (zh) * 2016-08-09 2017-01-11 黄山市瑞兴汽车电子有限公司 一种can总线车身开关集成控制系统
CN107656887A (zh) * 2016-07-25 2018-02-02 中兴通讯股份有限公司 外设总线的控制装置及方法
CN109383370A (zh) * 2017-08-02 2019-02-26 福特全球技术公司 针对点火系统来监控和提醒车辆乘员

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4813040A (en) * 1986-10-31 1989-03-14 Futato Steven P Method and apparatus for transmitting digital data and real-time digitalized voice information over a communications channel
CA1322390C (en) * 1987-09-22 1993-09-21 Nec Corporation Star topology local area network
KR970007251B1 (ko) * 1994-02-25 1997-05-07 한국전기통신공사 다중버스용 실시간 멧세지 전송장치 및 그 제어방법
MXPA02005003A (es) * 1999-11-17 2004-08-12 Power Talk Inc Metodo para comunicacion de datos entre un vehiculo y una terminal remota.
US6831551B2 (en) * 2002-12-19 2004-12-14 General Electric Company Method and system for modulating a carrier frequency to support nondestructive bitwise arbitration of a communication medium
FR2865333B1 (fr) * 2004-01-20 2006-04-28 Atmel Nantes Sa Procede de detection automatique du debit d'un reseau, notamment de type bus can, et de configuration au debit detecte par analyse de transitions, dispositif correspondant
US9652423B2 (en) * 2013-06-05 2017-05-16 Texas Instruments Incorporated CAN and flexible data rate CAN node apparatus and methods for mixed bus CAN FD communications
DE102017209435A1 (de) * 2017-06-02 2018-12-06 Robert Bosch Gmbh Verfahren zur Kommunikation zwischen einem Mikrocontroller und einem Transceiver Baustein, Mikrocontroller und Transceiver Baustein
DE102017209433A1 (de) * 2017-06-02 2018-12-06 Robert Bosch Gmbh Verfahren zur Kommunikation zwischen einem Mikrocontroller und einem Transceiver Baustein
US11200128B2 (en) * 2018-08-28 2021-12-14 Nxp B.V. Network interface device and method for operating a network interface device

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6604038B1 (en) * 1999-11-09 2003-08-05 Power Talk, Inc. Apparatus, method, and computer program product for establishing a remote data link with a vehicle with minimal data transmission delay
CN1659064A (zh) * 2002-06-10 2005-08-24 皇家飞利浦电子股份有限公司 用于检测一个网络的部件的接地偏移的电路
CN1671141A (zh) * 2005-02-28 2005-09-21 邹润民 多主通信系统
CN101320269A (zh) * 2007-06-08 2008-12-10 联创汽车电子有限公司 具有can诊断的车身控制模块
US20140129748A1 (en) * 2012-11-02 2014-05-08 Nxp B.V. Controller area network (can) transceiver and method for operating a can transceiver
CN105453440A (zh) * 2013-07-24 2016-03-30 飞思卡尔半导体公司 收发器电路以及用于控制器局域网络的方法
CN107656887A (zh) * 2016-07-25 2018-02-02 中兴通讯股份有限公司 外设总线的控制装置及方法
CN205871957U (zh) * 2016-08-09 2017-01-11 黄山市瑞兴汽车电子有限公司 一种can总线车身开关集成控制系统
CN109383370A (zh) * 2017-08-02 2019-02-26 福特全球技术公司 针对点火系统来监控和提醒车辆乘员

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115695080A (zh) * 2022-12-30 2023-02-03 北京国科天迅科技有限公司 实现高速串行数据传输的装置
CN115695080B (zh) * 2022-12-30 2023-06-06 北京国科天迅科技有限公司 实现高速串行数据传输的装置

Also Published As

Publication number Publication date
US10838906B1 (en) 2020-11-17

Similar Documents

Publication Publication Date Title
US10838906B1 (en) Communication between transceiver and microcontroller
US10999096B2 (en) Functional safety transceiver
CN105745871B (zh) 具有以太网总线系统的车辆和用于运行这样的总线系统的方法
US8750351B2 (en) Configuration of bus transceiver
JP4407752B2 (ja) 故障箇所検出装置及び通信装置並びに故障箇所検出方法
CN110892681B (zh) 发送/接收装置、总线系统及识别短路的方法
CN113454952B (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
CN111108725A (zh) 用于监视通信总线上的通信的方法和用于连接到通信总线的电子设备
CN114144996B (zh) 用于串行总线系统的用户站的装置和用于在串行总线系统中进行通信的方法
CN111614531B (zh) 用于监视lin节点的方法、介质、监视设备
CN113196711B (zh) 用于串行总线系统的用户站的装置和用于串行总线系统中的通信的方法
CN105981319A (zh) 总线系统的用户站和提高总线系统的数据速率的方法
JP2009111911A (ja) 通信装置及び通信システム並びに通信方法
EP4207691A1 (en) Controller area network termination scheme
CN111555946B (zh) 总线系统的用户站和在总线系统中的数据传输的方法
JP2009267853A (ja) 通信システム及び通信方法
CN115441889A (zh) 收发器装置
KR101603546B1 (ko) 차량 통신 네트워크 제공 방법 및 장치
CN108234236B (zh) 网关和用于控制网关的方法
EP1989630B1 (en) Interface between busses of different physical layers
WO2023106091A1 (ja) 車載装置、接続切替方法および接続切替プログラム
US20230291605A1 (en) Apparatus
JP4959484B2 (ja) 中継接続ユニット
JP6617091B2 (ja) 自動車用電子制御装置

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