This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
在10.4.6.1睡眠模式中提到了通过睡眠唤醒错误进行的 tSILENCE。 但我无法理解它们:
1.进入待机模式后、tSILENCE 和 tINACTIVE 计时器将启动。
您能否解释 tSILENCE 是如何参与 SWE 的?
2.在 tINACTIVE 状态下、当器件处于待机、正常或监听模式并且 tSILENCE (SWE_DIS=1)或 CANSLNT (SWE_DIS=0 )持续存在时、器件进入睡眠模式。
请您改述上述句子吗? 我不认为 tSILENCE 可以 坚持 tINACTIVE。
谢谢你。
此致、
Oguri
您好 Oguri:
1.进入待机模式后、tSILENCE 和 tINACTIVE 计时器将启动。
您能否解释 tSILENCE 是如何参与 SWE 的?
[/报价]我认为最好在数据表的10.4.1部分对此进行说明。
当 CAN 总线上没有任何活动时、SWE 计时器只有在满足 tSILENCE 时间后才会开始计数。 如果 CAN 总线上的活动开始、TSILENCE 和 SWE 计时器计数器将复位。
[/quote]2.在 tINACTIVE 状态下、当器件处于待机、正常或监听模式并且 tSILENCE (SWE_DIS=1)或 CANSLNT (SWE_DIS=0 )持续存在时、器件进入睡眠模式。
请您改述上述句子吗? 我不认为 tSILENCE 可以 坚持 tINACTIVE。
[/报价]tinactive 是一个在 tseilence 之后启动的计时器。 在启用 SWE 计时器的情况下、一旦 tinactive > 3.75分钟、器件将进入睡眠模式。
此致、
泰勒
您好、Tyler:
感谢您的澄清。 您能否检查一下下面的描述是否正确?
因此、第1句的相应描述应该是"tINACTIVE 计时器在 tSILENCE 计时器到期后启动"、而不是"tSILENCE 和 tINACTIVE 计时器开始"、因为它们是不同的计时器、并且不是同时启动。 此处的 tINACTIVE 计时器与 SWE 计时器相同、而 tSILENCE 计时器不是 SWE 的一部分。
我想清楚说明一下10.4.1部分的解释,这也是非常令人困惑的。 CANSLNT_SWE_DIS="0"和"1"有2种情况。 它们之间的差值应该为、在用"0"停止定时器 CANSLNT 必须被清零的情况下、而用"1"总线活动停止定时器。 虽然对 SWE 定时器启动的描述有所不同、但它们是一样的、这是因为"CANSLNT 中断被置位"时、"当总线活动的时间超过 tSILENCE"。 它们是相同的。
现在我已经理解了第2句。 应该是、当 SWE 计时器针对 tINACTIVE 运行而没有因总线活动(CANSLNT_SWE_DIS=1)或清除 CANSLNT (CANSLNT_SWE_DIS=0)而停止时、器件会进入睡眠模式。 参考 SWE_DIS 时出错。
此致、
Oguri
您好、Oguri:
#1应该是"tINACTIVE timer starts after tSILENCE timer expires (tSILENCE 和 tINACTIVE timers start
此语句是正确的 Tinactive 和 TSilence 是两种不同的计时器。 通过阅读数据表中的第10.4.6.1节、我们可以更好地看到这是两个单独的计时器、其中指出"器件会为 CAN 总线 WUP 或本地唤醒而唤醒、从而进入待机模式。 进入待机模式后、TSILENCE 和 TINACTIVE 计时器将启动。"
tINACTIVE timer 这里和 SWE timer 一样,而 tSILENCE timer 不是 SWE 的一部分。
正确。 TINACTIVE 仅适用于 SWE 计时器。 在 TINACTIVE 计时器开始计数之前、需要完成 TSILENCE 计时器。
我想明确说明10.4.1部分的解释,这也是非常令人困惑的。 CANSLNT_SWE_DIS="0"和"1"有2种情况。 它们之间的差值应该为、在用"0"停止定时器 CANSLNT 必须被清零的情况下、而用"1"总线活动停止定时器。 虽然对 SWE 定时器启动的描述有所不同、但它们是一样的、这是因为"CANSLNT 中断被置位"时、"当总线活动的时间超过 tSILENCE"。 它们是相同的。
在 SWE_DIS 寄存器中配置位2将确定如何根据 CANSLNT 标志或仅基于 TSILENCE +总线活动来配置 SWE 计时器。
基本上有2种不同的方法来配置 SWE 计时器。
此致、
泰勒
您好、Tyler:
再次感谢您的进一步澄清。 我试图使10.4.6节更简单、更清晰、如下所示。 请再次确认是否正确。 我认为"SWE 计时器"的章节标题比"失效防护功能"更合适。 "失效防护模式"的描述应紧跟在待机模式之后。
10.4.6 SWE 计时器
当 tINACTIVE (最长5分钟)的每种功能模式下都没有预期活动时、睡眠唤醒错误(SWE)计时器会使器件转换为睡眠模式。
待机模式(通过上电和 UVSUP 事件进行转换):
当 VSUP 上的上升电压超过 VSUP (PU) R 时、器件会转换到待机模式、并且 SWE 计时器会启动。 在 SWE 计时器到期之前、器件应配置为正常模式或仅监听模式、或者应清除转换原因的中断寄存器(INT_2中的 PWRON)。 否则、器件会转换到睡眠模式。
待机模式(通过唤醒事件和帧溢出进行转换):
在唤醒事件或帧溢出的情况下、器件转换至待机模式、SWE 计时器在 tSILENCE (最大1.2s)之后开始计时、此时没有总线活动。 在 SWE 计时器到期之前、器件应配置为正常模式或仅监听模式、或者应清除转换原因的中断寄存器(INT_1中的 CANINT、LWU 和 FRAME_OVF)。 否则、器件会转换到睡眠模式。
正常模式/仅监听模式:
在正常模式和仅监听模式下、SWE 计时器在 tSILENCE (最大1.2s)之后启动、此时无总线活动。 当 SWE 计时器到期而未 因总线活动(CANSLNT_SWE_DIS=1)或清除 CANSLNT (CANSLNT_SWE_DIS=0)而进行复位时、器件会转换到睡眠模式。
失效防护模式:
当器件转换到失效防护模式时、SWE 计时器启动。 当转换原因中断寄存器(INT_2中的 UVIO、UVCC 和 TSD)未清除时、唤醒事件会复位 SWE 计时器、但唤醒事件将被忽略。 当 SWE 计时器到期时、器件会转换到睡眠模式。
可通过设置 SWE_DIS;8'h1C[7]= 1和8'h17[0]= 1时的 FS_DIS 来禁用 SWE 计时器。 但无法在上电时将其禁用。 图10-22总结了 SWE 计时器。
10.4.3失效防护模式
失效防护模式是一种低功耗模式、与待机模式相同。当发生 TSD、UVCC 或 UVIO 时、器件会转换。 当不清除导致转换的中断寄存器(INT_2中的 UVIO、UVCC 和 TSD)时、会忽略唤醒事件。 SWE 计时器在转换时启动。 (与数据表相同)该模式默认为开启、可通过设置寄存器8'h17[0]= 1来禁用。 器件提供失效防护模式计数器、在连续发生一定数量的事件后、器件会执行编程的操作、其中包括进入睡眠状态、并且 WUP 或 LWU 事件不会唤醒器件。 需要上电复位。 计数器默认为禁用、可在8'h17[7]时启用。 计数器过期动作为8'h17[6:4]。 设定动作前的事件数量设置为8'h18[7:4]、最多为15个事件。 8'h18[3:0]是正在运行的递增/递减失效防护事件计数器、可被读取和清除。 如果进入失效防护模式、则会发出全局中断8'h53[5]、并且进入失效防护模式的原因由寄存器8'h17[3]提供。
此致、
Oguri
Oguri、
作为部分标题、我认为10.4.6节不应替换为 SWE 计时器、因为该器件实现了除 SWE 计时器之外的许多失效防护功能。 通过睡眠唤醒错误实现的睡眠模式或驱动器和接收器功能等功能都属于这一类别。
我想了解你们提出这个问题的总体动机。 您是否建议我们修改产品说明书中的措辞、以便向用户更清楚地提供数据?
此致、
泰勒
您好、Tyler:
但10.4.6中似乎只讨论了 SWE 计时器和失效防护模式的某些功能。
我当时尝试理解数据表、以向我的客户解释该器件的工作原理。 在上一篇文章中,总结工作花了2个多月的辛勤工作,又花了几个小时。 我确信数据表是无法理解的。 请确认我在最后一篇文章中的陈述是否正确。
但顺便说一下、我今天从客户那里听到删除了对局部联网的要求。 因此、我现在不必了解 TCAN1145-Q1。
谢谢你。
此致、
Oguri
Oguri、
你的一些陈述是合理的,但其他我认为需要更详细的阐述。 我已经听取了您的反馈、并将其提到我们的系统团队以进行进一步讨论。 我相信我们已经在更新 TCAN114x 数据表的过程中、因此我们将把您在这里发布的内容当作反馈。
此致、
泰勒
您好、Tyler:
好! 谢谢。 我想补充一点。 在 UVSUP 事件之后、若要复位 SWE 计时器、应清除 PWRON 标志。 它不是 UVSUP 标志而不是 PWRON 吗?
此致、
Oguri
您好、Oguri:
当向电源引脚施加<UVsup 的电压时、会发生 UVSUP 事件。
可以通过在 SWE 计时器到期之前清除 PWRON 标志或将器件配置为正常或监听模式来复位 SWE 计时器(TINACTIVE)。 也可以通过设置 SWE_DIS;8'h1C[7]= 1和 FS_DIS;8'h17[0]= 1来禁用 SWE 计时器。
此致、
泰勒
在 UVSUP 事件中是否有要清除的 PWRON 标志? 我想在 UVSUP 事件中、只有 UVSUP 标志会生效、而 PWRON 标志不会生效。 谢谢。
Oguri
Oguri、
我认为在发生 UVSUP 事件后、只有 UVSUP 标志会被置为有效、而 PWRON 标志会在器件上电后置为有效。 这是两个独立的标志。
此致、
泰勒