تحديد قيمة مقاومة التوالي مع الليد

0


السلام عليكم ورحمة الله وبركاته. من المؤكد أن بعضكم يتسائل, كيف يمكنني تحديد قيمة المقاومة الموضوعة على التوالي مع الليد؟
أو عند رؤية تصميم ما تتسائل, لماذا استخدم المصمم هذه القيمة؟

للإجابة عن تساؤلاتكم, نسترجع معاً قانون أوم. فهو الأساس لحل هذه المسألة :)

حيث أن عناصر هذه الدائرة تتصل معا بطريقة تسلسلية, إذا جهد المصدر " البطارية هنا " سيوزع ما بين عناصر الدائرة " المقاومة والليد ".
ونراعي هنا أن نجعل جهد الليد يساوي 3 فولت تقريباً. ما معناه أن المقاومة ستتحمل بقية جهد المصدر. 6 فولت في مثالنا هنا.
أما شدة التيار المار خلال المقاومة تساوي شدة التيار المار خلال الليد لأنهم يتصلون معاً على التوالي.

وشدة التيار المار خلال الليد تحدد شدة إضائته. كلما زادت شدة التيار, زادت شدة الإضاءة. ولكن هناك حدود لشدة التيار كيلا يتلف الليد.
فيجب مراعاة أن تكون شدة التيار ما بين 10-20 ميللي أمبير. حسب شدة الإضاءة التي نرغب بها.

إذا لدينا مقاومة نريد تحديد قيمتها ونعلم قيمة فرق الجهد بين طرفيها " 6 فولت " وشدة التيار المار خلالها " 15 ميللي أمبير على سبيل المثال " . 
بإستخدام قانون أوم نجد أن: قيمة المقاومة = فرق الجهد ÷ شدة التيار.
قيمة المقاومة  = 6 ÷ 15ميللي = 400 أوم أي يمكن وضع مقاومة 390 أوم. وتصبح النتيجة بالشكل التالي:




إلى هنا إنتهى درسنا اليوم. أترككم في رعاية الله وأمانه.

إنشاء مشروع جديد في برنامج Code::Blocks مع AVR

0





السلام عليكم ورحمة الله وبركاته. نخصص مقالنا اليوم للتعرف على كيفية برمجة المتحكم AVR من خلال برنامج Code::Blocks. 
حيث أن برنامج Code:Blocks هو عبارة عن Cross-platform IDE ومعنى كلمة IDE هو بيئة برمجية متكاملة. أي تحتوي على ال Compiler وال Linker وال Editor وكل ما هو مطلوب من بدء كتابة الكود إلى مرحلة إنتاج ملفات ال binary.
ومعنى Cross-platform أنه يعمل على أي نظام تشغيل Win / MAC / Linux.

والبرنامج مجاني تماماً ومفتوح المصدر. وهو لا يستهلك الكثير من موارد الجهاز وبه العديد من المميزات مثل:
الإكمال التلقائي للأوامر و خاصية التحديد اللوني وغيرها من المميزات التي قد تجعلك ترغب في إستخدامه.

نبدأ على بركة الله بتحميل برنامج Code:Blocks من الرابط التالي: هنا

ثم نحمل Winavr وهو عبارة عن حزمة تحتوي ال compiler الخاص ب AVR وعلى بعض الأدوات مثل AVR dude والذي يستخدم في رفع ملفات ال binary أو .hex للمتحكم المراد برمجته. يمكنك تحميله من: هنا

نقوم بتثبيت حزمة Winavr أولاً ثم نثبت برنامج Code::Blocks .

نفتح البرنامج فتظهر الشاشة الرئيسية بالشكل التالي:

نضغط على Create New Project
فتظهر النافذة التالية نختار منها AVR

فننتقل للنافذة التالية فنضغط على next ثم نقوم بكتابة إسم المشروع وإختيار مكان حفظه في النافذة التالية

وننتقل إلى النافذة التالية حيث يوجد بها ال Compiler وإعداداته فنضغط next

ثم من هذه النافذة نختار نوع المتحكم الذي نريد برمجته وأيضاً نحدد قيمة المذبذب المستخدم معه سواء كان داخلي أم خارجي ثم نضغط Finish

وبهذا نكون انتهينا من إنشاء المشروع الجديد ونستطيع البدء في تطوير الكود الخاص بنا.
نفتح ملف main.c

