[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(toppers-users 858) シリアルインタフェースドライバで気付いた点



お世話になっています。
田沢です。

シリアルインタフェースドライバで気が付いた点がありましたので報告します。
(すでに気付かれて1.4で反映されているかも知れませんが)

Serial.cの285行目、362行目、396行目で行っているポート番号の
チェックですが、正しくは

	if (!(1 <= portid && portid <= NUM_PORT)) {

になると思います。(重箱の隅を突っつくような指摘ですみません(^^;)

あと、H8版のターゲット依存部 Sys_config.hの136行目で定義している
H8BRR_RATEですが、

((UB)((CPU_CLOCK/(32*(BAUD_RATE)))-1))
		   ↓
((UB)(((CPU_CLOCK+(16*BAUD_RATE))/(32*(BAUD_RATE)))-1))

とした方が良いように思います。

BAUD_RATEで57600bps等を定義すると現行では誤差が大きくなってしまいますので。

1.4リリース間近ということで、指摘させて頂きました。
1.4リリースを楽しみにしております。