RL78 - LIN 通信 - 2 つの送信間のディレイ

こんにちは、

RL78 F13 48ピンコントローラーのLINを使用しています。

使用している LIN IC は TJA1021 - マスターです。

2 つのスレーブがマスターに接続されており、50 ミリ秒のタイマー間隔で while ループが発生し、両方のスレーブにヘッダーを 1 つずつ送信してデータを受信しようとしています。

両方の送信間に約 2.5 ミリ秒のディレイを追加すると、LIN 通信は正常に機能しています。

そうしないと、LIN からデータを取得できません。

-------------------------------------------------- -----------------

例:

2回の送信の間に遅延がある場合問題なく動作します。

LIN_Master_HeaderTransmit(0x81); //LIN スレーブ 1
for(int i =ZERO; i<=2500; i++)
{
Wait1us();
}
LIN_Master_HeaderTransmit(0x82); //LIN スレーブ 2

-------------------------------------------------- --------------------

以下のコードは機能しません。

LIN_Master_HeaderTransmit(0x81); //LIN スレーブ 1

LIN_Master_HeaderTransmit(0x82); //LIN スレーブ 2

-------------------------------------------------- --------------------

このディレイは予期されたものですか、それともディレイなく動作するはずですか?
教えてください。

ありがとうございます。

Parents
  • Vishさん、こんにちは。NoMaYです。

    > 両方の送信間に約 2.5 ミリ秒のディレイを追加すると、LIN 通信は正常に機能しています。
    > そうしないと、LIN からデータを取得できません。

    > このディレイは予期されたものですか、それともディレイなく動作するはずですか?

    LIN_Master_HeaderTransmit()というのは、ルネサスさんのアプリケーションノートか何かでソース全体が公開されているものでしょうか?あるいは、CS+のコード生成機能やAppliletで生成されたものであって、ソースを私が見ることが出来るものでしょうか?

  • NoMay さん、

    LIN_Master_HeaderTransmit()というのは、ルネサスさんのアプリケーションノートか何かでソース全体が公開されているものでしょうか?
    >> はい。そうです。
    www.renesas.com/.../search
    (IARのサンプル)

    ありがとうございます。

Reply Children
No Data