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

مشاهدة نتائج الإستفتاء: هل ترى أهمية لدورة تشرح لغة (mikroBasic) لبرمجة البيك ؟
موضوع فى غاية الأهمية و ضرورى جدا ... ... 1 23 95.83%
موضوع هام ولكن يوجد ما يكفى ... ... 2 1 4.17%
موضوع مكرر ولا داع لبذل المزيد من الجهد ... 3 0 0%
المصوتون: 24. أنت لم تصوت في هذا الإستفتاء

   

الصورة الرمزية wleed antar
wleed antar
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: القاهرة - مصر
المشاركات: 1,484
نشاط [ wleed antar ]
قوة السمعة:
قديم 05-03-2010, 01:21 AM المشاركة 25   
افتراضي



كل الشكر لك اخ وليد و واصل تقدمك
أنا ماشى كويس كدة ؟
كلامك بيطمنى . توكلنا على الله




السلام عليكم ورحمه الله وبركاته



شرح ممتاز
بارك الله فيك ورزقنا واياك الاخلاص فى القول والعمل
وجعل هذا العمل فى ميزان حسناتك
طمنتنى بعد أن شعرت أن الجميع انصرف فورا من هنا . ههههه
بارك الله لكم ، أهم شئ باتخيله وأنا باشرح كأنى باشرح لنفسى ومش فاهم وخلقى ضيق وماليش طولة بال على الإستيعاب ومستعجل على النتائج ، لكى أختار أفضل أسلوب أخاطب نفسى به . وبعد أن أكون راضى ومقتنع بالشرح . مادام خرج من القلب يصل للقلب .
-----------------------------------------------------------------


تطبيقات على التعليمات الماضية .

رأينا الطريقة الأساسية لكتابة البرنامج وأننا نكتب التعليمات بعد السطر
:main
وهذه الكلمة لن نغيرها فهى موضوعة من قبل البرنامج هناك بعض من التعليمات يجب كتابتها قبلها سنعرفها لاحقا .

كما رأينا فى الدرس الماضى أن خطوات إعداد المشروع كالآتى :-
==================================

1- نضع هدفا أو فكرة المشروع .

2- نحدد الخطة التى سيسير عليها البرنامج .

3- نترجم الخطة إلى لغة المايكرو بيزيك .

--------- نطبق عمليا سويا --------

بسم الله .

1- نضع هدفا أو فكرة المشروع :

نريد عمل مشروع عبارة عن مفتاح نضغط عليه يضئ الليد الأحمر وينطفئ بمجرد رفع يدنا من على المفتاح ، ومفتاح آخر نضغط عليه يضئ الليد الأخضر ثم ينطفئ بمجرد رفع اليد .

2- نحدد الخطة التى سيسر عليها البرنامج :

أول شئ نحدد أى من أطراف المتحكم سنستخدم لليد الأحمر وأي من الأطراف لليد الأخضر وأى من الأطراف للمفتاح الخاص بالليد الأحمر وأى من الأطراف سيكون للمفتاح الخاص بالليد الأخضر .

نعود لصورة المتحكم

سنختار مثلا الطرف RB7 لخرج الليد الأحمر
ونختار RB6 لخرج الليد الأخضر
ونختار RB5 لمفتاح الليد الأحمر
ونختار RB4 لمفتاح الليد الأخضر




بعد أن حددنا الأطراف وسجلنا ملاحظاتنا على ورقة خارجية وبأرقام الاطراف نفكر فى البرنامج قبل كتابة التعليمات .

الخطة أن يقوم المتحكم بمراقبة المفاتيح وبمجرد الضغط على إحدهما ينظر هل هذا خاص بالليد الأحمر فإذا كان الجواب نعم أضئ الليد الأحمر . ثم بغض النظر عن الجواب إذهب للمفتاح التالى وكرر نفس الشئ مع الليد الأخضر ثم عود للبداية .

3- نترجم مع كتابة الأوامر

TRISB.7 = 0
اجعل الطرف RB7 أطراف خرج فى مشروعنا هذا

TRISB.6 = 0
اجعل الطرف RB6 طرف خرج

TRISB.5 = 1
اجعل الطرف RB5 طرف دخول

TRISB.4 = 1
اجعل الطرف RB4 طرف دخل

بهذا نكون حددنا أطراف الدخل والخرج

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

لكننا عرفنا من التعليمات السابقة هذه كيف نستطيع تحديد طرف محدد بغض النظر عن حالة باقى البورت ( أى باقى الأطراف المسماه B )

