قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:328
قديم 19-09-2012, 02:42 PM المشاركة 1   
افتراضي الدورة الجديدة :الفصل التاسع الذاكرات EEPROM و FLASH Twitter FaceBook Google+



الدورة الجديدة :الفصل التاسع الذاكرات EEPROM و FLASH
الذاكرات EEPROM و FLASHالموجودة بالميكروكونترولر هى مساحات للذاكرة والتى يمكن برمجتها ومسحها كهربائيا , وهى ذاكرات غير متطايرة (غير قابلة للمحو) , أى أنه عند فصل القدرة عن الميكروكونترولر فإن المعلومات لا يتم فقدها . يمكن إعادة برمجة المعلومات 100000 مرة فى حالة ذاكرة FLASH و وما يقارب المليون مرة للذاكرة EEPROM . وبالمثل فإن ضمان الحفاظ على المعلومات يصل إلى 40 سنة بدون توصيل القدرة .

9-1 الذاكرة EEPROM :
الذاكرة EEPROM هى ميكروكونترولر صغير نسبيا لتخزين معلومات المبرمج مثل إعدادات وبيانات المتغيرات التى لا ينبغى فقدها . تختلف سعة الذاكرة من ميكروكونترولر لآخر إعتمادا على نوعه .
تعامل مترجم الميكروسى مع هذه الذاكرة يتم من خلال مكتبة تسمى EEPROM وبها دالتين , لقراءة بيانات محفوظة فى عنوان وكتابة بيانات على عنوان من هذه الذاكرة : وهما :
الدالة : unsigned short EEPROM_Read (unsigned int address): تستخدم هذه الدالة لقراءة وإرجاع البيانات من عنوان محدد بالبارامتر address .

كود:

// for PIC16 unsigned short EEPROM_Read(unsigned short address); // for PIC18 unsigned short EEPROM_Read(unsigned int address);
unsigned short take;
...
take = EEPROM_Read(0x3F);



الدالة : EEPROM_Write (unsigned int address, unsigned short data) : هذه الدالة تقوم بكتابة البيانات المحددة بالبارمتر dataعلى عنوان محدد بالبارامتر address .


كود:

// for PIC16 void EEPROM_Write(unsigned short address, unsigned short data); // for PIC18 void EEPROM_Write(unsigned int address, unsigned short data);
EEPROM_Write(0x32, 19);



للفهم الصحيح لعمل هذه المكتبة راقب وحلل كود المصدر للبرنامج التالى :

اعلانات

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:328
قديم 19-09-2012, 02:45 PM المشاركة 2   
افتراضي


للفهم الصحيح لعمل هذه المكتبة راقب وحلل كود المصدر للبرنامج التالى :


كود:
void main (void) { // Configure ports. TRISB = 0; PORTB = 0; while (1) // infinite loop. { // Displays the value on port B // From address 0 of the EEPROM. PORTB =EEPROM_Read (0); // The if statement evaluates if the button is pressed. if (! PORTC.F0) { // Increase the value of port B. PORTB ++; // Store the new port value // At address 0 of the EERPOM. EEPROM_Write (0, PORTB); // Wait up to release. while (! PORTC.F0); } } }void main (void) { // Configure ports. TRISB = 0; PORTB = 0; while (1) // infinite loop. { // Displays the value on port B // From address 0 of the EEPROM. PORTB =EEPROM_Read (0); // The if statement evaluates if the button is pressed. if (! PORTC.F0) { // Increase the value of port B. PORTB ++; // Store the new port value // At address 0 of the EERPOM. EEPROM_Write (0, PORTB); // Wait up to release. while (! PORTC.F0); } } }











لمحاكاة هذا البرنامج يتم جلب العناصر التالية لبرنامج ISIS :
16F877A, IC, LED-RED, BUTTON .

الدائرة الكهربية :


اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:328
قديم 19-09-2012, 02:47 PM المشاركة 3   
افتراضي


الدائرة الكهربية :








عند المحاكاة , تبين الليدات القيمة الموجودة بالعنوان صفر address 0 للذاكرة EEPROM هذه القيمة يتم تزايدها فى كل مرة تقوم فيها بالضغط على المفتاح الضاغط ويتم تحديث الذاكرة EEPROM بها بعملية كتابة على العنوان صفر .
خلال المحاكاة يمكنك التوقف عنها وهذا يعطل الطاقة , وعند تشغيل المحاكاة مرة أخرى يمكنك أن ترى نفس قيمة المعلومات التى تم حفظها .
9-2 ذاكرة FLASH :

موضوع مغلق

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 11:19 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2024