[H8-ML(6006)] Re:H8_3069で EEPROM の検証方法
From: ida@xxxxxxxxxxxxxxxxxxxx
Date: 2006年07月29日(土)18時05分39秒
こんばんは井田です。

伊藤さん、安井さんありがとうございます。

DDRの設定は下記のようにしましたが結果は変わりませんでした。

	unsigned char P6_DDR;

	P6_DDR &= ~0x01;	//入力モード
	P6DDR = P6_DDR;

	P6_DDR |= 0x01;		//出力モード
	P6DDR = P6_DDR;

リード・ライトの処理の部分は下記のようにしています。
	int chip;
	int adr;
	unsigned char dat;
	unsigned char tmp[16];

	initEEP();
	
	割込み無効
	chip = 0;                   // チップ0番
	adr  = 0x0000;              // 開始アドレス0x0000
	dat  = 0x00;                // 開始ライトデータ0x00
	for(i=0; i<16; i++){                   // アドレスは0x0000〜0x0010
		EEP_write(chip,adr,dat);           // データは0x00〜0x10
    	adr++;
    	dat++;
    }

	chip = 0;                               // 書いた場所を読み出す
   	adr  = 0x0000;    
	memset(buf, 0 ,64);
	for(i=0; i<16; i++){
		tmp[i] = EEP_read(chip,adr);
		adr++;
		シリアルへ送信 = tmp[i];
	}
	割込み有効

シリアルへ送信したtmp[i]の値が変化有りません。

SDA,SCLのプルアップ抵抗は4.7KΩを付けています。
A0,A1,A2はGNDへ
WPはGNDへ接続しています。

あとはどの変を検証していけばいいのでしょうか?



>こんにちは、安井です。
>
>> P6DDR |= 0x01;	//出力モードでLow
>
>PXDDRは読み出し専用なので、|= は出来ませんので、
>PbddrにPBDDRの値を保存しておき、その値を |= して
>から、PBDDRに書き込みます。
>
>SDAを設定する
>
>Pbddr &= ~IIC_SCL;	// SCL:H (INPUT)
>PBDDR = Pbddr;		// PBDDR設定
>
>Pbddr |= IIC_SCL;	// SCL:OUTPUT
>PBDDR  = Pbddr;		// PBDDR設定
>
>こんな感じでしょうか。
>
>
>
スレッド概略
[6003(R)](起点)
 └[6005(U)]
   └[表示中]
     └[6009(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]