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

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

omar_2099
:: مهندس ::
تاريخ التسجيل: Jun 2009
المشاركات: 4
نشاط [ omar_2099 ]
قوة السمعة:0
قديم 05-05-2011, 05:11 PM المشاركة 1   
x1 طريقة برمجة شاشة GLCD بلغة MIKROC Twitter FaceBook Google+



بسم الله الرحمن الرحيم

طريقة برمجة شاشة GLCD بلغة MIKROC
نوع الشاشة AMPIRE128X64 ks0108
رسم الدائرة

[IMG][/IMG]

طريقة البرمجة

1- عمل Initializes GLCD

Glcd_Init(unsigned short *ctrl_port, unsigned short cs1, unsigned short cs2, unsigned short rs, unsigned short rw, unsigned short rst, unsigned short en, unsigned unsigned short *data_port);

في هذا المثال استخدمنا PORTB كــ ctrl_port و ربطنا RB0,1,2,3,5,4 ل
cs1, cs2, rs, rw, rst, and en
و PORTD كـ data_port

2- الان نستطيع رسم و كتابة اي شيء على الشاشة من خلال الاوامر الجاهزة والتي نستطيع الحصول عليها من HELP الموجود في برنامج MIKROC
اكتب في البحث GLCD واختر Graphic LCD Library
واستخدمت امر رسم مستطيل في الشاشة لكي يكون البرنامج بسيط ويستطيع اي قارء فهمه واستخد امر رسم BOX واعطيتة في مكان اللون 0 لكي يمسح الشاشة لانه في الحقيقة عند استخدام امر مسح الشاشة تضهر عندي مشاكل
لا يمسح الشاشة باكملها

ايعاز رسم المستطيل
Glcd_Rectangle(unsigned short x1, unsigned short y1, unsigned short x2, unsigned short y2, unsigned short color);

كود:
Glcd_Rectangle(0,20, 93,57, 1);
ايعاز رسم ال BOX

Glcd_Box(unsigned short x1, unsigned short y1, unsigned short x2, unsigned short y2, unsigned short color);

كود:
Glcd_Box(0,0, 128,64, 0);
البرنامج كامل

كود:
void cls(void){         // function to clean screen
Glcd_Box(0,0, 128,64, 0); 
}

void main() {

Glcd_Init(&PORTB, 0, 1, 2, 3, 5, 4, &PORTD);

cls();

Glcd_Rectangle(0,20, 93,57, 1);
delay_ms(2000);

cls();  //clear screen
}
والمثال العملي في الرابط التالي

http://www.7ammil.com/index.php/file...ar?do=download



قال رسول الله صلى الله عليه وسلم
"مَنْ دَلَّ على خَيْرٍ فله مِثْلُ أجرِ فاعلهِ"
بامكان اي شخص نشر هذا الموضوع لكي تعم الفائدة بين الناس

اعلانات

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:152
قديم 05-05-2011, 07:24 PM المشاركة 2   
افتراضي


جزاك الله كل الخير

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

maher_guizeni
:: مهندس متواجد ::
تاريخ التسجيل: Nov 2010
الدولة: Tunis
المشاركات: 116
نشاط [ maher_guizeni ]
قوة السمعة:0
قديم 05-05-2011, 09:40 PM المشاركة 3   
افتراضي


جزاك الله كل الخير


الصورة الرمزية mohatvnet
mohatvnet
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
الدولة: https://t.me/pump_upp
المشاركات: 961
نشاط [ mohatvnet ]
قوة السمعة:0
قديم 06-05-2011, 04:45 PM المشاركة 4   
افتراضي


جزاك الله خيرا اخي omar_2099

لكن لي استفسار كيف يمكن ادخال احدى الموجة كهربائية لتمتيلها على g lcd
انا اريد ان استعملها في عمل قارئ الاشارات متل الجيبية و مستطيلية ...


