- 締切済み
PICのI2C通信のプログラムについて
I2Cの同報機能を使いたいのですが、プログラムの書き方がよく分かりません。 後閑さんの電子工作の実験室も見たんですが、そこに書いてあったのは多分アセンブラのプログラムで、CCSを使っている自分には理解できませんでした。 CCSで同報機能は使えるのでしょうか?もし使えるのなら、プログラム例などをいただけると助かります。 ちなみに、使っているPICはマスターが16F873でスレーブが16F819です。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- zwi
- ベストアンサー率56% (730/1282)
同報機能は使ったことがなかったので忘れてました! スレーブ側は、SSPCON2レジスタのGCENビットをONにしないとまずいです。 SSPCON2 |= 0x80; で良いとは思いますが、CCS-Cならではの書き方があるのでは?とも思います。CCS-Cを使ったことが無いのとCCS-Cの体験版が無いので確認できません。
- zwi
- ベストアンサー率56% (730/1282)
後閑さんの電子工作の実験室にC言語のもあります。 http://www.picfun.com/c15.html I2Cの同報機能は、送信する「スレーブのアドレス指定」を0にするだけで実現できますので、Cでも問題なく使えますよ。 同報では無いですが、I2C通信の参考に。 PICでI2C通信(PIC16F873) http://homepage1.nifty.com/rikiya/software/316PICI2C.htm
お礼
すばやい回答ありがとうございます。 同報機能を使うのに特別なプログラムは必要ないということでしょうか? 後閑さんのページのI2Cの使い方、スレーブの所の一番最後に同報機能について書かれているのですが、そこに 「同報機能はスレーブ側のSSPCON2のGCENビットがOnになっていることが必要です。」 とかかれています。 これがよく分からないのですが・・・
お礼
そうですか。 やはり指定は必要なのですね。 もう少し調べてみることにします。 回答ありがとうございました