Re: [請問] PIC存取EEPROM的程式碼疑問
|
||||
---|---|---|---|---|
版主
|
單從你的程式來看,看不出 DataSz 的功能,不過就字面上的字來解釋的話應是 Data Size,猜想就是傳輸的陣列的索引值。
24C04 只有一個 Byte 的位址,建議參考依下 24LC04B 的Data Sheet 裡的命令說明。 http://www.microchip.com/wwwproducts/ ... es.aspx?dDocName=en010812 另外也可以參考依下 dsPIC30F Peripheral 教材裡的 I2C 章節,這兩個 IC 的程式是不太需修改的: http://www.microchip.com.tw/modules/w ... glefile.php?cid=4&lid=229
發表於: 2009/4/30 14:21
|
|||
|
[請問] PIC存取EEPROM的程式碼疑問
|
||||
---|---|---|---|---|
初級會員
|
請教各位大大:
我在網站上抓了一個PIC24F 讀取EEPROM的程式碼如下: http://ww1.microchip.com/downloads/en ... I2C%20Master%20EEPROM.zip SlaveAddress = 0x50; //0b1010000 Serial EEPROM address EEPROM的位址要如何去得知呢? 我看過datasheet並沒有寫到阿!! // Send Data to eeprom to program one location #ifdef I2C_EEPROM_24256 // one page is 64 bytes i2cData[0] = (SlaveAddress << 1) | 0; //Device Address & WR i2cData[1] = 0x05; //eeprom high address byte i2cData[2] = 0x40; //eeprom low address byte i2cData[3] = 0xAC; //data to write DataSz = 4; #endif #ifdef I2C_EEPROM_2402 // one page is 8 bytes i2cData[0] = (SlaveAddress << 1) | 0; //Device Address & WR i2cData[1] = 0x10; //eeprom low address byte i2cData[2] = 0xAC; //data to write (one byte) DataSz = 3; #endif 我所使用的EEPROM是24C04 ,one page 是16bytes,那該如何去設定這些參數呢?? DataSz 它代表的是什麼意思呢?? 謝謝!
發表於: 2009/4/30 13:50
|
|||
|