omar_2099
:: مهندس ::
تاريخ التسجيل: Jun 2009
المشاركات: 4
نشاط [ omar_2099 ]
قوة السمعة:0
قديم 07-05-2011, 08:18 AM المشاركة 5   
افتراضي


جزاك الله خيرا اخي omar_2099

لكن لي استفسار كيف يمكن ادخال احدى الموجة كهربائية لتمتيلها على g lcd
انا اريد ان استعملها في عمل قارئ الاشارات متل الجيبية و مستطيلية ...

اخي العزيز لكي تكون قادر على رسم الموجة يجب عليك اولا ان تحول الموجة الى digital باستخدام الايعاز ADC_Read(0) و بعد ذلك تأخذ القيمة التي سوف تكون عبارة عن رقم الذي يمثل مقياس الفولتية في اللحضة الاولى وبعد ذلك نستخدم ايعاز
Glcd_Dot(unsigned short x, unsigned short y, unsigned short color);
كود:
 Glcd_Dot(x, ADC_Read(0), 2);
x يمثل زمن قياس الفولتية والتي ستزداد في كل مرة

يعني ان شكل الفولتتية جعلناه على شكل نقاط وكل نقطة لها (x,y)
x يمثل الزمن و y يمثل مقدار الفولتية

وهذا مثال بسيط لكن لاتعتمده في قراءة شكل الموجة 100% وانما لمعرفة كيف يتم رسم الموجة على glcd


وهذا المثال العملي

http://www.7ammil.com/index.php/file...37?do=download


الصورة الرمزية mohatvnet
mohatvnet
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
الدولة: https://t.me/pump_upp
المشاركات: 961
نشاط [ mohatvnet ]
قوة السمعة:0
قديم 07-05-2011, 09:28 AM المشاركة 6   
Smile شكرا جزيلا


اخي العزيز لكي تكون قادر على رسم الموجة يجب عليك اولا ان تحول الموجة الى digital باستخدام الايعاز ADC_Read(0) و بعد ذلك تأخذ القيمة التي سوف تكون عبارة عن رقم الذي يمثل مقياس الفولتية في اللحضة الاولى وبعد ذلك نستخدم ايعاز
Glcd_Dot(unsigned short x, unsigned short y, unsigned short color);
كود:
 Glcd_Dot(x, ADC_Read(0), 2);
x يمثل زمن قياس الفولتية والتي ستزداد في كل مرة

يعني ان شكل الفولتتية جعلناه على شكل نقاط وكل نقطة لها (x,y)
x يمثل الزمن و y يمثل مقدار الفولتية

وهذا مثال بسيط لكن لاتعتمده في قراءة شكل الموجة 100% وانما لمعرفة كيف يتم رسم الموجة على glcd


وهذا المثال العملي

http://www.7ammil.com/index.php/file...37?do=download

شكرا جزيلا اخي omar_2099 وجعله الله في ميزان حسنتك

لي استفسار هل المربعات التي تكون في هدا المشروع يكون متل طريقة التي دكرت في الاول درس نعمل عدة مربعات بعدى دالك نعمل المنحنى في شاشة

اسف على كترة الاسئلة


omar_2099
:: مهندس ::
تاريخ التسجيل: Jun 2009
المشاركات: 4
نشاط [ omar_2099 ]
قوة السمعة:0
قديم 07-05-2011, 10:18 AM المشاركة 7   
افتراضي


اخي وضحلي اكثر اي مربعات تقصد ؟


الصورة الرمزية mohatvnet
mohatvnet
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
الدولة: https://t.me/pump_upp
المشاركات: 961
نشاط [ mohatvnet ]
قوة السمعة:0
قديم 07-05-2011, 10:40 AM المشاركة 8   
ha


اخي وضحلي اكثر اي مربعات تقصد ؟

المربعات متل الموجودة في قارئ الموجات بحيت نضرب عدد المربعات في زمن او في الفولت للحصول على زمن حقيقي او على فولت حقيقي

اسف لعدم توضيح

إضافة رد

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

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

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


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

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