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

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

الصورة الرمزية عبدالله حجازى
عبدالله حجازى
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2011
الدولة: مصر .. محافظة دمياط
المشاركات: 1,688
نشاط [ عبدالله حجازى ]
قوة السمعة:111
قديم 23-05-2017, 05:58 AM المشاركة 1   
افتراضي برجاء المساعده في التعامل مع ذاكرة ايبروم الداخليه للميكروكنترولر Twitter FaceBook Google+



السلام عليكم ورحمه الله وبركاته ..

اخواني .. كل عام وانتم بخير ..


برجاء المساعده في التعامل مع ذاكرة ايبروم الداخليه للميكروكنترولر PIC 16F84A


كتب هذا البرنامج وهو يعمل جيدااا علي المكاه وايضااا يعمل جيدااا علي أرض الواقع ..

ولكن عند المحكاه ذاكرة الإبروم تعمل بشكل جيد وعند تنفيذ المشروع علي التيست بورد الاحظ ان البرنامج يعمل بشكل جيد ولكن ذاكرة الإبروم لا تعمل ....

وللعمل ذاكرة الإبروم تعمل في المحكاه وعلي ارض الواقع لا تعمل ...


أرجو الحل ... اعتقد انه يوجد طريقه ما لتفعيل ذاكرة الإبروم ولكن صراحه انا أول مره اتعامل مع هذا الميكرو ..

اليكم صوره للدائرة ..





واليكم الكود ..


كود:
   
      #define pazer  porta.f4=1; Delay_ms(150); porta.f4=0; Delay_ms(100); porta.f4=1; Delay_ms(150); porta.f4=0; Delay_ms(100);

      #define WAET  Delay_ms(1000);

      unsigned short number,i,Continue=0,X=0;
      void WriteNumber(unsigned char number)
     {
      switch(number)
    {
     case 0: number = 0xC0; break;  // number 0
     case 1: number = 0xF9; break ; // number 1
     case 2: number = 0xA4; break;  // number 2
     case 3: number = 0xB0; break;  // number 3
     case 4: number = 0x99; break;  // number 4
     case 5: number = 0x92; break;  // number 5
     case 6: number = 0x82; break;  // number 6
     case 7: number = 0xF8; break;  // number 7
     case 8: number = 0x80; break;  // number 8
     case 9: number = 0x90; break;  // number 9
    }

    PORTB = number ;   // show value number on 7 _segment

    }


       void main() {
     TRISB=0;  PORTB=0;
     TRISA=7;  PORTA=0;

      i = EEPROM_Read(0); Delay_ms(250);       //   and display data on PORTD
      while(1){

      if(porta.f0==1)
      { i++;   eeprom_write(0, i);     Delay_ms(250); }

      if(i==10)
      {i=0;  eeprom_write(0, i);  Delay_ms(250);}

      if(porta.f1==1)
      {i--;  eeprom_write(0, i); Delay_ms(250); }

      if(i==0)
      {i=1;   eeprom_write(0, i);  Delay_ms(250);}
     //****************************************************//


     number = i;

     WriteNumber(i);



  }
 }




وملف المحكاه + الكود ..

https://drive.google.com/open?id=0Bx...jdjUmJJMThjZWc



ارجو الأهتمام ..

وشاكر للجميع تحياتي

اعلانات

الصورة الرمزية عبدالله حجازى
عبدالله حجازى
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2011
الدولة: مصر .. محافظة دمياط
المشاركات: 1,688
نشاط [ عبدالله حجازى ]
قوة السمعة:111
قديم 24-05-2017, 12:51 AM المشاركة 2   
افتراضي اللهم انفعنا بما علمتنا وعلمنا ما ينفعنا وزدنا علما


السلام عليكم ورحمه الله

ارجو الرد من من لديه خبره في التعامل مع هذا البك ...

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

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 24-05-2017, 10:48 AM المشاركة 3   
افتراضي


السلام عليكم ورحمه الله

