LINスレーブが不正なメッセージIDを報告する - KBA228178 - Community Translated (JA)
Employee
7 07, 2020
02:10 AM
- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
7 07, 2020
02:10 AM
Community Translated by NoTa_4591161 Version: **
Translation - English: LIN Slave Reports Incorrect Message ID - KBA228178
質問:
LIN2.0仕様の互換性を選択するときに、LSBとMSBがスレーブ応答でスワップされ、LINスレーブが誤ったメッセージIDを報告するのはなぜでしょうか?どのようにすれば修正できますでしょうか?
回答:
生成されたLIN.cソースコードファイルに欠陥があります。このエラーは次のように修正できます。
- LIN.cファイルで、次のコードを見つけます。
/*D1= Message ID LSB */
LINS_srfBuffer[LINS_PDU_D1_IDX] =
HI8(messageIdTable[tempStatus]);
/* D2 = Message ID MSB */
LINS_srfBuffer[LINS_PDU_D2_IDX] =
LO8(messageIdTable[tempStatus]);
LSBがLO8、MSBがHI8になるように、HI8()関数とLO8()関数を入れ替えます。
重要: LIN.cファイルは生成されたファイルであり、アプリケーションをビルドするたびに上書きされます。したがって、コードをビルドまたは生成するたびにLIN.cファイルを再編集する必要があります
この記事を評価: