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

   

الصورة الرمزية kaoutar11
kaoutar11
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2012
الدولة: Algeria
المشاركات: 144
نشاط [ kaoutar11 ]
قوة السمعة:
قديم 29-07-2012, 01:42 AM المشاركة 17   
افتراضي



اختي الكريمة الاصدارات القديمة تميز بين الأحرف الكبيرة ; والصغيرة أما الأحدث فلا جربي الاصدار v4.60 وضعه الاخ alolo23 من هنا : http://www.4shared.com/zip/quTtAP6d/...460_setup.html
والبروتس النسخة v7.10 spo على الرابط التالي : http://www.mediafire.com/?00i45g1nzvnlaax
بارك الله فيك اخي سوف اقوم بتحميل هذه النسخة الجديدة أرى النتيجة

اعلانات

الصورة الرمزية kaoutar11
kaoutar11
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2012
الدولة: Algeria
المشاركات: 144
نشاط [ kaoutar11 ]
قوة السمعة:
قديم 29-07-2012, 03:11 AM المشاركة 18   
افتراضي


اختي الكريمة الاصدارات القديمة تميز بين الأحرف الكبيرة ; والصغيرة أما الأحدث فلا جربي الاصدار v4.60 وضعه الاخ alolo23 من هنا : http://www.4shared.com/zip/quTtAP6d/...460_setup.html
والبروتس النسخة v7.10 spo على الرابط التالي : http://www.mediafire.com/?00i45g1nzvnlaax
لقد قمت بالتحميل micro C النسخة الجديدة لكن الملف الثاني لم يفتح لي لا أدري ما السبب حيث انه تظهر لي نافذة بوجود خطأ ما


التعديل الأخير تم بواسطة : kaoutar11 بتاريخ 29-07-2012 الساعة 03:49 AM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

الصورة الرمزية abdellah48
abdellah48
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2010
الدولة: المغرب
المشاركات: 157
نشاط [ abdellah48 ]
قوة السمعة:
قديم 30-07-2012, 03:51 PM المشاركة 19   
x4


اليكم هذا المثال موجود بموقع الميكروسي لكيفية تحريك كلمة ما من خلاله تتعرف على أوامر للتحريك نحو اليمين واليسار تفضلوا:
كود:
// LCD module connections
sbit LCD_RS at RB2_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_D4 at RB4_bit;
sbit LCD_D5 at RB5_bit;
sbit LCD_D6 at RB6_bit;
sbit LCD_D7 at RB7_bit;

sbit LCD_RS_Direction at TRISB2_bit;
sbit LCD_EN_Direction at TRISB3_bit;
sbit LCD_D4_Direction at TRISB4_bit;
sbit LCD_D5_Direction at TRISB5_bit;
sbit LCD_D6_Direction at TRISB6_bit;
sbit LCD_D7_Direction at TRISB7_bit;
// End LCD module connections

char txt1[] = "mikroElektronika";
char txt2[] = "EasyPIC6";
char txt3[] = "Lcd4bit";
char txt4[] = "example";
char i;                              // Loop variable

void Move_Delay() {                  // Function used for text moving
  Delay_ms(500);                     // You can change the moving speed here
                  }
  void main(){ pcon.f3=1;


  Lcd_Init();                        // Initialize LCD

  Lcd_Cmd(_LCD_CLEAR);               // Clear display
  Lcd_Cmd(_LCD_CURSOR_OFF);          // Cursor off
  Lcd_Out(1,6,txt3);                 // Write text in first row

  Lcd_Out(2,6,txt4);                 // Write text in second row
  Delay_ms(2000);
  Lcd_Cmd(_LCD_CLEAR);               // Clear display

  Lcd_Out(1,1,txt1);                 // Write text in first row
  Lcd_Out(2,5,txt2);                 // Write text in second row

  Delay_ms(2000);

  // Moving text
  for(i=0; i<4; i++) {               // Move text to the right 4 times
    Lcd_Cmd(_LCD_SHIFT_RIGHT);
    Move_Delay();
  }

  while(1) {                         // Endless loop
    for(i=0; i<8; i++) {             // Move text to the left 7 times
      Lcd_Cmd(_Lcd_shift_left);
      Move_Delay();
    }

    for(i=0; i<8; i++) {             // Move text to the right 7 times
      Lcd_Cmd(_LCD_SHIFT_RIGHT);
      Move_Delay();
    }
  }
}
هذه الجملة
void Move_Delay()هي الدالة المسؤولة عن التحريك ويمكن تغيير الزمن الموجود داخلها لتسريع أو جعل الحركة بطيئة ,
مابداخل void main() :
نقوم بتصفير الشاشة من خلال الأمر
كود:
Lcd_Cmd(_LCD_CLEAR); 
والغاء المؤشر من خلال الأمر
كود:
 Lcd_Cmd(_LCD_CURSOR_OFF); 