ارجو الرد من من لديه خبره في التعامل مع هذا البك ...
وعليكم السلام ورحمة الله وبركاته
برجاء كتابة المطلوب من البرنامج أى طريقة سير البرنامج والغرض من كل مفتاح حتى نتمكن من المساعدة .
مع تمنياتى بدوام التوفيق

احصائية الشكر والاعجاب - 2 شكراً, 0 عدم اعجاب, 2 اعجاب
شكراً محمد إلياس, عبدالله حجازى ( شكر العضو على هذه المشاركة )
اعجاب محمد إلياس, عبدالله حجازى ( أعجبته المشاركة )

الصورة الرمزية عبدالله حجازى
عبدالله حجازى
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2011
الدولة: مصر .. محافظة دمياط
المشاركات: 1,688
نشاط [ عبدالله حجازى ]
قوة السمعة:111
قديم 25-05-2017, 12:45 AM المشاركة 4   
افتراضي


وعليكم السلام ورحمة الله وبركاته
برجاء كتابة المطلوب من البرنامج أى طريقة سير البرنامج والغرض من كل مفتاح حتى نتمكن من المساعدة .
مع تمنياتى بدوام التوفيق

السلام عليكم ورحمه الله


شكراااا جزيلا مهندسنا القدير " F.Abdelaziz " علي الإهتمام ..

أخي ومعلمي العزيز ...


هذا البرنامج هو لتايمر عداد انارة درج سلم ... ومرفق الدائرة اإلكترونيه اعلاه ...


