組み込みシステム設計者のためのLIN2.0マイコン実装術(後編) ――スレーブ・ノード用ドライバ・ソフトウェア開発のポイント
●○● Column 1 ●○●
ボーレート補正範囲のなぞ
ボーレート補正について,LIN 1.3では±15%だった仕様が,LIN 2.0ではなぜか±14%に変更されています.ほんとうの理由はわからないのですが,マイコンによる計算のしやすさが考慮されているのかもしれません.
LIN 2.0では,オート・ボーレート(スレーブがマスタのボーレートを自動検出する機能)が考慮されています.これをサポートする場合,補正範囲の上下限も固定値ではなく,ボーレートから算出する必要があります.このとき必要な0.14倍の値は,1/8+1/64で近似できます.つまり,シフト演算だけで補正範囲を求めることができるわけです.しかも,1/64は1/8を2回繰り返せばよいので,プログラム上では1/8,つまり右3ビット・シフト処理だけで計算できます.