يمكننا كتابة كلمة تدل على أن الطرف الخاص بالخانة 7 والطرف الخاص بالخانة 6 هم للخرج ، والطرف الخاص بالخانة 5 والطرف الخاص بالخانة 4 هما طرفان دخل كما يلى :


TRISB = %1100

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

RB7, RB6, RB5, RB4, RB3, RB2, RB1, RB0

فنحن نتعامل فى الإتجاه من اليمين إلى اليسار
فكتبنا 00110000%

والعلامة المئوية نكتبها فى حالة إرادتنا أن نكتب هذا الرقم بالنظام الثنائى .

لا تشغل بالك أخى بأنواع الأنظمة حاليا فبعضنا يعرفها والبعض من خلال سير الدورة بمشيئة الله .
المهم نحن كتبنا بها بغرض أن نضع تحت كل طرف رمز يعبر عن الطرف سيكون خرج أم دخل ! فنضع 1 إذا أردنا أن يكون الطرف دخل و نضع صفر عندما نريد طرف خرج .

كى لا يحدث خطأ سنكتب تحت كل خانة من الخانات الثمانية صفرا هكذا

RB7, RB6, RB5, RB4, RB3, RB2, RB1, RB0
0 0 0 0 1 1 0 0 %

وضعن صفرا تحت الطرف RB7 وتحت الطرف RB6 ليكون كلا منهما أطراف خرج ووضعنا رقم 1 أسفل كلا من RB5 , RB4 ليكون كلا منهما طرف دخل وباقى الأطراف لا تهمنا نتركها أى شئ وها أنا تركتها أصفار

وهذا هو الرقم الذى كتبناه 00110000%

إذن نكتب TRISB = %00110000
هكذا حددنا طرفان فقط للدخول وجعلنا باقى الأطراف خرج وليس الطرفان الخاصان بالليدان ! لا يهم باقى الأطراف .

إذن أول كلمة هنكتبها فى البرنامج هى :
TRISB = %00110000

طبعا عرفنا أين نكتبها ؟
أسفل العنوان
:main
بعدها نكتب البرنامج كما نريد فأهم نقطة هى تحديد أطراف المتحكم وقد انتهينا منها .

باقى البرنامج هكذا :-

PORTB.7 = PORTB.5
PORTB.6 = PORTB.4
GOTO main

انتهى البرنامج ! ! !





بسيط ؟

معظم البرامج هكذا أبسط من أى تعقيدات فى أذهاننا !

لم نضع التعليمة الخاصة بفعل الشرط والتعليمة الخاصة بجواب الشرط ولم نطلب من المتحكم أن يظل يراقب المفاتيح باستمرار وأن يذهب إلى الليد ويضيئه ويطفئه وكل هذا الكلام ، وقد لاحظنا أننا قلنا نريد أن نضع فكرة المشروع وخطة المشروع وتكلمنا كثير ثم قام البرنامج بتعليمتان فقط ثم تعليمة التكرار أى العودة ببساطة .

مامعنى التعليمة التالية :

PORTB.7 = PORTB.5

أى إجعل الطرف المسمى RB7 يساوى حالة الطرف RB5

سيكون طرف الليد الأحمر والذى اسمه RB7 يساوى حالة الطرف RB5 فعندما نضغط المفتاح المتصل بالطرف RB5 سيكون هذا الطرف عليه 5 فولت وبالتالى سيكون الطرف RB7 مثله وبمجرد رفع أيدينا عن المفتاح وأصبح صفر فولت سيكون RB7مثله أيضا

والتعليمة التالية لليد الأخضر نفس الشرح تماما

وتبقى التعليمة
:GOTO main
أى عود للبداية .

انتهى البرنامج .


صورة البرنامج بعد كتابته :

اضغط للتكبير


صورة البروتوس :

اضغط للتكبير




لتحميل ملف البروتوس والهيكس معا اضغط هنا .


يتتبع ،


التعديل الأخير تم بواسطة : wleed antar بتاريخ 12-06-2010 الساعة 07:19 PM
اعلانات

الصورة الرمزية wleed antar
wleed antar
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: القاهرة - مصر
المشاركات: 1,484
نشاط [ wleed antar ]
قوة السمعة:
قديم 05-03-2010, 01:31 AM المشاركة 26   
افتراضي


سلام عليكم

شكرا لك أخي العزيز wleed antar وباركة الله فيك

