1主动唤醒源/被动唤醒源

主动唤醒源:承担着主动唤醒网络责任的唤醒源,称为主动唤醒源。比如:KL15硬线,User请求,ERA信号等。

KL15硬线:通过KL15硬线方式唤醒网络,说明当前网络没有节点参与通信,为了快速将网络唤醒,建立通信功能,被KL15硬线唤醒的节点,需要主动地去唤醒网络,进而将网络上其他节点唤醒。所以,可以将KL15硬线看作主动唤醒源。同理,类似于KL15硬线唤醒网络的其他硬线唤醒方式,也可以看作​主动唤醒源;

User请求:User请求,是指通过ComM_RequestComMode()接口请求通信的方式,发起点为SWC,由于功能需要,节点需要在某些工况下主动拉起其他节点通信;

ERA信号:ERA信号怎么看作是主动唤醒源呢?首先,ERA信号的使用,说明当前节点有多个物理Channel(ComM的Channel与之一一对应),PNC信息需要在不同的Channel之间路由,以实现不同网络唤醒的目的。

比如:CAN 1在CAN BUS 1上收到一帧网络管理报文,包含PNC #n = 1,且PNC #n与CAN1和CAN2均关联,PNC #n需要由CAN1路由到CAN2,CANBUS2网段内可能节点均没有唤醒,需要有节点承担唤醒CAN BUS2 网络的责任,即:主动唤醒CAN BUS2网段内的节点。此时,路由到CAN 2节点的ERA信号就可以充当主动唤醒CAN BUS2上节点的责任,所以ERA信号可以看作主动唤醒源。

除了上述的的主动唤醒源,还有一些定时器传感器也可以作为主动唤醒源。传感器一般与硬线连接,类似于KL15硬线。定时器的使用场景不清楚大家有没有遇到,这里给一个场景:智能补电。如果车辆长时间处于休眠状态,蓄电池可能亏电,亏电会导致车辆无法正常使用。为了防止蓄电池亏电,有些车上会配置智能补电功能,通过定时器设置定时时间,如果此时间内车辆未有启动,则定时器主动触发对应节点的唤醒,对蓄电池进行补电。

被动唤醒源:不需要承担唤醒网络责任的唤醒源,称为被动唤醒源。比如:收到NM Msg。对于收到NM Msg需要分情况讨论:

网络管理没有PN功能:节点收到的网络管理报文没有PNC信息,此时网络管理报文看作被动唤醒源。

网络管理具有PN功能:如果对应的ECU充当Gateway角色,且有多个物理Channel,PNC #n关联多个Channel,网络管理报文可​看作主动唤醒源(前面提到的ERA信号);如果PNC #n仅关联本Channel,不需要路由,网络管理报文看作被动唤醒源。

2网络主动唤醒/被动唤醒

网络主动唤醒:由主动唤醒源触发,调用CanNm_NetworkRequest()接口唤醒网络的方式称为网络主动唤醒。

网络被动唤醒:由被动唤醒源触发,调用CanNm_PassiveStartUp()接口唤醒网络的方式称为网络被动唤醒。

问题拓展思考

对于PNC模式的切换,群内小伙伴提出了这样一个问题:"ERA = 1时,PNC由PNC_NO_COMMUNICATION切换到PNC_REQUESTED。而EIRA = 1时,PNC由PNC_NO_COMMUNICATION切换到PNC_READY_SLEEP",两者为什么不同呢?

关于ERA、EIRA前文已经聊过,可以参考Autosar网络管理:Partial Network基础 之 ERA/EIRA、PNC Gateway和Autosar网络管理:CanNmPnResetTime对关联Tx PDU的发送影响。这里说一下个人理解:ERA的使用需要配合Gateway的使能,当某个PNC = 1时,说明有节点(假设节点A)需要通信,假设节点A需要和不同网段的其他节点(假设节点C)通信,需要经过节点B、节点D的路由,如下所示:

