nobcha23の日記

PICマイコンやArduinoを使う電子回路遊びを紹介します

i2cのアドレススキャン試験を作ってみました

ここのところi2c接続でごたごたしているので、DSO QUADでアドレスが入っていてACKも出ているかの試験もよいが、PIC12F1822のプログラムで作っておいてもよかろうかと思って作成しました。
そのおかげで見逃していたバグを発見。また、SCG002B制御で間違いも発見しました。
動作はこんな感じ。PIC12F1822でSCG002B接続を前提。PIC12F1822のMSSPマスターでアドレスを0x2から0xFEまで発生し、アドレスに対してACKがあるかどうかをチェックします。あれば、ACKの後に該当アドレスをヘキサ表示します。

ADDRの後に今出しているアドレス。ACKがあればACKの後にアドレスを表示して、スイッチ待ちになります。スイッチ押すと次のアドレスからACKを探します。
スイッチはRA4にしました。この実験ではLCDとしてつながっているSCG002Bのアドレス0x74でACK受けて止まってます。



http://chitose6thplant.web.fc2.com/