RL78でLINを使ってるんでメモ。
LINの詳細はここ前編・中編・後編。
zeroplus LAP-C(16064)をWindows10で使う|マイコン入門
※2019/8にアップした記事を加筆・訂正しました。モジュロ256方式での標準チェックサム生成コードがあります。 // 標準チェックサム生成(モジュロ256方式) uint8_t s_M…
- 19200bpsで通信する場合、サンプリングは最低でも200KHzが必要(これ以下では拾えない)。
- サンプリングメモリは最大の64Kにして0x27ブロック個を解析可能。
- LAP-CのLIN解析はPIDによってレスポンスバイト数を決めてるようだ。
PIDが0x10~0x1F:レスポンスバイト数は2、0x20~0x2Fは4、0x30~0x3Fは8バイト、0x40~は0バイトみたいな感じ・・・良く調べてないよ。
レスポンスデータが0x20を超えるとチェックサムエラーになるが、自分のプログラムのチェックサムの計算が間違ってた。修正版は下。
// 標準チェックサム生成(モジュロ256方式)
uint8_t s_MakeCsum(uint8_t buff[], int bytecnt)
{
uint8_t i, csum;
uint16_t up = 0;
for (i=0; i<bytecnt; ++i) up+=buff[i];
while (up & 0xff00u) {
up = ((up & 0xff) + (up >> 8));
}
csum = (uint8_t)up;
return ~csum;
}
コメント