حقيقتا كنت تائه بين اللغات البرمجة فأما الأن سأحاول تعلم mikrobassic وهدا بفضلك أخي وشرحك أسهل والمفهوم أخي تابع بي هده طريقة
وجزاك الله كل خير
شكرا أخى لكلماتك وبارك الله لك ، فكنت أكتب المشاركة واستغرقت وقتا طويلا ولم أرى مشاركتك إلا بعدما رفعت مشاركتى ، هكذا عضوا جديدا إنضم لرابطة المشجعين . مرحبا بك


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

الصورة الرمزية Eng-Rayan
Eng-Rayan
:: عضو فضي ::
تاريخ التسجيل: Feb 2010
الدولة: تونس (بدرس بالأردن)
المشاركات: 454
نشاط [ Eng-Rayan ]
قوة السمعة:
قديم 05-03-2010, 02:36 AM المشاركة 27   
افتراضي


واصل تقدمك الاكثر من رائع


و انشاء الله يكون في ميزان حسناتك


robota
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: الخرطوم_السودان
المشاركات: 895
نشاط [ robota ]
قوة السمعة:
قديم 05-03-2010, 07:07 AM المشاركة 28   
افتراضي


بارك الله فيك استاذ وليد عمل اكثر من رائع وشرح متميز وكعادتك يتميز بالبساطة.
عندى تعليق على الكود الاخير لو وضعت تااخير زمنى بين كل امر مثلا (20ms) منعا للتذبذب او ما يسمى بال(De-bouncing).
ارجو لك التوفيق


الصورة الرمزية mohamedse
mohamedse
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2008
الدولة: مصر الأسكندرية
المشاركات: 631
نشاط [ mohamedse ]
قوة السمعة:
قديم 05-03-2010, 12:21 PM المشاركة 29   
افتراضي


السلام عليكم

شكرا لك أستاذ ماجد على هذا الشرح الميسر و المتميز
و بارك الله فيك و يسر لك أمورك و بارك لك فى وقتك


ابو عادل s
:: مهندس ::
تاريخ التسجيل: May 2009
المشاركات: 18
نشاط [ ابو عادل s ]
قوة السمعة:
قديم 06-03-2010, 11:27 AM المشاركة 30   
افتراضي


أخى الكريم لكل لغة مخترع ، وكل لغة كانت منذ فترة مختصة بمهام محدده ، فمثلا هناك لغة قديمة كانت تسمى لوجو تختص بالرسوم ، وهناك لغة كانت تسمى فورتران وكانت تختص بالرياضيات والمعادلات ، ولغة تسمى باسكل ولغة تسمى صاد و لغة السى ولغة البيزيك ، وهذه كانت لغات برمجة بعضها فرعى ذى اختصاص وبعضها كامل ، واللغات صممت بأنظمة واصطلاحات وأكواد خاصة بها ليتعامل المبرمج معها فى إعداد البرامج ثم تحويل هذة اللغة للأوامر إلى لغة الآلة فى النهاية ، والغرض هو برمجة كمبيوتر أو متكاملة أو أى شئ اعدت البرمجة من أجله ، فمثلا لغة التجميع يجب أن تكتب فيها الكثير من التفاصيل أكثر وبدقة أكثر ، أما لغة مثل لغة المايكرو بيزيك وبعض اللغات فهم لغات مستحدثة لتسهل على المبرمج وتقوم هى بالتحويل للغة الآلة فنجدها تسألك عن نوع المتحكم الذى ستستخدمه وبناءا على اختيارك لمتحكم محدد سيأتيك السؤال التالى يسألك عن نوع المذبذب المستخدم هل هو كريستالة أم مقاومة ومكثف أم كذا أم كذا وإذا كان المتحكم الذى قمت باختياره يحتوى على مذبذب داخلى كالذى شرحناه ستجد هذا المذبذب الداخلى مندرج فى قائمة الإختيار فى البرنامج ليتيح لك البرنامج اختيارها ، أما إذا كان المتحكم الذى اخترناه لا يحتوى على مذبذب داخلى سيقوم البرنامج بعدم ادراج هذا الخيار ضمن النافذة كى لا نختار هذا المذبذب الداخلى فيحدث أخطاء ، كذلك على حسب نوع المتحكم سيخبرك البرنامج فى النهاية بحجم البرنامج المكتوب وحجم ذاكرة المتحكم المتاحة والمشغولة كخدمات إضافية ، وتجد البرنامج به إماكنية عرض شاشة LCD أو شاشة جرافيك لتقوم بالرسم عليها بنفسك بالماوس ثم يقوم هو تلقائى بتحويل تلك الرسومات إلى أكواد مما يوفر عليك الكثير وكل هذا لتوفير وقتك وترك طاقة أكثر لك للإبداع والإبتكار ولا يضيع مجهودك فى أشياء لا داع لها ، إذن فمعظم برامج البيزيك متشابهة لكن اختلاف الشركات فالبيزيك بلس له خدمات خاصة ومزايا والمايكرو بيزيك له خدمات أخرى ومزايا أخرى وهكذا ليضمن لك الحرية فى البرمجة ويقترح عليك بعض الخدمات التى تتيح لك السرعة وتوفير الوقت لكثير من التحويلات ،
أما البيزيك والبيزيك بلس والفيجوال بيزيك والبيك بيزيك والمايكرو بيزيك فما هم إلا لغة واحدة لمخترع واحد لكن بأسلوب شركات مستحدثة بمصطلحات مختلفة قليلا واستخداماتهم قد تختلف عن بعضهم ، فنفس الشركة التى سميت البيزيك بكلمة المايكرو بيزيك هى نفس الشركة التى سميت السى بالمايكروسى وهكذا .