ثم نضغط على Build

ونراجع النتيجة بالمنطقة السفلي فتظهر النتيجة كالآتي:

ومنها لا توجد أخطاء أو تحذيرات.

ملحوظة:
لا يتحتم بالضرورة أن تكون رسالة عملية ال Build مطابقة للصورة في الشرح وقد تحتوي على تحذير خاص بال Optimization وهذا ما سنستعرضه في دروس لاحقة وهذا التحذير يمكن تجاهله في الفترة الحالية. المهم هو عدم وجود أخطاء errors 0.

وبهذا ينتهي درسنا اليوم أترككم في رعاية الله :)

إنشاء مشروع جديد في برنامج IAR مع TivaC

0

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

مرحباً بكم أعزائي في أول دروس هذه السلسلة التي نبدأها معكم لتعلم برمجة المتحكمات من نوع ARM الخاصة بشركة Texas Instruments .

سنعتمد في الدروس القادمة على اللوحة التطويرية TivaC launchpad والتي قد يعرفها معظمكم نظراً لإنتشارها الواسع لأسباب عديدة أهمها انها اللوحة المعتمدة في كورس Embedded systems shape the world على منصة edx التعليمية والمقدم من جامعة Texas at Austen .


نبدأ على بركة الله أولاً بتحميل برنامج IAR من الرابط التالي: هنا
ثم نقوم بتثبيته وتفعيله " تقدم شركة IAR systems تفعيل مجاني ولكن محدود في حجم الكود 32KB وهو ليس بالحجم القليل لغرض العملية التعليمية "
ونقوم بتحميل ال USB driver الخاص بالمبرمجة ICDI المدمجة باللوحة من الرابط التالي: هنا
ونقوم بتحميل ملف tm4c123gh6pm.h والذي يحتوي على تعريف عناوين المسجلات وكل الموديولات الداخلية للمتحكم الموجود باللوحة من الرابط التالي: هنا
 

نفتح برنامج IAR فتظهر نافذة بيئة العمل بالشكل التالي:

لإنشاء مشروع جديد نفتح قائمة Project ونختار Create New Project...

فتظهر النافذة التالية نختار منها C ثم main

ثم نحفظ البرنامج في المكان الذي نريد وتظهر لدينا بيئة العمل بالشكل التالي:

يجب الآن إعداد البرنامج لمعرفة نوع المتحكم الموجود على اللوحة وكيفية التواصل معها ورفع الكود عليها
من خلال قائمة Project نختار options فتظهر نافذة options نقوم منها بتحديد نوع المتحكم كما بالصورة



ثم من خلال debugger نختار Ti Stellaris

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


نقوم الآن بإضافة ملف tm4c123gh6pm.h من خلال الضغط بالزر الأيمن على اسم المشروع وإختيار Add ثم Add files...

ومن ثم نحدد مكان الملف.

نقوم الآن بكتابة هذا الأمر في أول سطر في الكود

تهانينا الآن قد انتهينا من كل شئ وللتأكد من فعل كل شئ بالطريقة الصحيحة نضغط على زر make

يفترض بنا الحصول على نتيجة مشابهة بالجزء الأسفل من البرنامج

إذا كانت هناك أخطاء برجاء مراجعة الخطوات السابقة

أترككم في رعاية الله وإلى لقاء آخر :)

إنشاء مشروع جديد في برنامج IAR مع STM32F4

1

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

 

أهلا ومرحباً بكم في أول دروسنا في هذه السلسلة الشيقة والتي نبحر من خلالها في عالم الأنظمة المدمجة.
برنامج IAR هو بيئة تطويرية متكاملة غنية عن التعريف وتتوفر منه إصدارات لأغلب عائلات المتحكمات الشهيرة مثل ARM - 8051 - AVR - MSP430 . ومن أفضل مميزات هذا البرنامج هو ال Debugger الخاص به والذي يمكنك من رؤية سير البرنامج خطوة بخطوة وبنفس الوقت تتمكن من رؤية محتويات المسجلات المختلفة وكذلك محتوى الذاكرة وغيرها من المعلومات المفيدة والتي تساهم في تمكيننا من إنتاج برامج ذات كفاءة عالية.

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

