0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是唤醒标志Wake flag?AUTOSAR架构下CanTrcv休眠唤醒问题再探

832065824 来源:汽车电子嵌入式 2023-11-29 09:23 次阅读

正文

1.收发器硬件唤醒功能

1.1 什么是唤醒标志Wake flag

TJA1043收发器供电正常(供电不正常也会切换收发器状态)时候的硬件状态切换条件有三个硬件信号组成:

STB_N(低有效,拉低进入到Standby状态)

EN引脚(拉高,使能收发器)

Wake flag

STB_N和EN就是收发器的两个IO引脚,Wake flag啥了?

2e74c0be-8e4b-11ee-939d-92fbcf53809c.png

TJA1043收发器内部有很多硬件Internal flags,这里我们着重介绍下唤醒相关的UVNOM和Wake flag.

2ea0d67c-8e4b-11ee-939d-92fbcf53809c.png

1.1.1 UVNOMflag

以下两种场景会置位UVNOMflag:

VCC < Vuvd(VCC), 维持时间超过 tdet(uv)(100ms~350ms)

VIO < Vuvd(VIO) 维持时间超过 tdet(uv) (100ms~350ms)

2ec93900-8e4b-11ee-939d-92fbcf53809c.png

2ee368a2-8e4b-11ee-939d-92fbcf53809c.png

UVNOM置位后的动作:TJA1043收发器进入到Sleep Mode

以下场景会清除UVNOM:

任何唤醒行为, 设置Pwon flag

STB_N 引脚出现LOW-to-HIGH变化

VCC 和VIO 都恢复。CAN transceiver会基于引脚STB_N 和EN当前状态切换到对应的状态

2efb7e6a-8e4b-11ee-939d-92fbcf53809c.png

1.1.2 Wake flag

以下场景置位Wake flag:

收发器硬件检测到本地唤醒事件(Wake Pin由低到高)

收发器硬件检测到远程唤醒事件(Wake pattern)

置位Wake flag后的动作:

清除UVNOM及对应的Timer

以下场景会清除Wake flag:

UVNOM被设置

收发器进入Normal Mode

2f12c0de-8e4b-11ee-939d-92fbcf53809c.png

2f2b93ca-8e4b-11ee-939d-92fbcf53809c.png

1.2 什么是本地唤醒和远程唤醒

1.2.1 本地唤醒

2f4a1b88-8e4b-11ee-939d-92fbcf53809c.png

WAKE引脚上电压水平由低到高或者由高到低,并且新切换的电平维持至少twake的时间。

2f68efea-8e4b-11ee-939d-92fbcf53809c.png

1.2.2 远程唤醒

当CAN总线上收到一个完整的Wake-Up Pattern (ISO 11898-2) 会远程唤醒TJA1043收发器。

一个完整的WakeUp Pattern如下图所示,至少在tto(wake)bus这段时间内收到显性位(0)-隐性位(1)-显性位(0),显性位的持续时间大于等于twake(busdom)隐性位的持续时间大于等于twake(busrec)。

2f80ce76-8e4b-11ee-939d-92fbcf53809c.png

1.3 收发器的ERR_N引脚

顾名思义,ERR_N引脚好像是用来标识TJA1043收发器的错误状态的,但不仅仅如此。

2f9df8a2-8e4b-11ee-939d-92fbcf53809c.png

通过ERR_N可以检测Internal flag. 以Wake flag为例,Wake flag置位后可以通过ERR_N引脚来检测Wake flag有没有被置位。

2faf201e-8e4b-11ee-939d-92fbcf53809c.png

也就是说,TJA1043收发器的本地唤醒可以通过WAKE引脚来检测,远程唤醒可以通过ERR_N引脚来检测。

注意:一般收发器在Sleep模式下等待唤醒事件,如果发生远程唤醒,则:

STB_N引脚低电平

EN引脚为高电平

Wake flag set

这个时候如果软件要检测唤醒事件,应该同时检测STB_N引脚及ERR_N引脚,也就是说STB_N引脚既当输出引脚又是输入引脚。

2. CanTrcv模块检测唤醒事件






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 收发器
    +关注

    关注

    10

    文章

    3424

    浏览量

    105960
  • AUTOSAR
    +关注

    关注

    10

    文章

    360

    浏览量

    21553

原文标题:AUTOSAR架构下CanTrcv休眠唤醒问题再探

