|
Помогите подключить 24с256 по i2c в CV или ICC
Вот код из примера к компилятору ИмэйджКрафт:
Но не пойму как адресовать 256 кБ ? может есть у кого пример кода?
Или на словах последовательность подскажите!
Этот код из примера к компилятору ICC - повилимому на память в 256 байт расчитан:
Как переделать его чтоб адресовать 256 кБ ???
// *********************************************************************** //
// *** Example of using Imagecraft I2C driver *** //
// *** to write to an external 8 bit address EEPROM *** //
// *** H_ADD is the hardware address set on the device A0,A1 & A2 pins *** //
// *** M_ADD is the devices internal memory address *** //
// *** Data is user data to be writen *** //
// *********************************************************************** //void EEPROM_Write(unsigned char H_ADD, unsigned char M_ADD, unsigned char Data)
{
I2C_Start(); // Set I2C start conditionWrite_I2C_Control(0x0A,H_ADD,0); // Send the EEPROM control Byte
Write_I2C_Byte(M_ADD); // Send the EEPROM internal Address
Write_I2C_Byte(Data); // Send the EEPROM Data
I2C_Stop(); // Set I2C Stop condition
}
void main (void)
{
unsigned long c; // Temp Ram used for write delayDDRB = 0xFF; // Set Port B to Outputs
Init_I2C(); // Setup the hardware port
EEPROM_Write(0,1,0x0f); // Write to device 0, memory address 1, Data 0xAA
for(c=0;c<1000;c++); // Delay for EEPROM Write
PORTB = EEPROM_Read(0,1); // Read device 0, memory address 1
}
E-mail: info@telesys.ru