المطلوب من البرنامج هو """


في بدايه البرنامج يوجد " 3 مفاتيح "" مفتاحين لذياده ونقصان الشاشه 7 سيجمينت .. ومفتاح للتحكم في تشغيل الراليه ..



"" المفتاح "" UP "" الموصل علي porta.f0 هو لذيادة عدد الشاشه بواحد ... عند كل ضغطه .. والمفتاح "" DOWN "" الموصل علي porta.f1 هو لنقصان عدد الشاشه بواحد عند كل ضغطه ...



والمفتاح "" START "" الموصل علي porta.f2 هو للتحكم في تشغيل الراليه لزمن محدد ولكن يوجد عدد "" 9 "" أوامر شرطيه ... تختبر قيمه المتغير "" i "" وحاله المفتاح "" START "" الموصل علي porta.f2 ..



المطلوب هنا من هذا البرنامج هو تخزين قيمه المتغير "" i "" في ذاكرة الإبروم الداخليه للميكرو .. وحاله التخزين هذه هتم في حاله الضغط علي المفتاح "" UP "" أو المفتاح "" DOWN ""


مثال صغير ... لوم تم الضغط عل المفتاح "" UP "" سوف تزيد قيمه المتغير "" i "" بواحد ... واريد تخزين التغيرات اللتي حدثت للمتغير في ذاكرة الإبروم ..

وايضاااا لو تم الضغط عي المفتاح "" DOWN "" سيتم تناقص قيمه المتغير "" i "" بواحد وهنا ايضااا اريد تخزين التغيرات اللتي حدثت للمتغير "" i "" ..في ذاكرة الإبروم ...



شكرااا جزيلا لك .. مهندسنا القدير "" F.Abdelaziz ""

جزاك الله خيرااا وكل عام وانت بخير ...
..


الصورة الرمزية عبدالله حجازى
عبدالله حجازى
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2011
الدولة: مصر .. محافظة دمياط
المشاركات: 1,688
نشاط [ عبدالله حجازى ]
قوة السمعة:111
قديم 25-05-2017, 12:59 AM المشاركة 5   
افتراضي اللهم انفعنا بما علمتنا وعلمنا ما ينفعنا وزدنا علما


السلام عليكم ورحمه الله وبركاته ....


أخي الكريم ... فتح الله عبد العزيز ... اليك البرنامج كامل ..



وما اريده هنا هو حفظ قيمه الشاشه 7 سيجمنت في ذاكرة الإبروم ... عند فصل التيار عن الدائرو واعادته تستعيد قيمتها من ذاكره الإبروم ...

لقد تعاملت مع المتحكم pic16f877a وتعاملت مع ذاكرو الإبروم الخاصه به و عملت بشكل جيد ..

ولكن المتحكم pic1684a أجد صعوبه في الكتابه والقرأه من ذاكرة الإبروم الخاصه به ...


شكراااا جزيلا


الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:333
قديم 25-05-2017, 11:20 AM المشاركة 6   
افتراضي


السلام عليكم ورحمه الله وبركاته ....


أخي الكريم ... فتح الله عبد العزيز ... اليك البرنامج كامل ..



وما اريده هنا هو حفظ قيمه الشاشه 7 سيجمنت في ذاكرة الإبروم ... عند فصل التيار عن الدائرو واعادته تستعيد قيمتها من ذاكره الإبروم ...

لقد تعاملت مع المتحكم pic16f877a وتعاملت مع ذاكرو الإبروم الخاصه به و عملت بشكل جيد ..

ولكن المتحكم pic1684a أجد صعوبه في الكتابه والقرأه من ذاكرة الإبروم الخاصه به ...


شكراااا جزيلا
أخى الكريم شكرا جزيلا لك
شكرا للشرح
التعامل مع الميكروكونترولر PIC16F877A لا يختلف إطلاقا عن التعامل مع الميكروكونترولر PIC16F84A .
المشكلة ربما تكون محصورة فى الهاردوير ، أو فى صبط الإعدادات (الفيوزات) Configuration أثناء حرق (تحميل) البرنامج على الميكروكونترولر .
مع تمنياتى بدوام التوفيق


التعديل الأخير تم بواسطة : F.Abdelaziz بتاريخ 25-05-2017 الساعة 11:29 AM
احصائية الشكر والاعجاب - 1 شكراً, 0 عدم اعجاب, 1 اعجاب
شكراً عبدالله حجازى ( شكر العضو على هذه المشاركة )
اعجاب عبدالله حجازى ( أعجبته المشاركة )

ماجد عباس محمد
:: نائب المشرف العام
::
تاريخ التسجيل: Jun 2009
الدولة: القاهرة - مصر
المشاركات: 12,214
نشاط [ ماجد عباس محمد ]
قوة السمعة:408
قديم 25-05-2017, 12:50 PM المشاركة 7   
افتراضي


أخى
و انتم بالصحة و السلامة
مادام البرنامج يعمل فى المحاكاة فتأكد من أن البرنامج يولد أيضا ملف منفصل لبيانات EEPROM (ويبدو انه حادث بدليل العمل فى المحاكاة) و ان المبرمجة أيضا تقرأه و تبرمجة فى الميكرو فقد وقعت فى هذا الإشكال سابقا و اكتشفت ان ليست كل المبرمجات تفعل كل المطلوب منها

احصائية الشكر والاعجاب - 0 شكراً, 0 عدم اعجاب, 1 اعجاب
اعجاب F.Abdelaziz ( أعجبته المشاركة )

الصورة الرمزية assed
assed
:: عضو فضي ::
تاريخ التسجيل: Jul 2014
الدولة: العراق - بغداد
المشاركات: 1,036
نشاط [ assed ]
قوة السمعة:97
قديم 25-05-2017, 04:33 PM المشاركة 8   
افتراضي


السلام عليكم
أنا لا اجيد لغة micro c ولاكن الرجستريات الخاصة بذاكرة الاييبروم
EECON1
EEDATA
EEADR
اليس من الاصح ان تكتب في البرنامج من حيث مكان التخزين والقراءة والكتابة . ام انها تهيء في اعدادات البرنامج الاولية . ام ان البيك سوف يتخذ مادوون من اوامر ...
ام انها ليس لها حاجة !!

احصائية الشكر والاعجاب - 1 شكراً, 0 عدم اعجاب, 0 اعجاب
شكراً عبدالله حجازى ( شكر العضو على هذه المشاركة )
إضافة رد

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

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

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


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

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