قد نقول لطفل فى المرحلة الإبتدائية لا تستخدم الآلة الحاسبة كى لايقف عقلك ، وهذا كلام صحيح لأن هذا الطفل يجب أن يعرف يجمع ويطرح ويقسم ، لكن فى مرحلة الإعدادى والثانوى قد تكون الآلة الحاسبة لا غنى عنها لأن الطالب الذى يقوم بعمل الكثير من المعادلات الرياضية ويطبق القوانين المختلفة لا نقول له إن الحاسبة ستوقف عقله ! لأن عقله يكون مشغول بمعادلات .

فمثلا نحن نكتب البرنامج ونفكر ونخطط ويظن البعض فى النهاية أن استخدامنا للمحول الموجود ضمن مزايا البرنامج ليعمل على التحويل بين أنظمة العد يوقف عقولنا ؟ لا طبعا بل سيوفر علينا الكثير من الوقت .
وبالتوفيق
الف شكر لك استاذ وليد


الصورة الرمزية wleed antar
wleed antar
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: القاهرة - مصر
المشاركات: 1,484
نشاط [ wleed antar ]
قوة السمعة:
قديم 11-03-2010, 05:09 AM المشاركة 31   
افتراضي


عفوا أخى وبالتوفيق ،

بارك الله فيك استاذ وليد عمل اكثر من رائع وشرح متميز وكعادتك يتميز بالبساطة.
عندى تعليق على الكود الاخير لو وضعت تااخير زمنى بين كل امر مثلا (20ms) منعا للتذبذب او ما يسمى بال(De-bouncing).
ارجو لك التوفيق
مرحبا بك أخى روبوتا وشكرا لكلماتك ولتعليقك ،

أخونا ربوتا يتكلم عن أمر تأخير زمنى بسيط لتلافى عيب بعض أنواع المفاتيح الضاغطة لأن المايكرو كنترولر يكون سريعا جدا فقد يحدث أثناء ضغط المفتاح ارتعاش أو سوء تلامس فى بداية الضغط وهذا وارد ، لكن فى برنامجنا فنحن نريد أن نركز على فكرة البرنامج الأساسية وحسب سير البرنامج يمكننا وضع تعليمة التأخير هذه كما يمكننا وضع أداة شرط لتأكيد عدم تكرار ضغط المفتاح كما يمكننا إضافة مكثف صغير على طرفى المفتاح لمنع الإرتعاش أو سوء التلامس وبذلك نكون تلافينا تعطيل البرنامج وهكذا يمكننا متابعة أكثر من طريقة ، وكل هذا بمشيئة الله سنتعرض له من خلال الكثير من المشاريع الجميلة القادمة .
---------------------------------------------

السلام عليكم

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

----------------------------------------------------




تطبيقات على الدرس الأول .
===============


تابع المداخل والمخارج :
=============

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

وكل حجرة متصل بها طرف من أطراف المتحكم .

فإذا تكلمنا عن نظام ديجيتال فإننا نعنى نظام ( رقمى ) وهنا يتعامل المتحكم مع دخل وخرج بالنظام الرقمى .

ما معنى دخل وخرج للمتحكم ؟
-------------------------------

نعرف أن الكمبيوتر الشخصى له وسائل إدخال ووسائل إخراج ،