ثم كتابة النص lcd4bit في الصف الأول العمود 6 وأيضا كتابة النص 4 example في الصف 2 العمود 6 ثم ننتظر تانيتين
كود:
Lcd_Out(1,6,txt3);Lcd_Out(2,6,txt4); 
ونقوم بتصفير الشاشة من خلال الأمر
كود:
Lcd_Cmd(_LCD_CLEAR);
بعدها نكتب انص microelectronica في الصف 1 العمود 5 وأيضا كتابة النص easypic6 في الصف 2 العمود 5 ثم ننتظر لمدة ثانيتين بعدها نقوم بتحريك الجملتين mecroelectronika و easypic6 أربع مرات نحو اليمين
كود:

  for(i=0; i<4; i++) 
جملة for هي للعد 4 مرات وينفد مابداخلها
كود:
 Lcd_Cmd(_LCD_SHIFT_RIGHT);
      Move_Delay()
بعده ندخل في حلقة تكرارية لا متناهية
كود:
while(1)
سينفذ ما بداخلها
تحريك الجملتين 7 مرات نحو اليسار ثم 7 نحو اليمين وتكرر هذه العملية .


التعديل الأخير تم بواسطة : abdellah48 بتاريخ 30-07-2012 الساعة 05:49 PM

hunter27
:: مهندس جيد ::
تاريخ التسجيل: Jul 2012
الدولة: المغرب
المشاركات: 284
نشاط [ hunter27 ]
قوة السمعة:
قديم 30-07-2012, 05:58 PM المشاركة 20   
افتراضي


السلام عليكم

شكرا لك اخي على المثال و الشرح الراائع
لدي طلب اخي و سمحة
كيف استطيع ان اكتب ارقام ب key pad في lcd بالميكروسي
و شكراا لك اخي الكريم


الصورة الرمزية abdellah48
abdellah48
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2010
الدولة: المغرب
المشاركات: 157
نشاط [ abdellah48 ]
قوة السمعة:
قديم 30-07-2012, 06:09 PM المشاركة 21   
افتراضي


السلام عليكم أخي الكريم انا لم أتعلم حاليا الكايباد أريد أن اتقن lcd ومن تم تم أتجه لل kaypad اليك هذين الرابطن لعلك تجد ظالتك :1-http://www.mikroe.com/eng/products/v...c-pro-for-pic/
http://www.dbaasco.com/vb/showthread.php?t=6905


hunter27
:: مهندس جيد ::
تاريخ التسجيل: Jul 2012
الدولة: المغرب
المشاركات: 284
نشاط [ hunter27 ]
قوة السمعة:
قديم 30-07-2012, 06:24 PM المشاركة 22   
افتراضي


جزاك الله خيراا بالتوفيق لك ان شاء الله


الصورة الرمزية kaoutar11
kaoutar11
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2012
الدولة: Algeria
المشاركات: 144
نشاط [ kaoutar11 ]
قوة السمعة:
قديم 01-08-2012, 03:04 PM المشاركة 23   
افتراضي


اليكم هذا المثال موجود بموقع الميكروسي لكيفية تحريك كلمة ما من خلاله تتعرف على أوامر للتحريك نحو اليمين واليسار تفضلوا:
كود:
// LCD module connections
sbit LCD_RS at RB2_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_D4 at RB4_bit;
sbit LCD_D5 at RB5_bit;
sbit LCD_D6 at RB6_bit;
sbit LCD_D7 at RB7_bit;

