PIC HI-TECH CでEEPROMアクセス

宇都宮

2011年08月13日 13:14



マイクロチップのPICマイコンにて、HI-TECH Cコンパイラを使用してのPIC内臓のEEPROMアクセスはとても簡単です。
下記のコードでバイトアクセスが完了します。
うまく組み込んでメモリー機能付エレキーでも作ってみましょう。


コメント欄に追加情報があります。 ご参考まで。

他の処理で割込イベントを使用している場合には、書き込み時
 WREN = 1;
処理前に割込を禁止にしておく必要があります。(マクロをご参照)


#include <pic.h>
//───────────────────────────────────
// Read data
//───────────────────────────────────
unsigned char E2promRead( unsigned char adr )
{
EEADR = adr;
RD = 1; // Set read bit
return( EEDATA ); // Return read data
}


//───────────────────────────────────
// Write data
//───────────────────────────────────
void E2promWrite( unsigned char adr, unsigned char data )
{
EEADR = adr;
EEDATA = data;

WREN = 1;   // Set write enable bit
EECON2 = 0x55;
EECON2 = 0xaa;

WR = 1;   // Set programming bit
while( EEIF == 0 ) // Wait till write operation complete
{
NOP();
}
EEIF = 0; // Clear EEPROM write complete bit
WREN = 0;   // Clear write enable bit
}


関連記事