فمثلا وسائل الإدخال تتمثل فى لوحة المفاتيح ( Key board ) أو الفأرة ( Mouse ) أو المايكروفون أو الكاميرا أو مدخلات أخرى مثل قلم ضوئى و حساس بصمة الإصبع وغير ذلك من ملحقات إدخال .

أما وسائل الإخراج فهى تتمثل فى شاشات العرض أو السماعات وما شابه من ملحقات تمكن الكمبيوتر من إخراج البيانات للمستخدم .

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

يمكننا وصل لوحة مفاتيح خاصة بالمتحكم وغير ذلك من حساسات حرارة و سرعات و حساسات ضوئية .

دخل المتحكم إما أن يكون تناظريا أو رقميا , تناظريا أى أن المتحكم يستشعر قيم مختلفة من إشارة الدخل فيشعر من بداية صفر فولت تدريجيا إلى خمسة فولت , أما الدخل الرقمى فإن المتحكم يشعر تقريبا بكل ما هو فوق 2,5 فولت كأنه خمسة فولت ولا يفرق معه القيمة هل هى 3 أم 4 أم 5 فولت فهو يعتبرها واحد فعال ويسمى دخل عالى أى كامل أما كل ما هو أقل من 2 فولت تقريبا فهو يعتبر صفر فولت سواء كان نصف فولت أو واحد فولت أو إثنان فولت فيعتبر دخل منخفض ( Low ) أى صفر أى لا يوجد دخل . وهذا ما يسمى بالتعامل بالنظام الرقمى , ونحن الذى يحدد هل نريد المتحكم يتعامل مع إشارات بالنظام الرقمى أم التناظرى .

نعود للحجرات أو ما يسمى بالسجلات أو بالبايت ، و البايت وحدة من وحدات قياس السعة للذاكرة والواحد بايت تساوى ثمانية بت والبت هى وحدة صغيرة جدا تستطيع أن تخزن رقم واحد فقط .

نؤكد على هذه المعلومة مرة ثانية للأهمية :

البايت يتكون من ثمانية بت حيث أن ( البايت ) أو ( byte ) وهى تتكون من ثمانية ( بت ) أى ( bit ) حيث أن البت لا تستطيع أن تخزن سوى رقم واحد فقط .

وهذا يعنى أن البايت يحتوى على ثمانية أرقام مخزنة ! فإنك إذا لم تخزن غير رقم مثلا فى ( البايت ) فإنك تكون بذلك شغلت ( بت ) وتركت سبعة بت ومعنى تركتهم أى أصبحوا أصفار أى فوارغ .

هل معنى ذلك أن البايت لا يمكن تحميله إلا برقم ثمانية فقط (8) ؟

لا طبعا فإننا نتعامل كما قلنا بالنظام الرقمى أى واحد أو صفر فقط . إذن نخزن فى البايت ثمانية من بين العنصران واحد أوصفر يعنى كل bit من الثمانية سنحملها بقيمة 1 أو صفر .

مثلا نحن قلنا فى أول برنامج كتبناه مثلا :-

portb = %11010001

أى إجعل المنفذ المسمى b الذى هو عبارة عن بايت كامل أى أنه يحتوى على ثمانية من ال bit اجعله محمل بالرقم المذكور 11010001 يعنى الثمانى بتات تمتلئ بهذه الوحايد والأصفار !

فنكون حصلنا على الترتيب من اليمين إلى اليسار أن البت الأولى مخزن بها 1
والبت الثانية مخزن بها صفر
والبت الثالثة مخزن بها صفر
وهكذا كما نرى ترتيب الرقم

وبما أن الرقم المكون من ثمانى خانات هذا لا يمكن أن يكون أى شئ غير 1 أو صفر فقط كى يتم تخزينه فى البتات فإننا بذلك نطلق عليه اسم الرقم الثنائى ،

إذن معنى كلمة أعداد ثنائية أو أرقام ثنائية جائت من استخدامها لعنصران اثنان فقط هما الواحد والصفر .

حسب ترتيب الأرقام المكونة من 1 أو صفر يكون الرقم العشرى الذى نعرفه فإننا فى حياتنا نتعامل مع أرقام تتكون من عشر أرقام بداية من الصفر ثم الواحد ثم إثنان ثم ثلاثة ثم ... ... ... إلى رقم تسعة ولذلك سميت بالعشرية لإستخدامها عشر عناصر

فإذا أردنا تخزين رقم مثل 145 داخل المتحكم فإننا يمكن أن نكتب هذه التعليمة :-

portb = 145

