obnizのフォーラムは新しいシステムに移行しております。
新しいフォーラムはこちらになりますI2Cアドレス範囲に制限はあるでしょうか?
-
お世話になります。
RTC-8564NB(Addr:0xA2)を接続するとエラーが出ます。
試した範囲では何も接続せずI2Cアドレスを0x80以上にするとエラーになるようです。記述方法等、注意点があればご教示下さい。宜しくお願い致します。
-
@fuminori さん
i2cのデバイスアドレス自体は7bit分しか無いので0x80以上ではエラーとしております。
秋月さんのサイトより、RTC-8564NBのデータシートを確認しました
アドレスは
0b1010001* = 0xA2 or 0xA3
となっておりまして、このとき、obnizのi2cには下一桁を除いた0b1010001 = 0x51
を指定します。Read/Write判別用の最後の1bitは
write()
やreadWait()
を読んだときに自動で付与されますので、Read/Writeに関係なく、デバイスアドレスとして7bitのみを指定いただければと思います。
-
ご教示ありがとうございます。
LSBまで含めて指定(0xA2:8bit)するのか、LSBを除いて指定(0x51:7bit)するのかの記述方法の違いということで了解致しました。
実は現在PICから制御しており(アドレス部は RTC_Addr>>1,(RTC_Addr+1)>>1 と記述)、同じI2Cラインをobnizからも制御(時分割)したいなと思いまして。思慮不足でお手数をお掛け致しました。開発頑張ってください。