PIC12F1822を使いi2c接続EEPROM実験 (c)2011 nobcha 

1. 概要

 i2c接続で24L64をつなぎ、READ/WRITEの実験をやります。PIC12F1822でMSSP使用によりi2cマスター制御して、EEPROMに書き込み読込みを行うと共に、i2c液晶上で書き込み設定、読出しデータ表示を行います。

 

2.仕様

項番 項目 詳しい内容
  1 EEPROM 24LC64という8kB容量のEEPROMを用います。ブロック書込みは16バイト単位です。
  2 LCD PIC16F88を使ったi2cスレーブ動作LCDを使用します。
  3 MSSPでi2c制御 i2c接続のマスター側をMSSP使って実現します。そのためにSCL/SDAはRA1/RA2に割り付けられます。
  4 バイト書込み、読出し 設定選択、アップ、ダウンの3つの押しボタンスイッチを使用し、LCDに表示されたアドレスと書き込み時はデータを順に設定します。また読出し時にはデータを表示します。
  5 8バイト単位書込み読出し表示 ブロック書込み読出しとして、書き込み時は指定データを16バイトブロックループアドレスで、8バイト連続書き込みします。読出し時は指定アドレスから連続する8バイトを読み出しLCDの1行目に表示します。
 

3.接続回路

 回路はi2c液晶接続実験で使用した構成にEEPROMを追加しただけです。MSSPを使う場合はSCLがRA1,SDAはRA2に指定されます。

 スレーブ側はPIC16F88を用い、SC2402液晶を4ビットモードで接続した回路です。 

 回路図は水魚堂さんのBSchを使いました。また関連記号類も利用させていただきます。公開された作者さん達のご努力に感謝いたします。

http://www.suigyodo.com/online/schsoft.htm

 

3.プログラム

 プログラムはMAIN部LCD表示制御部mssp使用i2cドライバ部に分かれています。

 またdelay.hlcd_i2c_mssp_.hmssp_i2c.hを引きこみ必要です。

 

4.実験風景

 

   設定用スイッチとして、「設定」「アップ」「ダウン」の3種用意しました。これを組み合せ、READ/WRITEやBYTE/BLOCKの設定、アドレ スの設定を行うことにします。表示はLCDへ設定されたモード、アドレス、データの内容、あるいはダンプされた8バイトのメモリーをヘキサデシマルで表示 します。

 電源を入れると"i2c EEPROM TEST"メッセージと共に"R_Byt #Addr #Dt"と表示します。ここでは設定スイッチしか受け付けられません。設定スイッチを押すとカーソルは2字目に移り、4つのモード(W_BYT、 R_BYT、W_BLK、R_BLK)をアップ、ダウンで選びます。

 モード設定が終わると設定ボタンを押します。次にアドレスの#へカーソルが移ります。ここではちょっとかったるいですが、アップダウンでアドレスを加減します。

 

  ここで設定を押すとWRITEコマンドの場合は次のデータの#にカーソルが行き、アップ、ダウンでデータ値を設定します。READ系の場合は一旦カーソル は最終文字に飛んで、その後データを表示し、$マークを表示します。ブロックの場合は指定アドレスを先頭に8バイトを連続し読み込み1行目に#を区切り マークにして表示します。

 WRITE系の場合は出たー設定後設定ボタンで、一旦最終文字までカーソルが行きますが、更にもう一度設定を押せば書込みを行います。書込み終了をセンスし$マークを表示します。

 ブロックWRITEでは指定アドレスから8バイト分を指定データで埋めます。ただし、この24LC64は16バイトブロックなので、アドレスが該当の16バイトブロック境界を越えるとブロック先頭にラップアラウンドします。

 ブロックREADでは指定アドレスから8バイト分を1行目に#マークを区切りにしてヘキサデシマルでダンプ表示します。READの方は16バイトブロックアドレスのラップアラウンドの影響は出ず、指定アドレスから単に連続する8バイトになります。

 

WEBに公表された情報などを参考にしました。PICファンパイオニアの方々の情報提供に感謝します。非商用の教育・ホビー用に限り、再利用を許諾します。また引用時にはソース表示(ホームページへのリンクなど含む)をお願いします。再利用により生じた損害などについては責任を負いません。利用者の判断でお願いします。あくまでも個人の趣味の範囲で参考にしてください。
PIC新4桁シリーズのTOPへ       WEB目次へ 戻る     2011.11.5

アイコンは「牛飼いとアイコンの部屋」からの提供です  http://www.ushikai.com/

 
 
inserted by FC2 system