بسم الله الرحمن الرحيم
جزاك الله كل خير يا بشمهندس احمدمعاطى على التوضيح
وهذا توضيح اخر وان شاء الله يفيدك
فى البداية يجب معرفة انه يوجد فى كل ميكرو مساحة متروكة للمستخدم
يمكنك حفظ بعض البيانات فيها
وهذه المساحة لها نظام للكتابة عليها ولها مواضع للكتابة يجب تحديدها
مثلا فى بعض الميكروهات مواضع المساحة دى
يقع بين 0 الى 128 فيمكن حفظ بايت كامل فى كل مكان
يعنى 0 يحفظ بة بايت وال 1 يحفظ بة بايت اخر وال 2 يحفظ بايت اخر وهكذا
والبايت 8 بت ويمكن حفظ ارقام بة من 0 الى 255
ولهذا تختار مثلا اى مكان فى الذاكرة وتحفظ فية الرقم بتاعك
وهذا امر الكتابة على الذاكرة
كود:
EEPROM_Write(5, 60);
الخانة الاولى والى مكتوب فيها 5 دة مكان الموضع الى عايز تحفظ فية القيمة داخل الذاكرة
الخانة الثانية والى مكتوب فيها 60 تحفظ فيها الرقم بتاعك وممكن تحفظ متغير بردوة عادى اى 60 تعنى الداتا البايت المراد حفظة
وهذا امر القراءة من الذاكرة
كود:
take = EEPROM_Read(5);
المتغير take هيتم حفظ فية الناتج الى تم تخزينة فى الموضع 5 فى الذاكرة والى فى المثال = 60
.................................................. .................................................. ..........
لنفترض اننا عندنا متغير اسمة x
وهذا المتغير نريد ان يزداد قيمتة عند الضغط على الزر متصل ب PORTA.f0
اى الطرف الاول من البورت A
وبعد ان يزيد يتم حفظة فى ذاكرة الميكرو الثابتة حتى لا يمسح عند فصل الكهرباء
ويتم الحفظ فى الموضع 5 فى الذاكرة
فهذا يتم هكذا
كود:
char x;
void main(){
TRISA=255;
while(1){
if (PORTA.f0==1){x++;EEPROM_Write(5, x);}
}
}
كما ترى فى الخانة الاولى المكان الى عايز احفظ فية فى الذاكرة الى هو 5
وفى الخانة الثانية كتبت اسم المتغير الى عايز احفظة وهو x اى القيمة الداتا
.................................................. .................................................. ........
واذا ضغطنا على زر اخر متصل بالطرف PORTA.f1
اى الطرف الثانى من البورت A
يتم قراءة القيمة الى حفظناها فى الموضع 5 من الذاكرة
وحفظها فى متغير اسمة ss
فيتم ذلك هكذا
كود:
if (PORTA.f1==1){ss = EEPROM_Read(5);}
والكود كامل هكذا
كود:
char x;
char ss;
void main(){
TRISA=255;
while(1){
if (PORTA.f0==1){x++;EEPROM_Write(5, x);}
if (PORTA.f1==1){ss = EEPROM_Read(5);}
}
}
اذا كان فى اى استفسار انا تحت امرك ان شاء الله
بالتوفيق ان شاء الله