sbit LCD_RS_Direction at TRISB2_bit;
sbit LCD_EN_Direction at TRISB3_bit;
sbit LCD_D4_Direction at TRISB4_bit;
sbit LCD_D5_Direction at TRISB5_bit;
sbit LCD_D6_Direction at TRISB6_bit;
sbit LCD_D7_Direction at TRISB7_bit;
// End LCD module connections

char txt1[] = "mikroElektronika";
char txt2[] = "EasyPIC6";
char txt3[] = "Lcd4bit";
char txt4[] = "example";
char i;                              // Loop variable

void Move_Delay() {                  // Function used for text moving
  Delay_ms(500);                     // You can change the moving speed here
                  }
  void main(){ pcon.f3=1;


  Lcd_Init();                        // Initialize LCD

  Lcd_Cmd(_LCD_CLEAR);               // Clear display
  Lcd_Cmd(_LCD_CURSOR_OFF);          // Cursor off
  Lcd_Out(1,6,txt3);                 // Write text in first row

  Lcd_Out(2,6,txt4);                 // Write text in second row
  Delay_ms(2000);
  Lcd_Cmd(_LCD_CLEAR);               // Clear display

  Lcd_Out(1,1,txt1);                 // Write text in first row
  Lcd_Out(2,5,txt2);                 // Write text in second row

  Delay_ms(2000);

  // Moving text
  for(i=0; i<4; i++) {               // Move text to the right 4 times
    Lcd_Cmd(_LCD_SHIFT_RIGHT);
    Move_Delay();
  }

  while(1) {                         // Endless loop
    for(i=0; i<8; i++) {             // Move text to the left 7 times
      Lcd_Cmd(_Lcd_shift_left);
      Move_Delay();
    }

    for(i=0; i<8; i++) {             // Move text to the right 7 times
      Lcd_Cmd(_LCD_SHIFT_RIGHT);
      Move_Delay();
    }
  }
}
هذه الجملة
void Move_Delay()هي الدالة المسؤولة عن التحريك ويمكن تغيير الزمن الموجود داخلها لتسريع أو جعل الحركة بطيئة ,
مابداخل void main() :
نقوم بتصفير الشاشة من خلال الأمر
كود:
Lcd_Cmd(_LCD_CLEAR); 
والغاء المؤشر من خلال الأمر
كود:
 Lcd_Cmd(_LCD_CURSOR_OFF); 
ثم كتابة النص lcd4bit في الصف الأول العمود 6 وأيضا كتابة النص 4 example في الصف 2 العمود 6 ثم ننتظر تانيتين
كود:
Lcd_Out(1,6,txt3);Lcd_Out(2,6,txt4); 
ونقوم بتصفير الشاشة من خلال الأمر
كود:
Lcd_Cmd(_LCD_CLEAR);
بعدها نكتب انص microelectronica في الصف 1 العمود 5 وأيضا كتابة النص easypic6 في الصف 2 العمود 5 ثم ننتظر لمدة ثانيتين بعدها نقوم بتحريك الجملتين mecroelectronika و easypic6 أربع مرات نحو اليمين
كود:

  for(i=0; i<4; i++) 
جملة for هي للعد 4 مرات وينفد مابداخلها
كود:
 Lcd_Cmd(_LCD_SHIFT_RIGHT);
      Move_Delay()
بعده ندخل في حلقة تكرارية لا متناهية
كود:
while(1)
سينفذ ما بداخلها
تحريك الجملتين 7 مرات نحو اليسار ثم 7 نحو اليمين وتكرر هذه العملية .
موضوع رائع


الصورة الرمزية abdellah48
abdellah48
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2010
الدولة: المغرب
المشاركات: 157
نشاط [ abdellah48 ]
قوة السمعة:
قديم 01-08-2012, 04:08 PM المشاركة 24   
افتراضي


أختي الكريمة هل اشتغل معك الكود , سأطرح مثالا اخر ان شاء الله أليس لديك اية سؤال حول lcd ?



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