سؤال بسيط عن الـ eeprom

alsnaude

عضو جديد
إنضم
8 مايو 2011
المشاركات
5
مجموع الإعجابات
0
النقاط
0
السلام عليكم ورحمة الله وبركاته

صباح الخير اخواني

عندي سؤال بسيط عن الايبروم

واجهتني مشكله بأني لم استطع برمجة الايبروم في الدائرة التاليه

4-2.jpg
ر


بحيث اذا ضغطت على رقم 1 وأضغط على زر Save يحفط لي الناتج في الايبروم
ومن ثم اضغط على زر Return يسترجعلي القيمه المحفوظه في الذاكره ..

هذا الكود اريد التعديل عليه

كود:
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB0_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D7_Direction at TRISB3_bit;
char keypadPort at PORTD ;
char kp ;
void main() {
while(1) {
lcd_init();
Keypad_Init();
lcd_out(1,1,"TECNOLOGY EXPERS");
delay_ms(2000);
Lcd_Cmd(_LCD_CLEAR);
lcd_cmd(_lcd_cursor_off);
lcd_out(1,1,"Value:") ;
lcd_cmd(_LCD_SECOND_ROW);
lcd_cmd(_lcd_underline_on);
while(1) {
do {kp = keypad_key_click() ; }
while (!kp);
switch (kp) {
      case  1: kp = 49; break; // 1
      case  2: kp = 50; break; // 2
      case  3: kp = 51; break; // 3
      case  5: kp = 52; break; // 4
      case  6: kp = 53; break; // 5
      case  7: kp = 54; break; // 6
      case  9: kp = 55; break; // 7
      case 10: kp = 56; break; // 8
      case 11: kp = 57; break; // 9
      case 13: kp = 42; break; // *
      case 14: kp = 48; break; // 0
      case 15: Lcd_Cmd(_LCD_CLEAR); lcd_out(1,1,"Value:") ; Lcd_cmd(_lcd_second_row);lcd_cmd(_lcd_underline_on);
    }
lcd_chr_cp(kp) ; delay_ms(200);
         }
            }
          }
 
التعديل الأخير:

مواضيع مماثلة

alsnaude

عضو جديد
إنضم
8 مايو 2011
المشاركات
5
مجموع الإعجابات
0
النقاط
0
مشاء الله عليك الرد سريع
البك المستخدم pic16f877
 

alsnaude

عضو جديد
إنضم
8 مايو 2011
المشاركات
5
مجموع الإعجابات
0
النقاط
0
هل من أحد يستطيع مساعدتي ؟
 
أعلى