Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
YTM32B1HA0 芯片 LIN D6 做主节点发送报文的时 报头会发送但没有sync场未发送 MCAL版本 0.9.2
该问题原因是LIN6~9的中断函数在SDK中没有正常注册,YTM32B1HA0_1_3_1_HF001 这个版本已经修复该问题。具体改动可以参考:
你好,可以检查一下LIN6的引脚、时钟、中断使能是否正常配置,LIN PHY功能是否正常。
0.9.2代码中已经有D6的IRQ了,打断点能够看到会进入对应的中断 波形图中红色线为LIN6上的波形 紫色波形为LIN9波形,两者配置一致,区别在于发送header时 LIN6没有发送sync场 在中断中打断点可以看到LIN6 Lin_LocChFrameStates一直处于LIN_DRV_CH_HEADER_SENT与LIN_DRV_CH_READY两种状态而不能进入LIN_DRV_CH_TX_COMPLETE
Knoblauch 看寄存器有什么error置起了吗,LIN6你用的哪个引脚呢?引脚有没有与其他东西相连?
替换mcal prot配置发现是LIN6 RXD的配置引起的。LIN6外部有一个lin收发器,因为需要从rxd脚读电平来获取唤醒状态,因此将port初始化配置为DIO 方向为input并在获取完电平后通过Port_SetPinMode 将其配置为LIN_RXD。目前发现这样切换就会导致SYNC发送不出来。我们需要初始化时从RXD或TXD读电平,希望能给我们一个方案
您好: 这里可能是由于代码的bug造成的:
Port_SetPinMode
Mode
Port.h
您可以试着修改这个宏的值为 15, 然后看看问题是否解决。
发帖前请查看
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...