如果想唤醒Can2 Bus的节点C网络,需要节点D(与节点C同一个网段)发送网络管理报文唤醒节点C。主动发起通信的节点A在Can1 Bus,需要和Can2 Bus上的节点C通信,需要外部信号(PNC #n = 1)发送给节点B,由节点B路由给节点D,将PNC信息发送给节点C。

ERA = 1,与此PNC相关的节点(B、D)进入PNC_REQUESTED状态,节点B、D的Channel请求进入COMM_FULL_COMMUNICATION 状态,调用Nm_NetworkRequest()接口将Can 2 Bus上的节点唤醒;如果进入的是PNC_READY_SLEEP模式,ComM将会释放COMM_FULL_COMMUNICATION状态,且PNC信息不能路由,Can 2 Bus上的节点无法唤醒,节点A、C无法通信。

EIRA = 1,只是想把通信留在本网段,当前节点参与通信即可,不需要和外部网段通信,因此进入PNC_READY_SLEEP状态,网络被动唤醒。

主动/被动唤醒源与网络主动/被动唤醒相关推荐

  1. 唤醒时间过长 Android,关于android:功耗问题之过多唤醒源-wakeups

    和你一起一生学习,这里是程序员 Android 本篇文章次要介绍 Android 开发中的 性能 局部知识点,通过浏览本篇文章,您将播种以下内容: 过多的唤醒源wakeups 如何fix 过多唤醒源问 ...

  2. S32K3xx低功耗获取唤醒源

    S32K3xx低功耗获取唤醒源 目录 S32K3xx低功耗获取唤醒源 一.获取复位原因 二.获取唤醒源 1.思路分析 2.程序分析 在上一篇学习总结中知道S32K3xx只有两种运行模式:RUN和Sta ...

  3. 功耗问题之过多唤醒源 wakeups

    和你一起终身学习,这里是程序员 Android 本篇文章主要介绍 Android 开发中的 性能 部分知识点,通过阅读本篇文章,您将收获以下内容: 过多的唤醒源wakeups 如何fix 过多唤醒源问 ...

  4. linux待机唤醒_Linux电源管理-休眠与唤醒

    1.休眠方式 在内核中,休眠方式有很多种,可以通过下面命令查看 # cat /sys/power/state //来得到内核支持哪几种休眠方式. 常用的休眠方式有freeze,standby, mem ...

  5. FTP两种模式: 主动(FTP Port)模式和被动(FTP Passive)模式

    FTP(File Transfer Protocol)是文件传输协议的简称.正如其名所示:FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件 ...

  6. IP网络主动测评系统——X-Vision

    一.IP网络主动测评系统背景 1.IT网络运维面临的挑战日益增加 (1)网络拓扑不断调整变更 网络端到端质量周期性监测: 虚拟化基础架构的网络质量周期性监测. (2)业务不断丰富 当前网络能否承载新的 ...

  7. 网络主动测评系统,IT网络运维管理的法宝

    随着计算机网络的普及和快速发展,互联网已经融入到人们的衣食住行等方方面面,如工作.购物.音视频聊天.视频会议.朋友圈.抖音.在线网游.网络电影电视等.毫不夸张地说,现如今大部分人的绝大多数时间都已经离 ...

  8. IP网络主动测评系统——IT运维人员的好帮手

    前 言 随着计算机网络的普及和快速发展,互联网已经融入到人们的衣食住行等方方面 面,如工作.购物.音视频聊天.视频会议.朋友圈.抖音.在线网游.网络电影 电视等.毫不夸张地说,现如今大部分人的绝大多数 ...

  9. Android 功耗(12)---如何查找待机唤醒源

    如何查找待机唤醒源 系统场景的唤醒源:EINT/CONN/CLDMA EINT: PMIC的唤醒. a.Powerkey 唤醒后面的log会有pwrkey_int_handler b. rtc ala ...

最新文章

  1. mysql 不同的文件系统_文件系统,数据库管理系统,操作系统之间有什么联系?...
  2. 皮一皮:直男表示,有钱女人的世界完全不懂...
  3. 关于citrix 负载及WI的一些问题
  4. 对于不返回任何键列信息的 SelectCommand 不支持 UpdateCommand 的动态 SQL 生成。
  5. web.xml文件报红,怎么解决???
  6. 怎么样成为编程技术大牛?
  7. 2015湖南省选集训DAY5——work(BZOJ4177)
  8. 事务失败返回_分布式事务方案 TCC
  9. apple pay扫银联二维码原理
  10. 什么是cmd?常见的cmd命令 cd、mkdir、md、del、ping
  11. 终端应用变身文件 MD5/SHA1 校验工具
  12. 简单实现微信小程序音乐音频播放的功能
  13. 史上好电影集合--百度云
  14. android 语音和输入法按钮切换,android 切换系统语言,输入法也随之切换
  15. C10K问题与IO多路复用
  16. Java 攻城狮面试题 03_ Nginx 反向代理服务器
  17. ArcGIS趋势面分析
  18. 两片74161实现60进制_74LS161设计60进制计数器-数电课程设计
  19. win7激活提示错误代码0x80072EE2的最可行解决办法
  20. [小脚本] 基于opencv 的绿幕抠图

热门文章

  1. c语言家庭生活计划管理系统,[参赛作品]家庭智能鱼缸
  2. java实现m3u8文件抓取器
  3. (free)Windows下的stegdetect下载链接
  4. python中result的用法_关于Python中的列表理解及用法
  5. VIP服务器间转送文件,vip服务器
  6. css flex布局网页小游戏
  7. Win7系统下Microsoft VS2008过期激活方法
  8. linux提升普通用户权限
  9. 2019.1.12日 PYTHON多线程爬虫笔记
  10. Python 中 __dict__的用法