SH2 SH7085 (7) sci (1)2011年08月18日 22時52分14秒

SCI1
しばらく間があいてしまった。
どこまでやったのか記憶が...


確かシリアルはまだやってなかったはずだ。
次はシリアルといこう。
ところがシリアルの送信がうまくいかない。
起動直後の1バイト、あるいは数バイトが文字化けする。
スクリーンショットはリセット直後に小文字の "l" を出力したものだ。
1文字ごとにリセットしている。
しかし、文字化けが終わるとその後は安定して送信できる。


ソフトの作成にはあまり自信がないのでサンプルを探してみる。
renesas にサンプルがあった。
SCIF 調歩同期式シリアルデータ送受信機能」 さすがルネサスだ!
中身を見てみる。
自分で作成したプログラムと大して変わらない。
異なっている部分は
ボーレート設定の後
for(i=0; i<0x1000; i++); があるのと
PFC.PACRL で TXD1 と RXD1 に切り替える前に TXD1 を出力に設定してある。
PFC.PAIORL.WORD = 0x0010; //出力設定


なるほどこれか?
変更して動かしてみる。
今度は文字化けするばかりか起動直後に null code まで出力されている。


困った。
コンパイラの不具合によるものかもしれないので gcc と shc の両方で試してみる。


どちらも症状は同じだ。
これはチップのバグなのか?


この不具合、毎回出るのではない。
時々出るのだ。だから始末が悪い。


環境:High-performance Embedded Workshop Upgrade 4.09.00
    KPIT GNUSH v0601 Windows Tool Chain (ELF)