文章出处:【微信号:汽车电子嵌入式,微信公众号:汽车电子嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    干货分享 | TSMaster—LIN 唤醒休眠机制

    在汽车总线中常见的唤醒方式有硬线唤醒、网络唤醒和特定信号唤醒,而LIN总线则是通过休眠帧与唤醒
    的头像 发表于 09-25 08:03 1562次阅读
    干货分享 | TSMaster—LIN <b class='flag-5'>唤醒</b>与<b class='flag-5'>休眠</b>机制

    STM32休眠不能唤醒的原因?

    休眠之后,会拉低相关的GPIO,确保省电;配置一些外部中断,用来唤醒停止模式;休眠前写入一个值到备份寄存器。 然后休眠休眠26秒后,看门狗
    发表于 05-13 08:47

    如何获取休眠唤醒源函数MAP_PRCMHibernateWakeupCauseGet

    Hi, 大家好,最近在用CC3200做项目,其中涉及到进入休眠,1、通过GPIO唤醒,2通过RTC唤醒(实现系统自复位功能)进入休眠之前已经设置了
    发表于 06-15 16:34

    如何实现rk3288在irq上增加休眠唤醒的功能呢

    适用场景当应用程序必须等待某个事件发生,比如必须等待按键被按时,可以使用“休眠-唤醒”机制:APP 调用 read 等函数试图读取数据,比如读取按键;APP 进入内核态,也就是调用驱动中的对应函数
    发表于 05-16 09:31

    唤醒事件屏蔽掉RTC,为啥RTC还是能唤醒休眠

    中断。可以肯定是RTC唤醒的,因为只要把RTC中断关闭,在没有按键之类的io中断,系统是不会从休眠中被唤醒唤醒后打印出R8_SLP_WAKE
    发表于 08-24 07:08

    CH554电脑休眠时有哪个标志可获取当前状态?

    设置了SPI接收到数据时唤醒电脑,请问有什么标志可以识别当前电脑在休眠么?我想在SPI中断接收到数据时,同时读到此标志调用 CH554U
    发表于 10-11 06:37

    远程唤醒技术

    远程唤醒技术   远程唤醒技术(WOL,Wake-on-LAN) 是由
    发表于 12-26 11:53 429次阅读

    CAT1模块在liteos实现休眠唤醒功能

    ="203.156.205.55",74261,180,"sleep12345","wake123"③设置登录包“login”,登录应答check包“OK”,休眠断开usb flag1,连接重试次数3,发送重试次数2
    的头像 发表于 09-11 17:53 880次阅读
    CAT1模块在liteos<b class='flag-5'>下</b>实现<b class='flag-5'>休眠</b><b class='flag-5'>唤醒</b>功能

    CAT1模块在liteos实现休眠唤醒功能

    ="203.156.205.55",74261,180,"sleep12345","wake123"③设置登录包“login”,登录应答check包“OK”,休眠断开usb flag1,连接重试次数3,发送重试次数2
    的头像 发表于 09-11 17:59 6075次阅读

    单片机休眠唤醒二三事

    想知道单片机休眠如何像吃了德芙一样丝滑么?想让你的单片机产品在合适的时候休眠待机不再失眠么?想让你的单片机项目随叫随醒不再怠惰长眠么?答案-关于单片机休眠唤醒的配置都在这里了
    发表于 12-20 19:00 24次下载
    单片机<b class='flag-5'>休眠</b>与<b class='flag-5'>唤醒</b>二三事

    LIN控制器休眠唤醒类型方式及测试案例

    虽然新架构的发展促进着通信技术的升级换代,但作为车载通信技术的常青树之一的LIN通信,由于其自身的特点,将会继续发光发热。其中LIN的休眠唤醒作为整车休眠
    的头像 发表于 12-16 09:18 1874次阅读

    ECU系统休眠后通过诊断报文唤醒ECU且唤醒网络

    ECU系统休眠后TJA1043的INH脚处于floating高阻态,系统休眠后通过硬件外部电路下拉到低电平状态/Low-level,ECU系统休眠前把TJA1043的INH脚配置为唤醒
    的头像 发表于 04-04 09:40 8628次阅读

    ECU系统休眠后通过诊断报文唤醒ECU且唤醒网络后快发NM报文

    在一文中我们分析并实现了通过诊断报文唤醒ECU且唤醒网络的需求,但是经过测试发现网络
    的头像 发表于 05-09 09:36 5482次阅读
    ECU系统<b class='flag-5'>休眠</b>后通过诊断报文<b class='flag-5'>唤醒</b>ECU且<b class='flag-5'>唤醒</b>网络后快发NM报文

    LIN休眠唤醒及测试心得

    这次我们的介绍主题是LIN休眠唤醒,一起看看标准和差异性,开发和测试的关系,实际的案例分享也来了。
    的头像 发表于 11-23 08:43 1183次阅读
    LIN<b class='flag-5'>休眠</b><b class='flag-5'>唤醒</b>及测试心得

    理一理AUTOSAR架构唤醒源事件

    最近的项目负责网络管理部分,网路唤醒和ECU系统的休眠关系紧密,对系统的唤醒源事件感觉理解的不是很透彻,今天就来理一理AUTOSAR架构
    的头像 发表于 07-14 09:11 3802次阅读
    理一理<b class='flag-5'>AUTOSAR</b><b class='flag-5'>架构</b><b class='flag-5'>下</b>的<b class='flag-5'>唤醒</b>源事件