وسيقوم برنامجنا تلقائيا بتحويل هذا الرقم إلى عدد بالنظام الثنائى كى يتم تخزينه بما يناسب المتحكم .

أما المبرمج حضرتك تقوم بكتابة الرقم كما تحب بالنظام الثنائى أو بالنظام المعتاد والمعروف بالنظام العشرى أو بنظام آخر سبق ذكره وهو النظام السداسى عشر .

لكتابة رقم 145 بالنظام العشرى رأينا التعليمة السابقة أننا قمنا بكتابته مباشرا بعد علامة يساوى .

أما إن أردنا كتابة الرقم بالنظام الثنائى فيكتب هكذا :-

portb = %10010001

هكذا وضعنا علامة مئوية وهى من شروط برنامجنا لغة المايركوبيزيك لكى يفهم البرنامج أننا كتبنا هذا الرقم بالنظام الثنائى .

فمثلا الرقم 1001% مكتوب بالنظام الثنائى وهو يكافئ الرقم 9 فى النظام العشرى فإننا لو لم نضع العلامة المئوية لتعامل البرنامج معه كأنه ألف وواحد بالنظام العشرى .

أنا كمبرمج هل أحتاج معرفة هذه الأنظمة والتى قد يراها البعض أنها شئ معقد ؟

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

أما إن أردنا السهولة والسرعة فإننا نضغط فى البرنامج على هذا الخيار كما بالصورة :-


نختار كما فى الصورة مساعد التحويل ثم نكتب الرقم الذى معنا فى مكانه فإن كان الرقم معنا بالنظام العشرى فنكتبه فى مكان الرقم العشرى فيظهر لنا الرقم الموافق له بالنظام السداسى عشر وبالنظام الثنائى فى الحال ،

وإن كان الرقم معنا بالنظام الثنائى نكتبه فى مكانه المناسب فنرى التحويلات فى أماكنها ,

هذه ميزة من مزايا البرنامج لتحويل الرقم لتسهل عليك هذا الأمر .

لكن لا تشغل بالك أخى بهذه العمليات فهى ليست ضرورية إنما هى لخدمتك وليست هامة للبرنامج فالبرنامج يقبل منك الرقم بأى نظام تحبه أنت .

إذن لدينا سؤال : هل نحن بحاجة لأن نكتب فى البرنامج أحيانا بالنظام الثنائى مثلا أو بالنظام العشرى أو السداسى عشر ؟ ولماذا لم نكتفى بالكتابة بنظام واحد ؟

لسنا بحاجة لكل هذا بل يمكننا الكتابة بنظام واحد فقط كما تحب لكن أحيانا يريد بعضنا أن يقوم مثلا بعمل ليدات تتحرك بشكل معين فيحب أن يكتب ذلك كرسمة فقمنا فى أول برنامج لنا بكتابة التعليمات هكذا :-


الرقم الموجود هكذا :-

01010101
وهذا يعنى أن البت الأول من اليمين والذى يرمز له RB0 تم تخزين رقم بداخله ،

والبت الثانى طبعا من جهة اليمين والذى يرمز له بالرمز RB1 تم تخزين صفر بداخله وهكذا ،

ومعنى تخزين 1 به أى أن هذا الطرق الموجود على الرسمة الخاصة بالمتحكم تحت عنوان البت الأول RB0 والتى توافق على مخطط المتحكم الرجل رقم 6 انظر الرسمة التالية :-


وقلنا معنى أن هذا البت به 1 فإن الليد المتصل عليه سيضئ وأن البت التالى والذى هو يقع على الرجل رقم 7 به صفر أى أن الليد المتصل بها سيكون منطفئ وهكذا .

ومن هنا فإننا نجد أن استخدامنا للأرقام بالنظام الثنائى هنا أسهل لنا لتوضيح أى ليد نريد أن يضئ أو ينطفئ ولن نهتم هنا بالرقم بالنظام العشرى أو السداسى عشر ، لكننا فى بعض المواقف والعمليات الحسابية سنتعامل بالنظام العشرى ولم نكن بحاجة للنظام الثنائى وهكذا

يتتبع ،


التعديل الأخير تم بواسطة : wleed antar بتاريخ 11-03-2010 الساعة 05:36 AM

الصورة الرمزية mohamedse
mohamedse
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2008
الدولة: مصر الأسكندرية
المشاركات: 631
نشاط [ mohamedse ]
قوة السمعة:
قديم 11-03-2010, 11:51 AM المشاركة 32   
افتراضي


السلام عليكم

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



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