نبذه عن الميكرو كنترولر
في الآونة الأخيرة تم تطوير شرائح الكترونية متكاملة إلى درجة كبيرة من التعقيد حيث أننا حصلنا على ما يسمى بالمعالج المصغر micro processor وهو عبارة عن شريحة إلكترونية متكاملة لا فائدة منها بدون برنامج يخزن في ذاكرتها تقوم بقراءته وتنفيذ تعليماته تباعاً ولكن في المعالجات المصغرة تكمن المشكلة في ربط الذواكر مع المعالج بالإضافة إلى ربط مصدر نبضات الساعة معه حيث تظهر المشاكل في المرحلة التي تلي عملية التصميم وهي تنفيذ البرنامج المخدع للعملية التكنولوجية فقد تحدث بعض المشاكل في قراءة الذاكرة وبالتالي تنفيذ خاطئ للبرنامج وبالتالي قد نحصل على نتائج غير متوقعة من هذا التجهيز الذي قمنا بتصميمه وبناءه. لذلك ظهرت شرائح إلكترونية تدعى المتحكمات المصغرة micro controller تحتوي في داخلها على كل ما يحتاجه المعالج المصغر كي يعمل بوثوقية أعلى فهي تحتوي على :
- وحدة معالجة مركزية CPU : الذي يقوم بعملية تنفيذ البرنامج عن طريق جلب التعليمة من ذاكرة البرنامج وتنفيذ هذه التعليمة (جمع، طرح، عمليات المقارنة.....) وكذلك الكتابة إلى ذاكرة المعطيات والتأثير على الأعلام لو لزم الأمر.
- ذاكرة مخصصة للبرنامج BUILD IN : يخزن فيها التعليمات بعد تحويلها بواسطة برنامج خاص إلى صيغة HEX ولها ممر خاص بها من أجل عنونة حجراتها الذاكرية.
- ذاكرة معطيات BUILD IN : خاصة بتخزين قيم تهمها أثناء تنفيذ البرنامج حيث يقوم المعالج المركزي بقراءة هذه الحجرات لاستخدامها حسب ما يمليه عليه البرنامج كما يقوم بالكتابة إليها وكذلك الأمر بالنسبة لها فلها ممر خاص بعنونة حجراتها الذاكرية.
- نوافذ الدخل والخرج Build in Input / Output Ports : وهي عبارة عن أقطاب خاصة بالتحكم يمكن تعين وظيفتها كمداخل أو مخارج من خلال البرمجة فإذا قمنا ببرمجتها على أنها مداخل تصبح بمثابة عيون للنظام لمراقبة المفاتيح أو الكباسات الموصولة عليها أو غير ذلك من المعطيات التي يمكن وصلها إلى دخل المتحكم. وإذا برمجناها على أنها مخارج تصبح قادرة على تمرير الأوامر إلى الوسط الخارجي (أي إلى منفذات الأوامر) تمرر إما الصفر أو الواحد المنطقي (أرضي أو Vcc) ومن الممكن أن يكون للقطب الواحد أكثر من وظيفة حسب نوع المتحكم. وهذه من مزايا القوة الرائعة التي يتمتع بها المتحكم المصغر حيث ألغى الحاجة إلى استخدام شرائح خارجية خاصة بالدخل والخرج PIO (peripherals input output).
- مؤقتات داخلية built in timer : وهذا من مزايا المتحكم القوية أيضاً يحتوي على مؤقت واحد أو أكثر حسب نوعه والشركة المصنعة له وهو عبارة عن مؤقت قابل للبرمجة لاستخدامه في إجراء تزامن ما للأحداث التي تتم معالجتها (مثلاً أريد أن أفعل خرج لفترة معينة ثم أقوم بإطفاء هذا الخرج ثم تفعيل خرج آخر لفترة معينة أيضاً وهذا ما يتحقق معنا من خلال استثمار المؤقت الموجود في المتحكم لهكذا تطبيق.
- وحدات اتصالات تسلسلية UART : وهي عبارة عن طرفية موجودة ضمن المتحكم خاصة بمعالجة العمليات الاتصال مع العالم الخارجي (مثلاً حاسب أو متحكم آخر......)
- أقطاب خاصة بالمقاطعات : وظيفتها الرئيسية هي تحسس حدوث تغير للحالة المنطقية عليها لاستدعاء روتين خدمة مقاطعة خاص بها ومن الممكن أن تمكن هذه المقاطعة أو تلغي تمكنها برمجياً.
- مؤقت الحراسة watchdog timer : وهو عبارة عن مؤقت خاص بالمتحكم يقوم بمراقبة زمن تنفيذ التعليمات فإن تجاوزت الزمن المسموح به يقوم بتصفير المتحكم ويجبره على العودة لبداية البرنامج (يعطى إشارة تصفير للمتحكم)
هناك العديد من الشركات المصنعة للمتحكمات المصغرة نذكر منها على سبيل المثال :
Atmel، Microchip، Mitsubishi، Siemens، Motorola، Intel.
هذه المقالة من موسوعة ويكيبيديا
للطلاع علي باقي المقالة برجاء زيارة ويكيبيديا
تحياتي لكم أحمد علام
بارك الله فيك أخي في انتظار الدروس القادمة ان شاء الله
ردحذفباذن الله تعالي
حذفرائع 🤩
ردحذف