PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ارتباط i2c



ajapyy
03-10-2011, 22:57
سلام به همه دوستان
میخواستم بدونم که تو codevision چه جوری میشه یه رشته مثل "SALAM" یا هر رشته کارکتری دیگه با spi و i2c رو ارسال کرد.مثلا روی یه eeprom نوشت ؟:unh:

agape
04-10-2011, 07:33
بابا کاری نداره که
من مثال رو برای نوشتن روی EEPROM های سری ۲۴ برای نمونه 24C512 , و یا 24C32 یا هرکدوم که آدرس دهی اونا ۱۶ بیتی باشه میتونی از دستورات زیر استفاده کنی:


void eeprom_write_byte(int adr,char data){
char temp;

temp=adr>>8;
i2c_start();
i2c_write(0xA0);
i2c_write(temp);
temp=adr & 255;
i2c_write(temp);
i2c_write(data);
i2c_stop();
delay_ms(10);
}


برای خوندن هم میتونی از تابع زیر استفاده کنی:


char eeprom_read_byte(int adr){
char temp;
char data;
temp=adr>>8;
i2c_start();
i2c_write(0xA0);
i2c_write(temp);
temp=adr & 255;
i2c_write(temp);
i2c_start();
i2c_write(EEPROM_ADDRESS | 1);
data=i2c_read(0);
i2c_stop();
return data;
}