Помогите подключить 24с256 по i2c в CV или ICC к AVR
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Начинающ 04 марта 2003 г. 19:00

Помогите подключить 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 condition

Write_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 delay

DDRB = 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