آموزش کار با حافظه EEPROM خارجی(خواندن و نمایش عکس!بررویLCD)

در اين بخش مي‌توانيد آموزش و مثال‌های مرتبط با میکروکنترلرهای AVR را مشاهده بفرمایید

مدیران انجمن: SAMAN, sinaset, شوراي نظارت

Colonel II
Colonel II
نمایه کاربر
پست: 7368
تاریخ عضویت: سه شنبه 26 آذر 1387, 4:20 pm
سپاس‌های ارسالی: 9246 بار
سپاس‌های دریافتی: 21574 بار
تماس:

Re: آموزش کار با حافظه EEPROM خارجی(خواندن و نمایش عکس!بررویLCD)

پست توسط sinaset » شنبه 20 بهمن 1397, 10:55 pm

باسلام .

کاربر محترم،به این نکته توجه کنید،تابع eeprom براساس char هستن،و شما نباید متغییر int را برای تابع int بفرستید،اگر بفرستید هشت بایت اول ان فقط فرستاده میشود.

برای اینکه،هر ادرس ایسی ها eeprom خارجی هشت بایتی هستن.

شما باید هشت باید اول را در ادرس 0 و هشت بایت بعد را در ادرس 1 قرار دهید !(ادرس 0 و 1 یک مثال بود!) 

به عنوان مثال این دو تابع دریافت و ارسال برای حافظه eeprom ما هستن:

کد: انتخاب همه

#define EEPROM_BUS_ADDRESS 160     //ادرس سخت افزاري ايسي
#define EEPROM_REED_ADDRESS 161    //آدرس شناسايي براي زماني که قصد خواندن اطلاعات را داريم

unsigned char eeprom_read(char address){
unsigned char data;
i2c_start();                   //ايجاد پالس استارت
i2c_write(EEPROM_BUS_ADDRESS); //ادرس سخت افزاري
i2c_write(0x00);                //هشت بيت اول ادرس خت افزاري ذخير
i2c_write(address);             //هشت بيت دوم ادرس ذخير سازي ذخيره
i2c_start();
i2c_write(EEPROM_REED_ADDRESS);
data=i2c_read(0);
i2c_stop();
return data;
}

void eeprom_write(char address ,char data){       //تابع نوشتن در حافظه اي اي پي رام
i2c_start();
i2c_write(EEPROM_BUS_ADDRESS);
i2c_write(0x00);
i2c_write(address);
i2c_write(data);
i2c_stop();
delay_ms(5);
}
int v=58200;
int Get;
نحویه نوشتن
;((eeprom_write(0,(v<<8
;(eeprom_write(1,v

نحویه خواندن:

;(Get=eeprom_read(0
8>>Get=Get
;(Get=eeprom_read(1

در واقع به کمک شیفت دادن،ابتدا هشت بایت اول فرستاده میشود! سپس،ادرس بعدی هشت بایت eeprom انتخاب میشود،سپس هشت بایت انتهای فرستاده میشود.
و برخواندن نیز،با همان ترتیب ادرس ها از ایسی حافظه خوانده میشود و دیتات شیفت داده میشوند، تا متغییر int که Get می باشد،همان مقدار V ابتدای شود.

باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

ارسال پست

بازگشت به “آموزش و مثال‌ها AVR”