Social Icons

twitter facebook rss feed email

السبت، 8 ديسمبر 2012

مقدمة المتحكم الصغري

بسم الله الرحمن الرحيم

اللهم صل على محمد وآل محمد
السلام عليكم ورحمة الله وبركاته

أضع بين يديكم اليوم مقدمة للمتحكم الصغري للكاتب :مصطفى 36a2  من منتديات الفريق العربي للبرمجة ..


نبدأ على بركة الله تعالى في الحلقة الأول من دراسة المتحكم الصغري MicroController من نوع AVR ..
المتحكم الذي سندرسه اسمه ومعنى اسمه كما يلي : ATmega16
وتعني أن الشركة المصنعة هي AT ATMEL
وهو كنية المتحكم )يعني اسم عائلته ( وهناك عوائل أخرى مثل .. Megatiny
وتعني أن الذاكرة المخصصة لحفظ البرنامج فيه هي 16 16 كيلو بايت
_____________________________________________________
أود منذ البداية أن أنوه إلى بعض النقاط أرجو التركيز عليها :
1. أهم مرجع على الإطلاق لأي عنصر إلكتروني أو أي دارة متكاملة .. هي التعليمات المرفقة من الشركة المصنعة ...
وتُعرف باسم Data Sheet .. وتحتوي على جميع المواصفات الكهربائية والفيزيائية للعنصر .. وعلى شرح جميع
وظائف الدارة المتكاملة ..

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

2. هدف هذه الدروس هو تلخيص الأفكار الهامة والابتعاد عن أي معلومة غير مفيدة للمبتدئ... وسأحاول بإذن الله
تعالى ... وضع كل معلومة في مكانها المناسب ...

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

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

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

4. أخير ا ...أرجو من الله تعالى التوفيق والسداد والثبات ...والقبول ..فإني نذرت هذا العمل لوجه الله تعالى ..
ولا أطلب فيه غير رضاه ..والله ولي التوفيق..

أما بعد ..

ببساطة ...مم يتألف الحاسوب Computer ؟
من معالج .. وذاكرة (ولها عدة أنواع) ..وأجهزة دخل و خرج ..وما يصل بينها جميعا بتنسيق ما...

ببساطة ...مم يتألف المتحكم الصغري MicroController ؟

من معالج .. وذاكرة )ولها عدة أنواع ( .. وأرجل تربطه بالعالم الخارجي ...وما يصل بينها جميعا بتنسيق ما ...
هناك نوعان لمعظم الدارات المتكاملة ...ربما يمكننا وصفها كما يلي . نوع له أرجل شاقولية ..ونوع له أرجل أفقية ...

النوع الأول :


النوع الثاني :



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






ببساطة ... مم يتألف المعالج ؟

وحدة تقوم بالعمليات الحسابية كالجمع والطرح والمنطقية كعملية arithmeticLogicand و or ... وفيه بضعة
حجرات ذاكرة .. وممر للنقل والتنسيق بينهما وبين العالم الخارجي ...

ولكل متحكم برنامج خاص ..ومعظم الأجهزة الالكترونية التي نستعملها يوميا تحتوي على متحكم ..

كأمثلة : المايكروويف .. والتلفاز ..والغسالات الحديثة والموازين الالكترونية .والكثير الكثير ....قرأت مرة عنوانا
يقول : How Many Microcontrollers Did You Use Today ؟

لماذا نهتم بالمتحكم الصغري ؟؟

لأنه يوفر علينا صنع دارة كثيرة العناصر ومعقدة الصنع ...وغالية الثمن ولها وظيفة واحدة غير قابلة للتغيير ...عن
طريق برمجة المتحكم ليقوم بهذه الوظيفة برمجي ا بدل القيام بها .. هاردويريّا ...

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


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


لنبدأ ....

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

بيئة نقوم فيها بكتابة البرنامج بلغة · C ثم إنتاج الملف الذي نشحنه في المتحكم لبرمجته ...

أي أننا سنتعلم برمجة المتحكم بلغة C .. ويجب الإلمام بالأساسيات على الأقل في اللغة ... (من المتحولات حتى التوابع
على الأقل )

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


إذا درسنا المتحكم بشكل عام فإنه يتألف من معالج و ذاكرة ..وطبعا من برنامج يقوم بتنفيذه ... (ومن المهم برأيي أن
نعتبر البرنامج جزء من المتحكم )


الذاكرة لها 3 أنواع لكل واحد وظيفة ... الأنواع الثلاثة هي : SRAM و Flash و EEPROM


Flash تحفظ الكود ..(ولا تمحى بانقطاع التيار )

SRAM تخزن فيها المتحولات العادية وفيها بعض الحجرات المحجوزة سنتكلم عنها في وقتها ... (وتعتبر Stack
للبرنامج )

وتمثل ال EEPROM HEAP للبرنامج ويمكن الكتابة عليها والقراءة منها ... ولا تمحى بانقطاع التيار ..
للمتحكم أرجل تصله بالعالم الخارجي ...(أي بالعناصر الإلكترونية المجاورة )

كل رجل لها وظيفة خاصة ووظيفة عامة ...

الوظائف العامة تتمثل بالدخل والخرج ... والوظائف الخاصة سنتحدث عن كل واحدة منها في وقتها بإذن الله ..
ويتم اعتماد وظيفة الرجل من خلال البرنامج ...سواء دخل أو خرج .. (أم لاستخدام وظيفته الخاصة )


في المتحكم هناك أربع مجموعات من الأرجل ... كل مجموعة فيها 8 أرجل (ونسمي المجموعة بوابة Atmega16 PORT )
لنلقي نظرة على المتحكم ... ونرى البوابات .. والأرجل ..



المستطيلات الحمراء تحيط بكل PORT والمستطيلات الخضراء تشير إلى اسم كل بوابة ..لدينا A ,B,C, D
بما أنه لدينا 4 بوابات وكل بوابة فيها 8 أرجل ...يمكننا برمجة الأرجل لتكون 32 رجل دخل أو 32 رجل خرج .. أو
أن نخلط بينها دخل وخرج ...سنتعلم برمجتها في الدرس الأول بإذن الله ...
يمكنك ملاحظة أن عدد الأرجل الكلي هو 44 ... منها 32 للبوابات ...
والباقي نراه من الصورة :


المستطيل الزهري (لشيء اسمه المحول من تشابهي إلى رقمي ... يعني نستعمله عندما نريد استخدام ADC analog وسنتحدث عنه في وقته ان شاء الله  to digital converter)

المستطيل الأزرق ... نضع عنده العنصر الالكتروني الذي يولد ترددات ...( كريستالة ) .. في حالات خاصة ... (لأن
بداخل المتحكم يوجد مولد ترددات يصل إلى 16 Mhz ... سريع ما شاء الله )
لاحظ الأحمر vcc نصله إلى جهد التغذية 5 ... و gnd إلى الجهد 4v

والبنفسجي .. هي رجل إعادة التشغيل ... وسنتعلم استخدامها في الدرس الثاني بإذن الله تعالى ...

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

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

0 comments:

إرسال تعليق

إترك بصمتك ثم بإمكانك الرحيل ، لنعطيك المزيد

 

على فيس بوك