وتحمل الإسم التالي STM32F4 discovery board
ويجدر بنا الإشارة هنا إلى أن F4 تشير إلى ان المتحكم مصمم بمعمارية ARM Cortex-M4

نبدأ بتحميل البرنامج من الرابط التالي: هنا

ونقوم بتحميل الدرايفرات القياسية الخاصة ب STM32F4 من الرابط التالي:  هنا

ونقوم أيضاً بتحميل ال USB driver الخاص بالمبرمجة ST-link والموجودة على البوردة من الرابط التالي: هنا

ثم نقوم بتثبيت برنامج IAR وتثبيت ال usb driver كي يتعرف الحاسب على البوردة عند توصيلها بمنفذ USB.
وأيضاً نقوم بفك الضغط عن الدرايفرات القياسية .

ملحوظة: يجدر الإشارة هنا إلى انه يجب تفعيل برنامج IAR قبل البدء في إستخدامه. وهو يدعم نسخة مجانية محدودة ( أقصى حجم للكود هو 32 ك بايت ). وهو حجم ليس بقليل لغرض العملية التعليمية.

نقوم بفتح البرنامج فيظهر بالشكل التالي:

نضغط على قائمة Project ونختار Create New Project... كما بالصورة التالية:
فتظهر النافذة التالية ونختار منها C ثم main :

ثم نقوم بحفظ البرنامج في المكان الذي نريده.
ثم تظهر بيئة العمل بالشكل التالي:

الآن قد قمنا بإنشاء مشروع جديد ولكن البرنامج لا يعلم رقم المتحكم الذي نريد برمجته
لذا نقوم بتحديده من خلال قائمة Project وإختيار options.
فتظهر نافذة options بالشكل التالي:

نقوم بالضغط على Device ثم الضغط على المربع مقابله جهة اليمين, وإختيار نوع المتحكم كما بالصورة:

نقوم الآن بإخبار البرنامج بأننا نريد إستخدام الكود الذي سنكتبه مع البوردة الحقيقية وليس بالمحاكي المرفق بالبرنامج

وأيضاً نحدد هذا الإختيار كي يقوم البرنامج برفع الكود للمتحكم عندما نريد

ونقوم بإختيار البروتوكول المستخدم في تحميل الكود على البوردة

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

فتظهر النافذة التالية

نذهب للمكان الذي وضعنا فيه مجلد الدرايفرات القياسية والذي قمنا بفك ضغطه سابقاً
ثم نقوم بتحديد 5 ملفات سنجدهم في المسارات التالية:
المسار التالي: STM32F4-Discovery_FW_V1.1.0\Libraries\STM32F4xx_StdPeriph_Driver\src
سنجد به عدة ملفات نقوم بإضافة التالي منها:
misc.c
stm32f4xx_gpio.c
stm32f4xx_rcc.c

ثم نذهب للمسار التالي:
STM32F4-Discovery_FW_V1.1.0\Libraries\CMSIS\ST\STM32F4xx\Source\Templates
ونقوم بإضافة الملف التالي:
system_stm32f4xx.c

وأخيراً نقوم بالذهاب للمسار التالي:
STM32F4-Discovery_FW_V1.1.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\iar
ونقوم بإضافة الملف الموجود بداخله وهو:
startup_stm32f4xx.s

فتصبح الملفات المضافة كما بالصورة:

نقوم الآن بتحديد أماكن ملفات .h الخاصة بالملفات التي أضفناها بالخطوة السابقة
من خلال قائمة Project نختار options
ثم نقوم بإختيار التالي:

ونضغط على الزر المحدد بالدائرة الحمراء فتظهر النافذة التالية:
نضغط هنا على الكلمة المحددة باللون الأحمر ونقوم بتحديد هذه المجلدات الواحد تلو الآخر:
ثم نضغط OK.

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

تهانينا :) الآن إنتهينا من إعداد كل شئ ونحن جاهزون للبدء بكتابة الكود :)

نقوم بكتابة الأمر التالي #include "stm32f4xx.h"  في أول سطر :

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

وهنا يتضح عدم وجود أية أخطاء أو تحذيرات.
وإذا وجد أي منها برجاء مراجعة الخطوات السابقة.

وإلى لقاء آخر, دمتم في أمان الله .
Powered by Blogger.

المشاركات الشائعة

جميع الحقوق محفوظه © Embedded Playground

تصميم الورشه