منتديات الالكترونيات العصرية  
yoursite.com page title .

استرجاع كلمة المرور طلب كود تفعيل العضوية تفعيل العضوية
العودة   منتديات الالكترونيات العصرية > منتدى الحاكمات الدقيقة Microcontroller > منتدى المتحكمات ميكرو بلغة السي MikroC

  #1  
قديم 09-02-2011, 05:04 PM
الصورة الرمزية F.Abdelaziz
F.Abdelaziz F.Abdelaziz غير متواجد حالياً
استاذ الكترونيان
 
تاريخ التسجيل: May 2009
المشاركات: 2,658
معدل تقييم المستوى: 21
F.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to behold
افتراضي تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232



برمجة الفيجوال بيسك من أجل التحكم

Visual Basic programming for control



مقدمة Introduction .

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

عندما نبدأ VB سوف تظهر لوحة الحوار dialog panel وتطلب منا تحديد نزع المشروع كما فى الشكل التالى :














لتطوير (إنشاء) برنامج للتحكم سوف نستخدم بشكل أساسى المشروع "Standard.exe" أسفل شريط القائمة "New" . عندما تنقر على الرمز (الأيقونة) الذى يمثل "Standard.exe" تظهر لك بيئة تطوير VB كما فى الشكل التالى :


















إنقر نقرا مزدوجا على أى رمز (أيقونة) بمربع (صندوق) الأدوات tool box, يظهر هذا الرمز فى الإطار (النافذة) المسماة "Form1" وسوف يتم عرض الخصائص ذات الصلة "بلوحة الخواص"

property panel . كل رمز (أيقونة) يمثل "كائن" object , مثل "الزر الضاغط" button أو "مربع نص" text box أو "مؤقت" timer .

فى برنامج VB يجب بدء (إشعال) كافة "الإجراءات" (الأفعال) actions من خلال السماح بحدوث شىء ما للكائن object . على سبيل المثال , إذا كنا نريد تغيير محتويات "مربع النص" (وهو كائن) , يجب حدوث شىء ما "لكائن" . هذا "الحدث" event يمكن أن يكون النقر بالماوس على "زر" (كائن) أو تمكين "مؤقت" (كائن) أو وضع علامة تحديد اختيار فى "مربع تحقق" check box (كائن) . وهذا هو أحد الفروق الجوهرية بين VB ولغات البرمجة التقليدية .



القادم إن شاء الله



ضبط (إعداد) بيئة البرمجة :
رد مع اقتباس
  #2  
قديم 09-02-2011, 05:38 PM
الصورة الرمزية عمرو عبد الرحمن
عمرو عبد الرحمن عمرو عبد الرحمن غير متواجد حالياً
استاذ الكترونيات
 
تاريخ التسجيل: Jul 2011
الدولة: مصر - المنوفية
المشاركات: 354
معدل تقييم المستوى: 14
عمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to all
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

ماشاء الله راااااااائع يا اخى بارك الله فيك وفى انتظار المزيد

لى سؤال؟
هل الفيجيول بيزك قادر على التعامل مع المنفذ usb وكيف ؟

اعلم ان الاجابة على سؤال طويلة لكن اعذرنى بحثت كثيرا وقليل ما اجد الفائدة

جزاك الله خيرا
رد مع اقتباس
  #3  
قديم 09-02-2011, 06:23 PM
سعيد قادر سعيد قادر غير متواجد حالياً
مشرف
اليكترونيات
 
تاريخ التسجيل: Nov 2009
الدولة: العراق /كوردستان
المشاركات: 3,387
معدل تقييم المستوى: 23
سعيد قادر has much to be proud ofسعيد قادر has much to be proud ofسعيد قادر has much to be proud ofسعيد قادر has much to be proud ofسعيد قادر has much to be proud ofسعيد قادر has much to be proud ofسعيد قادر has much to be proud ofسعيد قادر has much to be proud of
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

منتضرين التكملة انشاء الله موضوع فى غاية الاهمية جزاك الله كل الخير
رد مع اقتباس
  #4  
قديم 09-02-2011, 06:41 PM
طالب علم طالب علم غير متواجد حالياً
عضو جديد
 
تاريخ التسجيل: Mar 2010
المشاركات: 27
معدل تقييم المستوى: 0
طالب علم is on a distinguished road
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

نعم اخى عمرو ممكن التعامل مع الusb عن طريق الفيجوال بيسك
رد مع اقتباس
  #5  
قديم 09-02-2011, 07:15 PM
الصورة الرمزية عمرو عبد الرحمن
عمرو عبد الرحمن عمرو عبد الرحمن غير متواجد حالياً
استاذ الكترونيات
 
تاريخ التسجيل: Jul 2011
الدولة: مصر - المنوفية
المشاركات: 354
معدل تقييم المستوى: 14
عمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to all
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

اقتباس:
المشاركة الأصلية كتبت بواسطة طالب علم مشاهدة المشاركة
نعم اخى عمرو ممكن التعامل مع الusb عن طريق الفيجوال بيسك
جزاك الله خيرا اخى الحبيب على الرد

هل لديك اى ملفات او مواقع (عربى او انجليزى) تشرح عمليه برمجة حاسب لانشاء ربط بين الحاسب والميكروكنترلر عن طريق ال usb

وجزاك الله خيرا
رد مع اقتباس
  #6  
قديم 09-02-2011, 07:41 PM
الصورة الرمزية F.Abdelaziz
F.Abdelaziz F.Abdelaziz غير متواجد حالياً
استاذ الكترونيان
 
تاريخ التسجيل: May 2009
المشاركات: 2,658
معدل تقييم المستوى: 21
F.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to behold
افتراضي ضبط (إعداد) بيئة البرمجة : Setup programming environment

ضبط (إعداد) بيئة البرمجة : Setup programming environment

برنامج VB به وظيفة خاصة للأتصالات التسلسلية RS232 تسمى MScomm , وهى غير متضمنة فى صندوق الأدوات القياسية وتحتاج لإضافتها قبل عمل برنامج التحكم .لعمل ذلك , أولا إذهب إلى شريط القوائم واختار القائمة "مشروع" "Project" واختار "المكونات " "Components" من القائمة المنسدلة ثم ضع علامة اختيار أمام "Microsoft Comm Control 6.0" ثم انقر على زر "Apply" . يظهر لك رمز (أيقونة) التليفون فى صندوق الأدوات . إنقر نقرا مزدوجا على هذا الرمز فيظهر فى نافذة form وفى نفس الوقت تظهر خواصه فى لوحة الخواص .




































أحد أهم الخواص هى قيمة "منفذ الاتصال" CommPort وهو رقم المنفذ التسلسلى RS232 port (COM port) المستخدم للاتصال مع لوحة الربط أو الجهاز . القيمة الافتراضية هى "1" . إذا كان الكمبيوتر به أكثر من منفذ COM port أو كنت تستخدم محول USB converted port فأن الرقم يمكن أن يختلف . إذا كان الضبط (الإعداد) setting غير صحيح فإن الكومبيوتر سوف لا يتمكن من الاتصال مع لوحة الربط أو الجهاز .

خاصية هامة أخرى هى إعداد سرعة الاتصال RS232 . يجب أن تكون هى نفسها كضبط (إعداد) لوحة الربط . القيمة الافتراضية فى برنامج VB هى 9600 (بت كل ثانية) 9600 (bit per second). .

باقى خواص الأداة MScomm يمكن تركها فى وضع الأعداد الافتراضى .




مثال بسيط للبرمجة :
رد مع اقتباس
  #7  
قديم 09-02-2011, 08:40 PM
الصورة الرمزية eng_a_sayed
eng_a_sayed eng_a_sayed غير متواجد حالياً
استاذ ومشرف اليكترونيات
 
تاريخ التسجيل: Jun 2008
الدولة: India in next Dec
المشاركات: 1,243
معدل تقييم المستوى: 23
eng_a_sayed has much to be proud ofeng_a_sayed has much to be proud ofeng_a_sayed has much to be proud ofeng_a_sayed has much to be proud ofeng_a_sayed has much to be proud ofeng_a_sayed has much to be proud ofeng_a_sayed has much to be proud ofeng_a_sayed has much to be proud ofeng_a_sayed has much to be proud of
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

درس غاية فى الروعة

جزاك الله كل خير
__________________
رد مع اقتباس
  #8  
قديم 09-02-2011, 09:15 PM
طالب علم طالب علم غير متواجد حالياً
عضو جديد
 
تاريخ التسجيل: Mar 2010
المشاركات: 27
معدل تقييم المستوى: 0
طالب علم is on a distinguished road
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

أخى عمرو يوجد درس كامل عن الusb باستخذام الفيجوال بيسك وبالتفصيل فى هذا الكتاب موجود على النت اسموا

Advanced PIC Microcontroller Projects in C
From USB to RTOS with the PIC 18F Series
رد مع اقتباس
  #9  
قديم 09-02-2011, 09:19 PM
الصورة الرمزية عمرو عبد الرحمن
عمرو عبد الرحمن عمرو عبد الرحمن غير متواجد حالياً
استاذ الكترونيات
 
تاريخ التسجيل: Jul 2011
الدولة: مصر - المنوفية
المشاركات: 354
معدل تقييم المستوى: 14
عمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to allعمرو عبد الرحمن is a name known to all
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

اقتباس:
المشاركة الأصلية كتبت بواسطة طالب علم مشاهدة المشاركة
أخى عمرو يوجد درس كامل عن الusb باستخذام الفيجوال بيسك وبالتفصيل فى هذا الكتاب موجود على النت اسموا

advanced pic microcontroller projects in c
from usb to rtos with the pic 18f series
الحمد لله تم تحميل الكتاب
جزاك الله خيرا
رد مع اقتباس
  #10  
قديم 09-05-2011, 07:58 AM
الصورة الرمزية F.Abdelaziz
F.Abdelaziz F.Abdelaziz غير متواجد حالياً
استاذ الكترونيان
 
تاريخ التسجيل: May 2009
المشاركات: 2,658
معدل تقييم المستوى: 21
F.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to beholdF.Abdelaziz is a splendid one to behold
افتراضي رد: تبسيط التحكم الأوتوماتيكى automation باستخدام الفيجوال بيسيك VB والاتصال التسلسلى RS232

مثال بسيط للبرمجة : A simple programming example

أى برنامج سوف يتكون من جزئين :

الجزء الأول الخاص بالكومبيوتر وهو برنامج VB .
والجزء الثانى وهو الخاص بلوحة الربط وسوف نستخدم فيه البرمجة بلغة السى والمترجم MIKROC-PRO (يمكن استخدام أى لغة ترغب فيها ) .


الجزء الأول :

جهة الكومبيوتر وبرنامج VB :

بعد إعداد بيئة التطوير يمكننا البدء فى بناء برنامج للاتصال بين لوحة الربط أو الجهاز.
أول شىء هو بناء " واجهة المستخدم " user interface :
# إنقر نقرامزدوجا على الرموز (الأيقونات) المطلوب استخدامها وهنا وهى : رمز الأداة MScomm و سوف نستخدم "زر أمر" تحكم للقيام بتوصيل أى تشغيل جهاز ممثلا بإضاءة ليد بلوحة الربط متصلا بالطرف RB0 ونغير خاصية الاسم له لتكون LED ON و"زر أمر" آخر لفصل هذا الجهاز ممثلا بإطفاء الليد نفسه ونغير خاصية الاسم له لتكون LED OFF .






















يصبح النموذج form كما فى الشكل التالى :










بعد ذلك يتم ضبط إعدادات الاتصال التسلسلى RS232 ومنفذ الاتصال CommPort بالقيم الصحيحة .
هنا سوف نقوم بذلك فى البرنامج نفسه .
. إنقر نقرا مزدوجا على النموذج form فيؤدى ذلك إلى جلب "لوحة البرمجة" programming panel لكتابة الكود .
الشكل التالى يبين لوحة البرمجة وبها البرنامج البسيط .









