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.
您好!
我尝试在主模式下使用 LIN。 我有一个作为从器件的微控制器、可以使用"linSendHeader (linREG1、0x28)"向其发送消息。 但是、当我向主器件发送响应时、(linREG1->FLR 和 LIN_RX_INT)=LIN_RX_INT)不会保持。 但是、当我以[中断、同步、ID、数据]序列发送响应时、会检测到响应、并在 RDX 寄存器中设置数据字节。
我有两个问题:
1) 1)我是否需要特殊收发器才能将 TMS570LC4357板用作主器件?
2)如果主器件不能像数据一样检测响应(即不需要中断、同步、ID 序列)、但似乎是这样、否则它充当从器件...
谢谢
SA
您好 QJ、
这是否意味着当我在 TMS570LC4357中将 LIN1设置为主器件时,它还可以接收作为从器件的帧(即检测中断、同步、ID ... 序列)? 如果是这样、我想将其用作主器件、如何使用 Halcogen 生成的 API 接收有效载荷+校验和? 我看到有一个函数 linGetData (linREG1、data)、但这仅在我发送整个帧(包括标头)时有效。
所有这些都可以吗、因为我没有使用连接到 Hercules 板的收发器?
我有 一个 http://skpang.co.uk/catalog/linbus-breakout-board-p-1417.html
如果我将这个作为主器件连接到我的 Hercules LIN1引脚、在我向一个从节点发送了一个标头后、我是否能够接收有效载荷+校验和响应?
您好、SA、
任何从器件、包括主控制单元中的从器件任务、都可以用一个数据帧进行响应。 每个标识符只能由一个从器件响应。
主器件可以通过其从器件任务将数据传输到任意数量的从器件。 即主器件的从器件任务响应一个标头(由主器件的主器件任务发送)并将数据传输到总线上。 所有其他从器件可以同时接收数据帧。
是的、 可以使用 linGetData (linREG1、data)接收数据。 我不确定 LIN 模块是否可以在没有 LIN 收发器的情况下获得正确的数据。
您好 QJ、
感谢您的响应、它提供了一些有关如何设计主节点的见解。 不过,这并没有回答我的问题。 我在主设备上接收数据+校验和时遇到问题、因为我没有在主设备模式下使用收发器。
最棒的
SA
您好 QJ、
是的、正如我已经解释过的、这是我的问题。 我现在有另一个问题。 当我使用 HL_LIN.c 中的 linSend ()函数时,这是否也会导致发送校验和? 我可以在文档中看到发送和接收缓冲器(SCITXSHF、SCIRXSHF)具有校验和计算器。 这是否意味着校验和会在1到8个数据字节后自动发送、我不需要计算校验和并将其发送到 LIN 总线?
SA
您好 QJ、
我现在有另一个问题。 当我尝试 linsend()函数时,我可以在 RDX 和 TDx 上看到相同的数据。 RDX 为什么以及如何获取我要发送的数据? 我的节点配置为主节点(这仅在我连接到电路板上的 RX 引脚时发生、即从 RX 引脚到 LIN 收发器的导线)。
此外、不可能在 HALcogen 上启用 TX 中断。 这是否意味着我不需要为 TX 实施 ISR?
最棒的
Sahar
您好 QJ、
好的、如何禁用此对 TX 的读回? 如果我不向 RX 引脚发送任何内容、我希望缓冲区为空。
最棒的
SA
您好 QJ、
是的、我在使用不同的标志后发现了它、因为主节点也应该支持从模式、所以它总是在总线上获取数据、即使数据是由自己发送的!
最棒的
Sahar
您好、SA、
LIN 总线上的 LIN 消息将自动移入 RX 缓冲区。 我们无法禁用它。