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

   

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,832
نشاط [ F.Abdelaziz ]
قوة السمعة:
قديم 13-07-2013, 01:51 AM المشاركة 33   
افتراضي



بعض قواعد لغة Basic :
الأمر Output :
الصيغة :
كود:
Output Port or Port . Pin

الغرض :
جعل "منفذ" Port، أو "طرف بمنفذ" Port.Pin كمخرج .
العوامل :
Port : المنفذ .
Port.Pin : طرف بمنفذ .

مثال :

كود:
Output PORTA.0 ' Make bit-0 of PortA an output Output PORTA ' Make all of PortA an output
ملاحظة :
الطريقة البديلة لجعل طرف معين كخرج تتم عن طريق العديل المباشر لسجل TRIS كما يلى :

كود:
TRISB.0 = 0 ' Set PortB, bit-0 to an output TRISB = %00000000 ' Set all of PortB to outputs
فى المثال السابق : تحديد بت بالسجل TRIS بصفر (0) تجعل الطرف مخرج ، فى حين تحديد بت السجل TRIS بواحد (1) تجعل الطرف مدخل .

الأمر Input :
الصيغة :

كود:
Input Port . Pin

الغرض :
جعلمنفذ معين أو طرف معين بمنفذ كمدخل input.
العوامل :
Port أو Port.pin : يجب أن يكون منفذ أو طرف بمنفذ .
مثال :

كود:
Input PORTA.0 ' Make bit-0 of PortA an input Input PORTA ' Make all of PortA an input
ملاحظة :
الطريقة البديلة لجعل طرف معين كمدخل تتم عن طريق التعديل المباشر بالسجل TRIS كما يلى :

كود:
TRISB.0 = 1 ' Set PortB, bit-0 to an input TRISB = %11111111 ' Set all of PortB to inputs

فى المثال السابق : تحديد بت بالسجل TRIS بصفر (0) تجعل الطرف مخرج ، فى حين تحديد بت السجل TRIS بواحد (1) تجعل الطرف مدخل .

أمر "البحث" LookUp
الصيغة :
كود:
Variable = LookUp Index, [ Constant {, Constant…etc } ]
الغرض :
البحث عن قيمة من قائمة مفهرسة (مرتبة) حيث يتم تحديدها عن طريق "رقم الفهرس" index فى هذه القائمة وتخزينها فى المتغير. إذا تجاوز رقم الفهرس للقيمة المطلوبة أعلى قيمة فهرس بالقائمة المفهرسة فإن المتغير سوف يظل بدون تغيير .
العوامل :
Variable : قد يكون ثابت أو متغير أو تعبير . وهو المكان الذى سوف يتم فيه تخزين القيمة التى تم استردادها .
Index : قد يكون ثابت أو متغير . وهو "رقم فهرس" العنصر للقيمة المطلوب استردادها من القائمة .
Constant(s): قد يكون أى قيمة 8-bit(0-255) . يمكن وضع 255 قيمة كحد أقصى بين الأقواس المربعة .




مثال :
كود:
Var1 = LookUp Index, [10, 20, 30]

ملاحظة:
رقم الفهرس index يبدأ بالقيمة صفر "0" ، إذا كان المطلوب أول قيمة (10) ، عندئذ فإن رقم الفهرس يتم تحميله بالصفر (0) ، وللحصول على القيمة الثانية (20) يتم تحميل رقم الفهرس بالقيمة واحد (1) وهكذا .


مشروع بسيط : عرض حرف ساكن على ليد ماتريكس 8X8
الغرض :
استخدام مصفوفة ليدات 8X8 ، مسح المنفذ ، وأمر الإزاحة لليسار "<<" فى إنشاء حرف "P" .

البرنامج :

كود:
Device 16F877 XTAL 4 Output PORTD Output PORTB Dim column As Byte start: PORTB=$01 For column =0 To 7 PORTD=LookUp column , [$FF,$FF,$8f,$77,$77,$00,$00,$FF] DelayMS 1 PORTB=PORTB << 1 Next GoTo start End


اعلانات

الصورة الرمزية assed
assed
:: عضو فضي ::
تاريخ التسجيل: Jul 2014
الدولة: العراق - بغداد
المشاركات: 1,034
نشاط [ assed ]
قوة السمعة:
قديم 04-10-2014, 11:30 PM المشاركة 34   
افتراضي


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

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


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