هذا البرنامج ينقسم إلى ثلاثة أجزاء (كل جزء يسمى sub أى برنامج فرعى ) .
كل sub يخبر ما يتم عمله فى ظل (نتيجة) حدث ما .
أول sub يخبر عما يجب عمله عند البداية عندما يتم عرض Form_Load ( تذكر ما ذكرناه قبل ذلك : يجب حدوث شىء ما لكائن لبدء الأفعال ) .
يقوم هذا البرنامج الفرعى sub بفعل شيئين :
# الشىء الأول : هو اختيار رقم المنفذ المستخدم فى الاتصال وهنا نستخد المنفذ الأول COM1 وصيغة هذا الأمر هى : MSComm1.CommPort = 1 .

# الشىء الثانى : هو ضبط إعدادات المنفذ بالصيغة التالية :

MSComm1.Settings = "19200,n,8,1""

# الشىء الثالث : هو فتح المنفذ حتى نتمكن من إرسال البيانات بالصيغة التالية : MSComm1.PortOpen = True

فنح open المنفذ التسلسلى RS232 الذى تم اختياره . حيث أنه يحتاج لفتحه قبل أن نتمكن من إرسال الأوامر .

MSComm1.PortOpen = True

البرنامج الفرعى الثانى خاص بتشغيل الجهاز : عند النقر على زر LED ON يتم أرسال القيمة واحد "1" إلى لوحة الربط حيث تستقبلها وتضهعا فى المنفد PORTB ومن ثم يضىء الليد المتصل بالطرف RB0 لأن = 0b00000001 "1" .
البرنامج الفرعى الثالث خاص بتبطيل الجهاز : عند النقر على زر LED OFF يتم أرسال القيمة واحد "0" إلى لوحة الربط حيث تستقبلها وتضهعا فى المنفد PORTB ومن ثم ينطفأالليد المتصل بالطرف RB0 .
إنقر نقرا مزدوجا على النموذج تظهر لك نافذة كود البرنامج معدة لكتابة البرنامج الفرعى للنموذج .
انقر نقرا مزدوجا على أى أداة ظهر لك المكان المعد لكتابة البرنامج الفرعى الخاص به .
الشكل التالى يبين الشكل النهائى :












جهة الميكروكونترولر :



كود:
unsigned short value ;

void main() {

TRISB=0X00;
PORTB=0;

UART1_Init(19200);     // Initialize USART module
                                   // (8 bit, 19200 baud rate, no parity bit…)

while (1) {
        if (UART1_Data_Ready()) {  // If data has been received
    value = UART1_Read();     // read it
     PORTB=value;
 }// end if
           }//end while
}//end main










لتجربة هذا البرنامج :

يتم تحميل برنامج "جهة الميكروكونترولر " على الميكروكونترولر المستهدف ثم نقوم بالأتى :

أولا يتم توصيل لوحة الربط بالمنفذ RS232 وتوصيل القدرة للوحة .
بعد ذلك إذهب إلى شريط القوائم واختار القائمة "Run" واختار
"Start with full compile" فيتم ترجمة البرنامج ويكون جاهز للتشغيل .

عندما تنقر على الزر "LED ON" فإن الدايود المشع للضوء (الليد) LED المتصل بالطرف RB0 يضىء ليمثل حالة التشغيل .
عندما تنقر على الزر "LED OFF" فإن الدايود المشع للضوء (الليد) LED المتصل بالطرف RB0 ينطفأ ليمثل حالة التبطيل .
إذا شاهدت ذلك عندئذ تكون نجحت فى بناء تطبيق لبرنامج يقوم بإخبار الجهاز عما يفعلة ويمكن مراقبة حالته .
رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)

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

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة



الساعة الآن 08:10 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
الحقوق محفوظة لمنتديات الاليكترونيات العصرية

Security team

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77