الميكروكنترولر وتصميم المشاريع بالمتحكمات الدقيقة


الميكروكنترولر



عن الميكروكنترولر

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

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


تطبيقات واستخدامات الميكروكنترولر

تطبيقات لإستخدام الميكروكنترولريستخدم الميكروكنترولر في المنتجات او الاجهزة التي يتم التحكم فيها اتوماتيكياً وتوجد الكثير من المنتجات والاجهزة التي تجعل استخدامنا للميكروكنترولر يومياً بدون ان ندرك ذلك، اذا كان ذلك في المنزل او العمل:
المنزل: التلفزيون، مشغل دي في دي، الهاتف، جهاز فاكس، الهواتف الخلوية، أنظمة الأمن، كاميرا، آلة الخياطة، آلة موسيقية، ممارسة آلة، ألعاب الفيديو، الكمبيوتر، المايكرويف.
المكتب: أجهزة الكمبيوتر والطابعات والهواتف وأجهزة الفاكس وأنظمة الأمن والسيارة.








التكوين الداخلي للميكروكنترولر


  • CPU: وهي إختصاراً لـ Center Processor Unit ومن إسمها فهي وحدة التحكم والمراقبة جميع البيانات داخل الميكروكنترولر. والمبرمج والمستخدم لا يستطيع التاثير او التعديل على عملها. وهي تتكون من وحدات فرعية اصغر ومن اهمها:
    • Instruction Decoder: هو جزئ من الالكترونيات يقوم بالتعرف على تعليمات البرنامج وتشغيل باقي الدوائر بناءاً على ذلك.
    • ALU: وهي اختصاراً إلى Arithmetic Logical Unit وهي المسئولة عن عمليات المعالجة للبيانات داخل الميكروكنترولر، قد تكون هذه العمليات عمليات حسابية كالـ ( + , - , % , * ) او عمليات منتطقية كالـ ( OR , NOT , AND , ... إلخ ).
    • Accumulator:  هو سجيل مرتبطأ بعمل ALU  ويستخدم لتخزين جميع البيانات التي توجب تنفيذ بعض العمليات ( إضافة و تحول ..إلخ). كما يتم فيه تخزين النتائج الجاهزة لإستخدمها في المعالجات الاضافية. ويوجد سجيل يسمى Status Register يرتبط ارتباطاً وثيقاً بال accumulator ووظيفته تبيين في اي وقت من الاوقات وضع العدد المخزن في accumulator (اكبر من او اصغر من الصفر).
كيف يعمل الميكروكنترولر
كيف يعمل الميكروكنترولر
  • SERs: وهي اختصار Special Function Registers وهي جزئ داخل قسم Memory في الميكروكنترولر وهو مجموعة من السجلات المسئولة عن عمل كلاً من ADC Interface, Serial Interface ,I/O Ports, PWM بالشكل المطلوب. وكل سجل بيكون متصل مع جزئ من اجزاء الميكروكنترولر لتنفيذ العمليات. والغرض منها محدد مسبقاً من قبل الشركة المصنعة ولا يمكن تغييره او التعديل عليه.
  • Memory
    • ROM: و ROM هي اختصاراً لـ Read Only Memory حيث يتم تخزين فيها الكود او البرنامج وتقوم بحفظ البرنامج بشكل دائم حتى تقوم انت بتغييره او التعديل عليه. وتقوم بحفظ البرنامج والداتا حتى في حالة قطع التيار عن الميكروكنترولر،وحجم البرنامج الذي يمكن كتابته يعتمد على حجم هذا الذاكرة، وROM يوجد منها من يكون داخل الميكروكنترولر او تستطيع اضافة رقاقة ROM خارجية اكبر مساحة وتعتمد على نوع الميكروكنترولر والنوعين من ROM لهم سلبيات.       ↫ فإذا قمت بإضافة رقاقة ROM  خارجية ، الميكروكنترولر سوف تكون قيمته ارخص وتستطيع اضافة برنامج اكبر؛ ولكن في نفس الوقت لكي تقوم بإضافة روم خاجية فإنك سوف تقوم بتخصيص عدد من اطراف الميكروكنترولر pins لها وبذلك تقييد بعدد من pins  الباقية لتنفيذ مشروعك.       ↫ واما اذا كانت الروم داخلية فإنها ترفع من قيمة الميكروكنترولر ومساحتها بتكون صغيرة ولكن بتترك لك اطراف الميكروكنترولر بدون تخصيص اطراف لها. وحجم الروم عادة بيتراوح بين 512B إلى 64KB.
