我正在做一个大学项目,我需要将 pic18f4550 与 i2c EEPROM 连接起来。
我阅读了很多代码并看到了很多关于这个主题的项目。我从 MPLAB C18 编写了一个示例代码(我也尝试了许多代码),但没有人与我合作。
我不知道问题出在哪里。我的代码和电路一切正常,但是 sck 没有生成用于写入的 clk,也没有向 eeprom 写入任何内容。所以如果有人可以帮助我请。
注意:由于我是新用户,我无法发布我的电路图片!这是代码:
#include "p18f4550.h"
#include "i2c.h"
#pragma config FOSC = HS
#pragma config PWRT = OFF
#pragma config BOR = OFF
#pragma config MCLRE = ON
#pragma config PBADEN = OFF
#pragma config ICPRT = OFF
#pragma config LVP = OFF
#pragma config WDT = OFF,DEBUG=OFF
unsigned char arraywr[] = {1,2,3,4,5,6,7,8,0};
unsigned char arrayrd[20];
//***************************************************
void main(void)
{
OpenI2C(MASTER, SLEW_ON);// Initialize I2C module
SSPADD = 10; //400kHz Baud clock(10) @20MHz
while(1)
{
EEByteWrite(0xA0, 0x30, 0xA5);
EEAckPolling(0xA0);
EECurrentAddRead(0xA0);
EEPageWrite(0xA0, 0x70, arraywr);
EEAckPolling(0xA0);
EESequentialRead(0xA0, 0x70, arrayrd, 20);
EERandomRead(0xA0,0x30);
}
}
提前致谢