I2Cバス接続のEEPROMがうまくリード/ライトできない。
オシロスコープで波形を見ると、期待した波形が出てないので、とりあえずデータラインを切り離してマイコンの入出力ラインを見てみた。
クロックと出力波形の関係がおかしい。
ICEを変えても、デバッガのソフトを再インストールするも同じ現象。
試しに違うチャンネルのプローブで触ってみるとちゃんと出ていた。
最近のオシロの使い方って難しいなあ_| ̄|○
同じ出力を見ても波形がずれているので、何かのキャリブレーションをいじってしまったのだと思う。
オシロの設定をイニシャライズしたら、正常に戻った。
そんなこんなで半日以上を消費してしまった…
シリアル通信はなかなか手ごわい。
クロックの立ち上がりでデータを取り込み、立下りでデータを出す。
9ビット目にACKと言う信号を受けてのデバイスが出力する。
それをある時は受信側に、ある時は送信側になったりするので混乱してしまう。
連続ライト・連続リードをやろうとしたが、1バイトしか正常に読めだせなかった。
延々とエディタで修正→コンパイル→デバッガで実行→ブロックポイントで波形とメモリマップの観察の繰り返し…
考えが煮詰まると抜け出せなくなる。
データを変えることしかできなかったが、アドレスを変えてやってみるのも一つの手だった。
連続リード・ライトにこだわらなくても、一回一回リード・ライトしてみても良かった。
無駄な時間の消費…
後で思い返せば、もっと効率的に仕事できたのにと思う。
でも、21時半で終えてうちに帰ったら、野球が延長していたおかげでクロサギを見ることができた♪
金曜の夜のささやかな喜び。
明日は診察日。もう寝ないと。オヤスミナサイ…
オシロスコープで波形を見ると、期待した波形が出てないので、とりあえずデータラインを切り離してマイコンの入出力ラインを見てみた。
クロックと出力波形の関係がおかしい。
ICEを変えても、デバッガのソフトを再インストールするも同じ現象。
試しに違うチャンネルのプローブで触ってみるとちゃんと出ていた。
最近のオシロの使い方って難しいなあ_| ̄|○
同じ出力を見ても波形がずれているので、何かのキャリブレーションをいじってしまったのだと思う。
オシロの設定をイニシャライズしたら、正常に戻った。
そんなこんなで半日以上を消費してしまった…
シリアル通信はなかなか手ごわい。
クロックの立ち上がりでデータを取り込み、立下りでデータを出す。
9ビット目にACKと言う信号を受けてのデバイスが出力する。
それをある時は受信側に、ある時は送信側になったりするので混乱してしまう。
連続ライト・連続リードをやろうとしたが、1バイトしか正常に読めだせなかった。
延々とエディタで修正→コンパイル→デバッガで実行→ブロックポイントで波形とメモリマップの観察の繰り返し…
考えが煮詰まると抜け出せなくなる。
データを変えることしかできなかったが、アドレスを変えてやってみるのも一つの手だった。
連続リード・ライトにこだわらなくても、一回一回リード・ライトしてみても良かった。
無駄な時間の消費…
後で思い返せば、もっと効率的に仕事できたのにと思う。
でも、21時半で終えてうちに帰ったら、野球が延長していたおかげでクロサギを見ることができた♪
金曜の夜のささやかな喜び。
明日は診察日。もう寝ないと。オヤスミナサイ…