الذاكرة في الميكروكنترولر
    • RAM: وهي اختصار Random Access Memory تقوم بعملية تخزين مؤقت للبيانات Data وتخزين النتائج التي تم إنشائها واستخدامها اثناء عمل الميكروكنترولر. ويتم مسح محتويات هذه الذاكرة بمجرد انقطاع التيار عن الميكروكنترولر. وحجم ذاكرة RAM تصل إلى بضعة كيلوبايت.
    • EEPROM: وهي اختصار Electrically Erasable Programmable وهي نوع من انواع الذاكرة ليست موجودة في كل الميكروكنترولر وقد يتم تغيير محتوايتها اثناء تنفيذ البرنامج شبه عمل RAM، ولكن يحفظ فيها البيانات حتى بعد قطع التيار عن الميكروكنترولر مثل ذاكرة ROM. ويقوم عملها غالباً على تخزين القيم والتي تم انشاؤها واستخدامها اثناء عمل المتحكم الدقيق مثل ( قيم المعايرة ,الرموز وقيم العد .. الخ) والتي يحتاج الميكروكنترولر حفظها حتى بعد قطع التيار عنه.    ومن عيوب هذه الذاكرة ان عملية البرمجة بطيئة نسبياً وتقاس بالميلي ثانية.
  • Program Counter: هو المحرك لتفيذ خطوات البرنامج ويشير إلى عنوان الذاكرة Address التي تحتوي على التعليمات التالية للتفيذ. وبعد كل عملية تنفيذ لتعليمات، تزيد قيمة العداد بمقدار واحد. لهذا السبب ينفذ البرنامج تعليمات او امر واحد في كل مرة كما مكتوب البرنامج.     ومع ذلك فإن قيمة program counter قد تتغير في اي وقت، والتي تسبب قفزة إلى موضع جديد في الذاكرة. وبهذه الطريقة يتم تنفيذ الاوامر والتعليمات الفرعية.
  • BUS: هي توصيلات بين اجزاء الميكروكنترولر داخلياً لتداول ونقل البيانات ومنها: 
    • Address bus
    • Data bus
    • Control Bus
  • A / D Converter
    • ADC Interface: وهي اختصاراً إلى Analog to Digital Converter كما ذكرنا من قبل بإن الميكروكنترولر يعمل بالنظام الرقمي ( input / output قيم ثابته High=5V و Low=0V . لذلك يوجد جزئ ADC داخل الميكروكنترولر للتقوم بتحويل الإشارة التماثلية Analog إلى إشارة رقمية Digital.
  • Serial Interface: هو الجزئ المسئول عن إتصال الميكروكنترولر بالكومبيوتر وتنفيذ عملية برمجة المتحكم بالشكل المطلوب.
  • I/O Port: هو الجزئ المسئول عن اتصال الميكروكنترولر بالعالم الخارجي. وتحديد ماإذا كانت الاطراف Output, Input وطبقاً للرنامج الذي قمت ببرمجة الميكرو كنترولر عليه.
  • Power Supply: يوجد جزئ داخل الميكروكنترولر جزء خاص بالتغذية وحماية الميكروكنترولر من الجهد. ومن عمل هذا القسم هو حماية الميكروكنترولر من إنخفاض الجهد او voltage drop.
    • Brown out: حيث تقوم دائرة Brown out بقسم Power Supply بالميكروكنترولر بعمل Reset لإجزاء الميكروكنترولر للحفاظ على المدى المسموح لجهد التغذية الداخل للميكروكنترولر. 
    • Reset PIN: والجزء الخاص بـ Reset PIN المسئول عن إعادة تشغيل الميكروكنترولر وإعادة تنفيذ البرنامج من بدايته.
حماية الميكروكنترولر من انخفاض الجهد Brown out
  • Oscillator: هو قسم او جزء داخل الميكروكنترولر والمسئول عن توليد النبضات المطلوبة والتي تقوم بتشغيل اجزاء الميكروكنترولر بشكل توافقي ومتزامن. ويستخدم مع oscillator هي المكون Quartz-Crystal او Ceramics resonator لتثبيت التردد ونضيفه خارجياً مع توصيلات المتحكم.   في بعض الحالات من الممكن عدم استخدام عنصر لتثبيت التردد كما في RC oscillator. من المهم ان نقول بان تعليمات البرنامج لا يتم تنفيذها بالمعدل الذي فرضه المذبذب نفسه، ولكن عدة مرات أبطأ.     وتحدث لان كل تعليمات او امر يتم تفيذه في مجموعة من الخطوات.  وفي بعض المايكروكنترولر تحتاج عملية تنفيذ التعليمات نفس عدد الدورات، وفي حين انها تكون مختلفة في انواع مايكروكنترولر اخرى. فقاً لذلك فإنه إذا استخدم quartz crystal بتردد 20MHZ ،فالوقت المستغرق لتنفيذ تعليمات لن يكون 5nS ولكن سوف يكون 200, 400 او 800nS وذلك يعتمد على نوع المايكروكنترولر.




كيف يعمل الميكروكنترولر

على الرغم من ان هناك عدد كبير من انواع المتحكمات الدقيقة والعديد من البرامج التي تم انشائها خصيصاً لها، إلا ان كل الميكروكنترولر لديها العديد من الإشياء المشتركة بينها. وطريقة عمل الميكروكنترولر كلها واحدة بين انواعها المختلفة وكما موضح كالتالي: 
  1. في حالة ان Power Supply لايعمل (turn off) فإن اجزاء ومكونات الميكروكنترولر لا تعمل ايضاً والبرنامج كما هو مثبت داخله.
  2. في حالة ان Power Supply يعمل (turn ON) فإن اجزاء ومكونات الميكروكنترولر تبدأ بالعمل بسرعة عالية. تُبقي وحدة التحكم المنطقية (CLU) كل شئ تحت السيطرة وتقوم بتعطيل المكونات والاجزاء حتى يبدأ Quartz Crystal بالعمل اولاً، وهذه العملية تحدث في الملي الثانية الاولى.
  3. بعد وصول جهد Power Supply إلى اقصى مستوى، ويستقر Oscillator Frequency في عمله. وتبداً SFRs بعملها. يتم تكوين Pins كمدخلات input.
  4. حالة Program Counter قيمته صفر. يتم ارسال التعليمات من هذا العنوان إلى المسئول عن فك ترميز التعليمات وهو Instruction Decoder والذي يقوم بالتعرف عليها ثم يقوم بتنفيذ هذه التعليمات.
  5. وتزداد قيمة Program Counter بمقدار 1 وتكرار العملية برمتها عدة ملايين مرة في الثاية الواحدة.



أنواع الميكروكتنرولر

تنوعت رقاقة الميكروكنترولر لتصنيعه من قبل شركات عدة وبمواصفات وقيم مختلفة. ومن الشركات التي قامت بتصميم وتطوير المايكروكنترولر:

أنواع الميكروكنترولر من حيث الشركة المصنعة:

  • Intel
  • Motorola
  • Microchip "pic"
  • Hitachi
  • Atmel
  • National
  • Toshiba
  •  Zilog
  • Texas Instruments
أنواع الميكروكنترولر من حيث الاسم:

  • 8051 Microcontrollers
  • AVR Microcontrollers
  • PIC Microcontrollers

ويندرج تحت كل نوع من انواع الميكروكنترولر عائلة باسماء مشابهة ولكن مختلفة في المواصفات والامكانيات فمثلاً النوع 8051  وله عائلة باسماء؛ (89s52 ,89s51 ,89c52 ,89c51 ,89v51 ...إلخ)  . وترى ايضاً عائلة AVR من تصنيع شركة اتميل بإسماء؛ (Atmega16 ,Atmega8 .Atmega32 ...إلخ). اما النوع الاكثر شهرة بين الطلبة ومهندسي الالكترونيات هو PIC microcontroller وهو من انتاج شركة Microchip وتندرج تحته عائله باسماء؛ (pic10f-- ,pic12f-- ,pic16f .. إلخ).
ويتنوع الميكروكنترولر بناءاً على تنوع في الامكانيات والقيم كـ قيمة bit ماإذا كانت (bit-8 ,bit-16 ,bit-32)، وايضاً يتنوع بناءاً على حجم كلاً من (RAM وROM) ،وعدد انواع I/O ports.


البرامج ولغة C للبرمجة





كتب عن الميكروكنترولر


 |  |  
بواسطة: ف.د.ف معرض الازهر للطبيقات الهندسية - 687 صفحة - 34MB - عربي

 |  |  
بواسطة: حمدي سلطان - 272 صفحة - 31MB - عربي



دورات تعليمية




دورة الميكروكنترولر

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

المحاضر: حمدي سلطان



تصميم دوائر ومشاريع




وقريباً، سوف نقوم بتوفير محتوى عربي عملي لهذه المشاريع مع العلم انه يمكنك  التعديل على صفحات الموقع ويمكن  اضافة مشاريعك على الموقع.
مصادر تم الاستعانة بها: [1] [2] [3]


الاسم

اجهزة ومعدات,6,ادوات المعمل الالكتروني,11,اساسيات الكهرباء والالكترونيات,11,اسلحة حربية,6,الة حاسبة الكترونية,9,الدورات التعليمية,8,الطاقة الشمسية,3,برنامج,10,تكنولوجيا,22,حساسات ومستكشفات,17,دائرة الكترونية,67,دوائر ارسال واستقبال,2,دوائر الانذار والامان,22,دوائر التايمر 555,20,دوائر الشحن والتغذية,19,دوائر الصوت,8,دوائر الضوء,5,دوائر الفحص والتشغيل,13,دوائر تكبير ومضاعفة الجهد,2,دوائر تماثلية,66,دوائر LM317,2,دوائر Op-Amp,7,دورة الاتصالات اللاسلكية,7,دورة الاردوينو,14,دورة الاردوينو وبرنامج اللابفيو,7,دورة الالكترونيات العملية,44,دورة الانظمة المدمجة,32,دورة الميكروكنترولر,27,دورة متحكمات AVR وبرمجتها,19,روبوت,8,صيانة,2,طائرة,6,فيديو تكنولوجيا,3,كتاب,29,كتاب بالإنجليزية,5,كتاب بالعربية,24,كورس اساسيات الالكترونيات بالانجليزية,40,مقالات تعليمية,17,ملفات المحاضرين,5,منظمات الجهد,9,منهج سعودي,1,مواضيع الزوار,2,هندسة الكهرباء,1,
rtl
static_page
الكترونيك بابل . هندسة الالكترونيات: الميكروكنترولر وتصميم المشاريع بالمتحكمات الدقيقة
الميكروكنترولر وتصميم المشاريع بالمتحكمات الدقيقة
عن الميكروكنترولر والمتحكمات الدقيقة والتكوين الداخلي له وكيف يعمل والتعرف على انواعه وتوفير مجموعة من الدورات والكتب والمشاريع عن الميكروكنترولر
الكترونيك بابل . هندسة الالكترونيات
http://www.electronicbub.com/p/microcontroller.html
http://www.electronicbub.com/
http://www.electronicbub.com/
http://www.electronicbub.com/p/microcontroller.html
true
8451621482021913266
UTF-8
تحميل كل المقالات لا توجد اي مقالات مشاهدة الكل اقراء المزيد الرد حذف الرد حذف بواسطة الرئيسية الصفحات المقالات مشاهدة الكل مواضيع مشابهة.. القسم الارشيف نتائج بحث جميع المقلات لايوجد اي مقلات مشابه مع البحث رجوع للرئيسية الاحد الاثنين الثلاثاء الاربعاء الخميس الجمعة السبت الاحد الاثنين الثلاثاء الاربعاء الخميس الجمعة السبت يناير فبراير مارس ابريل مايو يونيو يوليو أغسطس أغسطس اكتوبر اكتوبر ديسمبر يناير فبراير مارس ابريل مايو يونيو يوليو أغسطس سبتمبر اكتوبر نوفمبر ديسمبر الان منذ دقيقة واحدة $$1$$ minutes ago منذ ساعة واحدة $$1$$ hours ago الامس $$1$$ days ago $$1$$ weeks ago منذ اكثر من 5 اسابيع المتابعين تابعنا محتوى مميز لكي تستطيع الغاء القفل, شارك نسخ كل الكود تظليل كل الكود تم نسخ كل الكود Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy