الميكروكونترولر من البداية وحتى الاحتراف

وهذا ما تعلمته من استاذى الكبير المهندس عبد البارى عقل

مقدمة :

1- ما هو الكمبيوتر (الحاسوب)؟ Computer
يتكون الكمبيوتر من الأجهزة ( المكونات المادية ) hardware والبرمجيات software.
وتتألف المكونات المادية للحاسوب من أربعة أنواع من المكونات وهي :


*المعالج :Processor
المعالج هو المسؤول عن أداء جميع العمليات الحسابية وتنسيق استخدام موارد الحاسوب . وقد يحتوى نظام حاسوبي على معالج واحد أو على عدة معالجات. وهناك معالج يمكن أن يؤدي العمليات الحسابية للأغراض العامة واخر للعمليات الحسابية للاغراض الخاصة . مثل تقديم الرسوم البيانية والطباعة ، أو لتجهيز الشبكات ( التشبيك ).
**اجهزة الدخل (المدخلات ) : Input devices
يصمم الكمبيوتر لتنفيذ البرامج التى تتعامل مع البيانات (المعطيات ) data.واجهزة الدخل ضرورية لتوصيل بيانات الدخل الى البرنامج المطلوب تنفيذه ويتم معالجتها فى الحاسب . هناك طائفة واسعة من أجهزة المدخلات مثل : لوحات المفاتيح keyboards ، والماسحات الضوئية scanners ، وقارئة الشفرة الخطية bar code readers ، وأجهزة الاستشعار ( الحساسات ) sensors ، وهلم جرا.


***اجهزة الخروج ( الاخراج )Output devices
لا يهم إذا كان المستخدم يستعمل الحاسوب للقيام ببعض العمليات الحساببية أو للحصول على معلومات من شبكة الإنترنت أو قاعدة بيانات ، النتائج النهائية يتم عرضها و / أو طباعتها على الورق حتى يتسنى للمستخدم مشاهدتها.هناك العديد من الوسائل والاجهزةالتي يمكن استخدامها لعرض المعلومات : كالشاشات العادية و المسطحة ، واجهزة الرض من نوع seven-segment والطابعات ، والدايودات المشعة للضوء LEDsوغيرها.
****اجهزة الذاكرة( التذكر ) : Memory devices
لكى يتم تنفيذ البرنامج ولكى تعالج البيانات يجب ان تخزن فى اجهزة ذاكرة ( تذكر )بحيث يستطيع المعالج الوصول اليها بسرعة .


*المعالج : Processor
يسمى المعالج أيضا وحدة المعالجة المركزية(CPU) .ويتكون المعالج على الاقل من العناصر الثلاثة التالية :
*السجلات :Registers
السجل هو موقع التخزين داخل وحدة المعالجة المركزية.وهو يستخدم للاحتفاظ و / او عنونة الذاكرة أثناء تنفيذ التعليمات . ولان السجل قريب للغاية من وحدة المعالجة المركزية فانه يوفر وصول سريع إلى المعاملات operands اللازمة لتنفيذ البرنامج . عدد السجلات تختلف من معالج إلى معالج اخر .


**وحدة الحساب والمنطق Arithmetic logic unit (ALU)
تؤدي وحدة الحساب والمنطق كل العمليات الحسابية والمنطقية للمعالج . تستقبل وحدة الحساب والمنطق البيانات من الذاكرة ، وتقوم باجراء العمليات عليها ، وإذا اقتضى الأمر ، تعود لتكتب النتيجة فى الذاكرة.
يستطيع الحاسوب العملاق اليوم أداء تريليونات العمليات في الثانية الواحدة.إن وحدة الحساب والمنطق والسجلات معا يعرفان بانهما ممر(طريق) البيانات للمعالج.


***وحدة التحكم Control unit:
تحتوى وحدة التحكم على العتاد hardwareلمنطق التعليمات . ووحدة التحكم تفك الشفرة
( تترجم ) وتراقب ( تتابع ) تنفيذ التعليمات .
وحدة التحكم أيضا تقوم بدور الحكم( الوسيط) عندما تتنافس مختلف اجزاء الحاسب موارد
( امكانات ) وحدة المعالجة المركزية.
انشطة ( اعمال ) وحدة المعالجة المركزية تعمل متزامنة من قبل ساعة النظام

وحدة التحكم يوجد بها مسجل يسمى عداد البرنامج (PC) يحافظ على تتبع عنوان التعليمة التالية فى التنفيذ .
اثناء تنفيذ البرنامج قد يحدث فائض overflow او حمل carry من عملية الجمع او استعارة او استدانة او سلف borrow فى عملية الطرح وما إلى ذلك حيث يقوم النظام بالاشارة اليها ( بالعلام عليها ) flagged وتخزن فى مسجل يسمى مسجل الحالة status register .
والاعلام الناتجة تستخدم بواسطة المبرمج للتحكم فى سير البرنامج واتخاذ القرار .
system clock.

المعالجات الدقيقة( الصغيرة )Microprocessor
ادى تقدم تكنولوجيا أشباه الموصلات الى امكانية تجميع كل مكونات ( وحدات ) المعالج فى دائرة متكاملة واحدة (وتسمى أيضا رقاقة) والمعالج الصغير هو معالج مجمع فى دائرة واحدة .
والكومبيوتر الصغير microcomputer هو كومبيوتر يستخدم المعالج الصغير كوحدة معالجة مركزية .والكمبيوتر الشخصى pc هو كمبيوتر صغير .
وتعرف المعالجات على حسب عددد البتات او الخانات bits ( وهى اصغر وحدة تعامل فى الانظمة الرقمية )التى يمكن ان يتعامل معها ( يعالجها ) فى عملية واحدة . فهناك المعالج الصغير ذو 4 بت واخر 8 بت وثالث 16 بت ورابع 32 بت وخامس 64 بت. وهذا الرقم هو طول الكلمة word( او طول مسار البيانات data path length ) . وحاليا فان المعالجات الدقيقةالأكثر استعمالا هي ذو 8 بت .


المتحكم الدقيق ( الصغير ) الميكروكنترولرMicrocontrollers ( MCU)

الميكروكنترولر هو كومبيوتر تم تنفيذه فى دائرة متكاملة مفردة ( واحدة ) و بالاضافة الى المكونات الموجودة بالمعالج الصغير ( الميكروبروسسور ) فان الميكروكونترولر يحتوى ايضا على بعض من المكونات المحيطية ( الطرفية ) :

ذاكرات
مؤقتات
معدلات عرض النبضة (PWM)
محولات من تشابهى الى رقمى (ADC)
محولات من رقمى الى تشابهى (DAC)
وسائل ربط متوازى للدخل و الخرج Parallel I/O interface
وسائل ربط للاتصال المتوالى الغير متزامن (UART)
وسائل الربط للاتصال المتوالى المتزامن (SPI, 12C, and CAN)
متحكمات ذاكرات الوصول المباشر للذاكرة (DMA)
دوائر الربط مع مكونات الذاكرة
برامج التصحيح لدعم الأجهزة( العتاد )

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