Electronic Egyption Clup2

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

Electronic Egyption Clup2

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

Electronic Egyption Clup2
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

Electronic Egyption Clup2


 
الرئيسيةأحدث الصورالتسجيلدخول

******أعوذ بالله من الشيطان الرجيم******{ بسم الله الرحمن الرحيم}***** اَللَهُ لا إِلَهَ إلا هو اَلحي ُ القَيَوم لا تأخذه سِنَةٌ ولا نوْمٌ لَّهُ مَا فيِِ السَمَاوَاتِ وَمَا في اَلأَرْضِ مَن ذَا الَّذِي يَشفَعُ عِنْدَهُ إِلاَّ بِإِذْنِهِ يَعْلَمُ مَا بَينَ أَيدِيهِمْ ِوَمَا خَلْفَهم وَلا َيُحِيطُونَ بشَيءٍ مِنْ علمِهِ إِلاَ بِمَا شَآء وَسعَ كُرْسِيُّهُ السَمَاوَاتِ وَالأَرضِ وَلاَ يَؤُدُه حِفْظُهُمَا وَهُوَ العَليُّ العَظِيمُ **** **   كل عام وأنتم بخير  ***** ربى أحفظ مصر من كل سوء ***** نادى الالكترونيات المصرى2   *كما ندعو لمصر بصلاح حالها وتولى من يصلح*اللهم أحفظ مصرنا من كل سوء*لا إله إلا الله*ولا حول ولا قوة إلا بالله *الله أكبر الله أكبر الله أكبرلا إِلَهَ إلا الله ***** الله أكبر  الله أكبر الله أكبرولله الحمد*****عزيزى العضو لاتأخذ ولا تعطى كن متعاون*****شارك برأى شارك بموضوع ولو بسيط*****هنا بالمنتدى دوائر & كتب & دروس & ميكروكنتروللر PIC Microcontroller & دوائر صوت الخ ** ****كل عام وأنتم بخير***ًاللهم اشكو اليك ضعف قوتي ,وقلة حيلتي,وهواني على الناس,يا ارحم الراحمين ,انت رب المستضعفين وانت ربي,الى من تكلني,الى بعيد يتجهمني,او الى عدو ملكتة امري,ان لم يكن بك غضب علي فلا ابالي,غير ان عافيتك هي اوسع لي,اعوذ بنور وجهك الذي اشرقت لة الظلمات,وصلح علية امر الدنيا والاخرة,ان يحل علي غضبك,او ينزل بي سخطك,لك العتبى حتى ترضى,ولا حولة ولا قوة الا بك صدق رسول الله صلى الله عليه وسلم تحيا مصر حرة فى ضميركل حر ** flower


 

 برمجة الميكروكنترللر ببرنامج Flowcode

اذهب الى الأسفل 
4 مشترك
انتقل الى الصفحة : 1, 2, 3  الصفحة التالية
كاتب الموضوعرسالة
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 8:15

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

مراحل برمجة الميكروكنتروللر

برمجة اي ميكروكنتروللر وبأية لغة برمجة كانت : اسمبلي او سي او بيزك ... تمر من مراحل أساسية ثلاث:
1- كتابة المسار الخطي flowchart , Organigramme يحدد مراحل تنفيذ برنامج تشغيل الميكروكنترولر.
2- إعداد ملف HEX : كتابة الكود وترجمته ببرنامج خاص( Compiler) بعد ضبط الاعدادات الضرورية
3- نقل الملف Hex الى شريحة المتحكم بواسطة برنامج خاص ومبرمجة مناسبة وجهاز حاسوب

البرمجة ببرنامج Flowcode

في الموضوع التالي الذي سيغطي ان شاء الله عدة مشاركات ، سنتعرف على أسلوب جديد في البرمجة :
البرمجة بواسطة رموز وأشكال هندسية محددة واضحة الدلالة يحولها "فلوكود" الى تعليمات برمجية بلغة السي واسمبلي ثم Hex
هناك عدة برامج خاصة بهده الطريقة المتفردة من البرمجة ..من بينها برنامج Flowcode الذي بلغ درجة من التطور تشجع على اختياره لهذا الموضوع.
فلوكود برنامج يعلم البرمجة بأسلوب ميسر وفي نفس الوقت يمنح القدرة على إعداد و تنفيذ مشاريع متميزة وحقيقية بالميكروكنترولر ..
1/ تنصيب Flowcode V3 :
تنصبه كالمعتاد وتتابع بتنصيب المكمل PPPV3 (هنا)
لا تتجاوز هذه الخطوة بل اضغط على install PPP3.9 ثم تابع الخطوات المتبقية لاكمال التنصيب . و لتتأكد من تنصيب PPPV3
او لاعادة تنصيبه تتبع ما يلي (هنا)
2/ مشروع برمجة ب Flowcode :
المشروع التالي لا ينجز الكثير .. اشعال ليد بمجرد توصيل الدارة بالتغذية +5 فولت ..
الهدف منه تعليمي يتمثل في التعريف بخطوات بناء مشروع وخاصة:
* اختيار متحكم مناسب : PIC16F84A هذه المرة
* اختيار تردد مذبذب المتحكم : 4000.000 هرتز مثلا (كريستالة 4Mhz)
* ضبط الاعدادات الاولية المعروفة ب Configuration
ا- الدارة : PIC16F84a+ كريستالة 4Mhz (الدارة هنا) :
ب - أدوات العمل الاساسية :
نتعرف على ايقونات البرنامج الاساسية والمكونات والرموز من خلال الصورة (هنا)
ننشأ مجلدا جديدا ثم نتبع الخطوات :
ج- بناء المشروع :
1- اعدادات شريحة المتحكم الاولية: Configure
هي إعدادات ضرورية لتوليد ملفات هيكس صالحة لتنفيذ مشروع حقيقي .. (هنا)
2- اعداد برنامج اشعال الليد :
نتابع المراحل كالتالي (PDF هنا) ..
3- توليد ملف Hex:
انتهينا من التجربة على فلوكود ونريد الحصول على ملف Hex : نضغط على ايقونة Compile to Hex كما في الصورة (هنا).
-يفترض ان الاعدادات التالية قد تمت سابقا (هنا) وهو شرط نجاح البرمجة الفعلية .
ملاحظة:
-البرنامج المكمل PPPV3 هو من يمكنك (دون ان يظهر) من ضبط الاعدادات المذكورة وذلك عندما تضغط على ايقونة Chip ثم Configure
واذا لم يتعرف فلوكود على مكان PPPV3 ستظهر لك رسالة تحذيرية ( الصورة هنا)
المطلوب إذن: البحث في جهازك عن PPPV3 لادماجه مع فلوكود (الخطوات هنا) .
- للتذكير فإنك ستجد PPPV3 في جهازك شرط ان تكون قد نصبته سابقا مع فلوكود عندما طلب منك ذلك: install PPP3.9 (هنا) .
ملف المشروع :
(هنا)



برامج التعلم:

تحتاج لبرنامجين للتعلم الاول أساسي وهو برنامج فلوكود للبرمجة والمحاكاة ..
والثاني مكمل وهو البرنامج الشهير بروتوس لرسم الدوائر الالكترونية ومحاكاتها..
لتنزيل فلوكود مباشرة اضغط هنا :
Flowcode PIC Free Demo
موقع Flowcode :
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
PROTEUS برنامج محاكاة معروف في منتديات الالكترونيات فاذا بحثت عنه ستجده.. في جميع الاحوال يمكنك تحميل نسخة تجريبية (من موقع المنتج labcenter electronics ) ، على الاقل لفتح ملفاته (امتداد .dsn)
طريقة محاكاة دوائر الميكروكونترولر ببروتوس:
(هنا)
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 8:32

السلام عليكم

تطبيق 1
فلاشر 01
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


المتحكم : PIC16F84A
نوع المذبذب : كوارتز 4Mhz
1- الهدف :
توظيف رموز/ تعليمات المخارج التوقيت
استخدام مكون الليدات
2- ملف التطبيق- محتويات الملفات :
- رسمة الدارة
- ملف المشروع بفلوكود
- ملف شرح الخطوات بالصور
- ملف المحاكاة

ملفات المحاكاة(هنا)
شرح بالصور ( PDF هنا )
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 8:39


السلام عليكم


فلاشر 02 :


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]




المتحكم : PIC16F84A
نوع المذبذب : Crystal 4Mhz

1- الأهداف :
توظيف رمز /تعليمةالمخارج
توظيف رمز/تعليمة التوقيت
ربط مكون الليدات بالمنفذ "ب"
توظيف الماكرو

2- ملف التطبيق- محتويات الملف :

- رسمة الدارة
- ملف المشروع بفلوكود
- ملف شرح الخطوات بالصور
- ملف المحاكاة

الملف
(هنا)
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 8:45

عداد 0 الى 9 :انشاء variable وإجراء عمليات حسابية عليه



إدراج متغير (variable )وتوضيح علاقة المفهوم مع بنية PIC المادية .



يؤكد كثيرون انه، بخلاف الاسمبلي الذي يفرض على متعلم البرمجة ان يلم بتفاصيل عمل المتحكم داخليا ، لا حاجة للمبرمج باللغات "عالية المستوى" مثل السي او البيزك في التعرف على "مكونات البيك الداخلية ولا سجلاته الا فيما ندر..
هؤلاء يعتبرون البيك مجرد "علبة سوداء" يكفي المبرمج التعامل مع اطرافها الخارجية دون الدخول في طريقة عمل البيك غالبا ..
كومبيليرات C او Basic تتكفل بالباقي .. هل هم على حق ؟ تلك قضية لا مجال لمناقشتها هنا ..
فلوكود يتبع نفس النهج ويحاول ان يغنيك عن الخوض في تفاصيل عمل البيك..لكن مع ذلك من رأيي الافضل التعرف على حد أدنى من الجانب النظري ما بقد يسهل الربط بين المفاهيم المجردة للبرنامج و بين المكونات الفيزيائية للعنصر بيك..
يتكون البيك (ليكن هذه المرة 16F84a) من "وحدة عمل" بها معالج و سجل العمل .W - اول حرف من work-وأدوات عمل متنوعة ثم "غرفة عمليات" وهذا ما يعنينا الآن:
"غرفة العمليات هذه هي مجموعة سجلات ذاكرة من نوع RAM (رام : ذاكرة تفقد محتوياتها بمجرد انقطاع جهد التغذية عنها ).
عدد هذه السجلات يختلف من بيك الى آخر وتفصيل ذلك في الداتا شيت ..
كما هو معروف، هناك نوعان من هذه السجلات في البيك:
1- سجلات عمل خاص ، بمعنى انها تكاد تكون خاصة بوحدة العمل داخل البيك ، ولا دخل يذكر للمبرمج فيها.
2- سجلات عمل عام ، ، سميت سجلات عامة لأنها متاحة "للعموم " أي نحن جماعة المبرمجين هواة وطلابا ومحترفين.. وهذه هي المعنية بالموضوع الحالي .. الواحد منها يسمى Variable في فلوكود وفي البرامج التي تقوم بعملية compilation أي تحويل برنامج مكتوب بلغة برمجة مثل C او PicBasic او غيرها ، إلى برنامج مكتوب بلغة اسمبلي (assembler)ثم في النهاية الى ملف هكس Hex وهو سلسلة من الأرقام ،كل رقم يفهمه البيك على انه أمر يتوجب عليه القيام به.
فما علاقة مفهوم "الارقام " وهو مفهوم مجرد لا وجود له إلا في تصورنا .. "الارقام " التي تعودنا على استعمالها في عد الأشياء و إحصائها، ما علاقتها بعنصر الكتروني كالبيك مثلا؟
وما هو السجل ؟ وماذا يمكن ان نفعل به؟
باختصار ودون الإغراق في تاريخ ظهور الالكترونيات الرقمية :
1) العلاقة المذكورة جاءت نتيجة الربط بين ملاحظتين أساسيتين :
الملاحظة الاولى: الكهرباء في عنصر الكتروني ما، اما ان تكون حاضرة او غائبة
فاذا كانت تغذية العنصر = 5 فولت مثلا.. فان حضور الجهد يعطي+5 فولت وغيابه يعطي 0 فولت .
الملاحظةالثانية: نظام العد الثنائي يتوفر على رمزين اثنين فقط هما : 0 و 1
بحيت ان أي رقم يكتب بنظام العد هذا ، لا يمكن ان يأخذ الا القيمة 0 او 1.. هكذا فان العدد 2 في النظام العشري (المألوف عند الانسان)
يكتب في النظام الثنائي (لغة الالة) : 10 او 0010 او 0000010 ..الأصفار على اليسار لا تزيد في الرصيد شيئا..
اذن : غياب الجهد يساوي 0 وحضوره يساوي +5 فولت (+V عموما)
نرمز لغياب الجهد ب 0 ولحضور ه ب 1 ونسمي الاول حالة منطقية 0 والثاني حالة منطقية 1.
من هنا فان مسجلا الكترونيا له 8 مخارج مثلا يتيح 3 امكانيات على الاقل:
ا- كل المخارج ليس بها أي جهد (متصلة بالارضي داخل العنصر الالكتروني) أي كلها = 0 فولت ، رمزها هو :
00000000 او 0
ب- بعضها به جهد +5 فولت والباقي 0 فولت ...مثلا:
10000100 ثنائي وهو ما يعادل 132 عشري.
ج- كلها بها جهد +5 فولت ورمزها سيكون 11111111 ثنائي وهو ما يعادل 255 عشري.
2) في البيك مجموعة مهمة من مثل هذه العناصر الالكترونية تعرف بالمسجلات ..يتألف كل مسجل من 8 "مواضع للخزن " ولكل موضع "طرف" يسمى bit ومجموع 8bits يسمى byte بالانجليزي او octet بالفرنسي ..
ويمكن ان ياخذ كل bit القيمة 5 فولت في حضور الجهد او 0 فولت في غابه (مع توصيله بالارضي طبعا) . يتميز كل سجل بكونه قادرا على الاحتفاظ بالجهد +5 فولت الذي يودع في احد او كل مواضعه الثمان . هو ببساطة ذاكرة الكترونية. اشياء معروفة لا جديد ..
تهمنا السجلات العامة .. فلوكود يسمي الواحد منها Variable
يمتلك 8 مواضع، معنى ذلك: 256 احتمال بما فيها الصفر :
من 0000000(0) الى 11111111 (255) .
في أي شيء ينفعنا سجل ما ؟
1- ذاكرة نضع فيها رقما ثنائيا معينا أي ترتيبا معينا للمخارج الثمانية .. ثم "نأمر" البيك بنقل هذا الترتيب بين 0 و1 (هذا الرقم الثنائي) الى المخارج B مثلا (PORTB) لتوصيلها بليدات او غير ذلك..
2- عداد counter ، كلما اضفنا عليه 1 يزيد ويكتب في خانة variable بهذه الصياغة:
Counter = counter + 1
3- اسم لطرف حددناه مدخلا ...
اضافة الى وجود سجلvariable وظف في البرنامج كعداد counter على النحو الذي تقدم معنا .. فان اهم ملاحظة هي كون البرنامج به حلقتان واحدة عامة لانهائية تجعل العد مفعلا باستمرار .. وثانية داخل الاولى مهمتها "حصر العداد في القيمة 9 حتى لايتجاوزها ..
ارجو من الله التوفيق

ملف التجربة

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]

الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 8:48



ساعة رقمية LCD
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

المتحكم : PIC16F84A
المذبذب : كوارتز الساعات 32,768Khz
البرنامج مأخوذ من التطبيق TUT_22 المرافق لفلوكود..بعد إضافة تعديلات مهمة..
اذ كان لابد من اجراء تعديل في ماكرو مقاطعة تايمر البيك وبالضبط في اعدادات التدرج..
أضفت كذلك ماكرو ضبط الدقائق والساعات ليصبح البرنامج عمليا..
يمكن بسهولة الوقوف على هذه التعديلات بمقارنة البرنامج الاصلي مع المعدل..وهي فرصة لاجراء مزيد من التعديلات لمن يرغب ، امثلة:
اضافة ايام الاسبوع ، الشهر، السنة..
مؤقت تنبيه واحد او أكثر..
وغير ذلك..
ملف التجربة :

(هنا)

الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 8:53



استعمال المكون ADC
مقياس حرارة
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
المتحكم : PIC16F877A
مثال عن طريقة الاستفادة من المكون ADC في برنامج Flowcode لقياس جهود غير رقمية (تناظرية - analog )
معلوم ان المدخل الرقمي في البيك لا يأخذ الا قيمتين :
القيمة 0 منطقي اي 0 فولت تقريبا
القيمة 1 منطقي اي جهد (5 فولت في الدارة ) ولا يستطيع التعرف على القيم التي تتوسط 0 و5 فولت ..
البيك PIC16F84a لا يتوفر على محول تناظري / رقمي لذلك تحولنا الى البيك PIC16F877a الذي يتوفر على هذه الميزة ..مما يسمح ببناء دارات قياس كمقياس الحرارة وقياس الجهد (فولتمتر) او شدة التيار (امبيرمتر) والتحكم في سرعة موتور بواسطة مقاومة متغيرة ...
اضافة مقاومة متغيرة سمحت بالاستفادة من التطبيق TUT_26 المرافق لفلوكود وتحويله لمقياس حرارة ، حتى يكون نموذجا لاستعمالات أخرى.
-----------------
اختبار التطبيق :
- افتح ملف فلوكود 3- غير، ان شئت، المتحكم منPIC16F88 الى PIC16F877a وسرعة تردد البيك .
- اضغط على الايقونة المناسبة لتوليد ملفات c وasm و HEX
- جرب عمل الدارة ببرنامج بروتوس بعدما تدمج فيه الملف HEX.
اضافات:
- المفاتيح (+و - ) على LM35 هي فقط مفاتيح افتراضية ، وتمكنك من تغيير درجة الحرارة للتجربة.
- المقاومة للضبط مرة واحدة : تمكنك من جعل الرقم المسجل على مجس الحرارة يتوافق مع درجة الحرارة المسجلة على شاشة العرض LCD
- يمكنك طبعا ان تتدخل كما تريد في برنامج فلوكود، مثال: إضافة كتابة معينة على الشاشة Lcd، وقد سبق شرح الطريقة ..

ملف التجربة:

هنا

الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 8:56

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

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 9:00

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

المتحكم PIC16F84A
من الموضوعات السابقة
أرجو من الله التوفيق ..


عدل سابقا من قبل م/سيدعبدالرحمن في السبت 9 أكتوبر - 9:40 عدل 1 مرات
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 9:09

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

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 9:49

بسم الله الرحمن الرحيم
اشارة مرور لاتجاهين متقابلين
تنفيذ المشروع بطريقتين:
1- طريقة متسلسلة: اضغط هنا
2- طريقة تعويض جزء معين ب " Macro":
في هذه الطريقة استعملت اثنين ماكرو Macro:
الاول يعوض مجموع تعليمات الاتجاه الاول والثاني مجموع تعليمات الاتجاه الثاني
الماكرو الاول اسميته sens_I والماكرو الثاني أسميته Sens_II

بناء المشروع :

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

1- الدارة :
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
2/ تحديد الأزمنة المتعاقبة للأضواء الثلاثة في الاتجاهين:
أهم ملاحظة:
زمن الضوء الأحمر في أحد الاتجاهين = زمن الاضاءة الخضراء + زمن وميض نفس الإضاءة الخضراء + زمن الإضاءة الصفر اء ، للاتجاه المقابل (هنا)
3/ شرح طريقة ادراج ماكرو:
الماكرو macro تسمية للدلالة على جزء من برنامج جانبي او مصغر يتم انشاؤه في صفحة جانبية.. ويتم استدعاؤه في البرنامج العام او الرئيس Main (او Principal بالفرنسي)..
الطريقة في فلوكود:
- بعد فتح صفحة المشروع:
نضغط على ايقونة "macro" في شريط الادوات ثم على " new" او
"nouvelle" فتظهر لنا نافذة الماكرو الذي نريد انشاءه.
- من قائمة الرموز نسحب رمز /تعليمة الماكرو الى داخل البرنامج Main لاستدعاء الماكرو .(الصورة هنا)
تفاصيل أكثر عن الماكرو : في المشاريع السابقة
4/إضافة سويتش
مثال عن طريقة التحكم في تشغيل الدارة (هنا)
عند اغلاق السويتش تبدأ الاضواء في العمل.. وعند فتحه تتوقف الدورة .. لكن ليس قبل ان تكمل آخر رحلة حفاظا على سلامة السير..
------------
ملف التجربة :
المتحكم : PIC16F84A
المذبذب: Quartz 4 Mhz
(هنا)
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 9:54

التطبيقات التعليمية:
TUT_XX
المنصبة مع البرنامج فلوكود:
في الملف :
Examples


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




نزل الملف من هنا
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 10:00

أخي العزيز كل المطلوب استخدامه من رموز / تعليمات تجده بالصورة المرافقة
حاول ان لا تستعمل غيرها
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
ننشئ متغيرين نسميهما في فلوكود مثلا:
Pulseو Cycle
ينطلقان بالعد في نفس اللحظة A (واحد وراء الثاني مباشرة)
وفي نفس اللحظة كذلك تشعل ليد على المخرج A0 = 1
Pulse تجعله يعد ثم يتوقف عند 125 وتطفئ الليد (A0 = 0)
Cycle تجعله يعد حتى يصل الى 255 فتجعله = 0 وتصفر كذلك Pulse
وكل ذلك في حلقة لا تنتهي..
يمكن ان تعطي زمن تأخير 200 ميلي ثانية حتى نتمكن من ملاحظة العد ..
Pulse و Cycle ينطلقان في نفس اللحظة معناه ان لا يكون الفارق الزمني بينهما عند الانطلاق كبيرا ..والاهم ان لا يفصل بينهما أي رمز زمن تأخير Delay على الاطلاق ..اما ان تفصل بينهما ببعض الرموز الاخرى فلا بأس اذا كان ذلك ضروريا ..
سأسمي Pulse الاول و Cycle الثاني للتيسير..
اذن الاول يعد 125 مرة الزمن 200 ميليتانية ويتوقف
والثاني يحسب 255 مرة 200 ميليتانية ويتم تصفيرهما والبداية من جديد ..حلقة لا تنتهي ..
الليد تشتعل طيلة المدة 125* 200ميليتانية التي يستغرقها العداد الأول في العد
وتنطفئ ما تبقى من ال 255 أي 130 * 200ميليتانية
النتيجة من كل هذا :
الليد 125*200ميلتانية اشتعال + 130*200ميلتانية انطفاء ..
والحلقة مستمرة..
ملاحظة:
بالنسبة للزمن سنختار 1 ثانية وللحدود فسنختار 5 للعداد الاول و15 للعداد الثاني حتى يسهل تتبع تنفيذ البرنامج كما ذكرت ..
اخي نورنادر لقد اقتربت كثيرا من اكمال البرنامج تابع معي وبعد ان نحصل على النتيجة المطلوبة سأشرح الموضوع ان شاء الله ..
ارجو لك التوفيق
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 10:10

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

وقد استخدمت الطرف A4 كخرج لاشارة PWM
وفي انتظار اضافة مفاتيح التحكم في السرعة يمكن اجراء عدة تجارب على الملف PWMZC1_2
حيث يمكن اعطاء قيم مختلفة للحد الاقصى للمتغير Pulse محصورة بين 1 و100مثال:
25
50
75
100
ومن تم ملاحظة زمن اضاءة الليد في كل مرة ..
ملحوظة: قيمة Pulse لا يمكن ان تتجاوز قيمة المتغير Cycle (اخترنا لها 100 هذه المرة لكن يمكن ان تصل الى 255) ..
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:00

أخى العزيز

اذا اعتبرنا ان الوقت الذى يضىء فيه الليد هو فترة ON
والوقت الذى ينطفىء فيه الليد هو فترة OFF
فيكون السبب فى عدم زيادة الحد الاقصى ل pulse عن الحد الأقصى ل cycle
هو حتى لا تختفى فترة off لأن
cycle يكمل العد بعد انتهاء pulse هل استنتاجى فى محله.




الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:04



1/ نعم اخي العزيز اسنتاجك سليم .
في التطبيق الذي نناقشه يجب مراعاة العلاقة التالية:
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
2/ إذا سمحت ننتقل الى المرحلة التانية:
اضافة 4 مفاتيح على مداخل المنفذ A الشاغرة
المفتاح A0 يسند القيمة 25 للمتغير Pulse
المفتاح A1 يسند القيمة 50 للمتغير Pulse
المفتاح A2 يسند القيمة 75 للمتغير Pulse
المفتاح A3 يسند القيمة 90 للمتغير Pulse
اعتقد انك تمتلك الخبرة الكافية لاضافة تلك المفاتيح
واذا دعت الحاجة تستخدم ميزة Macro
التعديل مطلوب على هذا الملف (هنا)
بالتوفيق ان شاء الله
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:07

السلام عليكم أخى العزيز
هناك مشكلة واجهتنى وهى التى اضعت فيها القت الكثير حتى يأست من ايجاد الحل وهى كاتالى:
عندما ادخل المفتاح على احد اطراف ( port A (0, 1, 2, 3 وده طبعا لأن pin 4 مشغولة وعند التشغيل يضاء الليد وبعد تجاوزه ينطفىء الليد مباشرة. فى حين عند استخدام المفتاح على اى بين من port B لاتوجد هذه المشكلة ويسير البرنامج عادى وطبعا انت طالب المفتاح على port A لأن من الواضح ان port B لها استخدام مستقبلى كما ذكرت عموما الملفين فى حالة port A & B من هنا
ارجو اتصحيح... وتقبل تحياتى
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:09

اخي العزيز
اذا كانت اضافة المفاتيح الى المنفذ "أ" تخلق مشاكل انتقل الى المنفذ "ب"..المهم هو انجاز المشروع كما هو مطلوب ..
دعني أوضح لك الهدف المنشود حتى يسهل عليك انجاز التمرين 2 :
الملف الاولSadهنا للتذكير)
فيه قيمة ثابتة مسندة للمتغير Pulse .. النتيجة ان سرعة اضاءة الليد ثابتة ولا نتمكن من تغييرها ..لكن المطلوب ان تكون عندنا امكانية تغيير هذه السرعة
كيف تتغير السرعة؟
اظنك تعرف الجواب : بتغيير القيمة المسندة للمتغير Pulse ..
اترك Cycle ثابت القيمة واسند له العدد 255
لذلك نريد تعديل المشروع بإدخال 4 مفاتيح بحيث نستطيع تغيير سرعة المحرك
المفتاح الاول يدخل مثلا العدد 25 كحد اقصى للمتغير Pulse
المفتاح الثاني يدخل مثلا العدد 50 كحد اقصى للمتغير Pulse
المفتاح الثالث يدخل مثلا العدد 75 كحد اقصى للمتغير Pulse
المفتاح الرابع يدخل مثلا العدد 90 كحد اقصى للمتغير Pulse
النتيجة المرجوة:
كل مفتاح يحدد سرعة إضاءة مختلفة..
خذ ما يكفي من الوقت أخي العزيز وإذا صادفتك مشاكل اعرضها للمناقشة
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:12

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

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:14

رائع اخي
وإضافة ليدات مؤشرات السرعة على المنفذ "ا" فكرة رائعة كذلك..
بقي فقط ان نحل مشكلة توقيت النبضة :
اقل توقيت Delay في فلوكود (وفي كومبيلرات أخرى) = 1ms ..
نبضة بقيمة 1ms تعتبر زمنا كبيرا في عالم التحكم بال PWM
فما العمل؟
الحل :
نصنع بأنفسنا توقيتا في فلوكود ونستفيد من "زمن تنفيذ تعليمة" في المتحكم..
نحن نعرف ان بيك يعمل بتردد 4ميغاهرتز (4000000Hz) ينفذ كل تعليمة خلال زمن = 1µs ..
فإذن اذا كان عداد ما يعد فهو يستغرق في كل مرة يضيف فيها 1 ، زمنا قدره 1µs ..
وعليه فالمطلوب الان أخي نور نادر ان تصنع ماكرو جديد تسميه مثلا :delay
ثم تستبدل كل رمز Delay = 1ms في برنامجك ، بالماكرو الجديد ..مثال عن ماكرو بسيط للتوقيت:
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
كل ما هو مطلوب من الماكرو السابق ان "يضيع" لنا 4 ميكرو ثانية ..
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:17

أخى العزيز اشكرك جداً

لقد فهمت مما شرحته أن المطلوب هو تبديل كل زمن تأخير 1ms بتوقيت تأخير آخر عن طريق خاصية الماكرو هذا جميل
ولكن ما هى قيمة زمن التأخير المطلوب تبديله مع 1ms هل هو 4 ميكروثانية كما بالمثال ام ما هو زمن التأخير المناسب والمطلوب.
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:18

نعم اخي العزيز تضيف ماكرو متكون من 4 "تعليمات فارغة" ..
(لو كنا نبرمج بالاسمبلي لوضعنا 4 تعليمات nop تؤدي نفس المهمة ) :
الماكرو ليس ضروري يمكنك وضع الاربع تعليمات مباشرة لكن في هذا تعب لامبرر له ..لاتنس ان كل الماكروات التي عندك ، بها توقيت يجب ان يستبدل .. هذه ميزة اضافة ماكرو كما تعرف..
بعد اكمال المهمة ارسل لي الملف وبه ستختتم هذه المرحلة وسيبقى فقط اعطاء خلاصة ..
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:21

االسلام عليكم

أخى العزيزشكراً
لقد انتهيت من إضافة زمن التأخير وقد عمل البرنامج بشكل طبيعى والملف من هنا ولكنى لم الاحظ الفرق بين 4 ميكروثانية والوضع الأول 1 ملى ثانية واعتقد ان هذا منطقى لأن العين البشرية لا تلاحظ الفرق ولكن اعتقد الميكروكنترولر يقدر يلاحظ الفرق بكل دقة. وطبعا من المعروف أن تقليل زمن التأخير كما فعلنا يؤدى الى تسريع دورة العد بالنسبة ل pulse و ايضا ل cycle لكن السؤال ما هى العواقب السلبية التى يمكن ان تحدث من زيادة زمن التأخير. فى انتظارك شكرا لك وتقبل تحياتى
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:23

اخي العزيز لاتوجد اية عواقب سلبية فقط يجب ضبط الحسابات وخاصة مراعاة
pulse اصغر من cycle
و Cycle اصغر من256
واسهل طريقة ان نعطيه القيمة 100 ..
وبذلك يصبح تحديد السرعة بنسب مائوية بين زمن الجهد الاعلى والجهد الادنى للزمن الدوري الذي يمثله المتغير cycle..علما بأن العداد Pulse هو الذي نضبط به زمن النبضة PWM اي النسبة المائوية للجهد +5 فولت من الزمن الدوري الذي يحدده المتغير Cycle
مثال: 4 سرعات مختلفة
25%
50%
75%
90%
----------------
الحقيقة ان الملف الاخير يوضح المستوى الجيد الذي وصلت اليه والفضل يرجع لله تعالى فله الحمد والشكر..
نتابع بإجراء بعض التعديلات التي ستوجه المشروع الى الاستعمال الحقيقي :
في البداية لاحظت انك عملت خرجا خاصا لكل سرعة ..
هذه الطريقة ليست معمولا بها، لانها لا تمكن من تغيير سرعة المحرك..والمطلوب ان يكون الخرج موحدا تخرج منه السرعات الاربع حسب الاختيار بالمفاتيح ..
إذن المرحلة الثانية هي إجراء تعديلات كالتالي:
1/ اجعل المنفذ A منفذ المفاتيح :
4 مفاتيح لتحديد 4 مستويات للسرعة والمفتاح الاخير اجعله يتحكم في المحرك ON/OFF وذلك بجعل المخرج عند تشغيل المحركB7 =1 و = 0 عند توقيفه ..
(في رموز البرنامج اظن ان هذا المفتاح سيكون اول حلقة في سلسلة اختبار حالات المفاتيح الاخرى)
2/ اجعل B7 هو خرج PWM الذي تخرج اية سرعة تم اختيارها بالمفتاح الخاص بها
3/ اربط 4 ليدات مع 4 مخارج من المنفذ B
ليد على B0 تضيء عندما تختار السرعة 25%
ليد على B1 تضيء عندما تختار السرعة 50%
ليد على B2 تضيء عندما تختار السرعة 75%
ليد على B3 تضيء عندما تختار السرعة 90%

وعليه فإن الشكل النهائي للدارة سيكون كالتالي:

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
ارجو لك التوفيق
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:25

السلام عليكم
أخى العزيز

لقد انتهيت من إضافة التعديلات المطلوبة
وقد عمل البرنامج بشكل جيد والملف من هنا
أرجو مراجعته وإبداء ملاحظاتك وتوجبهاتك شكرا لك وتقبل تحياتى
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:28


رائع أخي الدارس ..

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

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:30


أخى العزيز لقد قمت بدراسة ملف المشروع وكذلك ملاحظة التعديلات التى اجريت عليه وتوصلت الى التالى:

أولا: تم حذف زمن التأخير الموجود فى بداية البرنامج وتعديل رمز نقطة الوصل من C الى B كما بالصورة:

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

السبب: حتى لا يكون هناك زمن تأخير بين لحظة فصل أى من المفاتيح ctr1, 2, 3, 4 وإطفاء الليد الخاص بذات المفتاح المفصول ... وبناء عليه تم الاستغناء عن نقطة الوصل C .

ثانيا: تم تعديل أسم الدخل الرئيسى من main الى ON/OFF كما بالصورة:

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

السبب: حتى يتطابق مع أسم المفتاح الرئيسى A4 الخاص بالتشغيل والإيقاف.

ثالثا:
1- تم تعديل مكان مجموعة تعليمات إضاءة الليد B0 والخاص بأول سرعة الى المكان الطبيعى لها وهو بعد المفتاح ctr1 فى البرنامج الرئيسى كما بالصورة:
2- تم إضافة مجموعة تعليمات 2 جديدة بدلا من مجموعة التعليمات 1 الخاصة بإضاءة الليد الأول B0 فى نهاية البرنامج كما بالصورة:

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

السبب:
1- ليس هناك مبرر الى إخراج هذه المجموعة خارج حدود التشغيل للمفتاح الخاص بها وحتى تكون هذه المجموعة متماثلة مع باقى المجموعات الخاصة بكل من ctr2, 3, 4

2- التأكد أنه فى حالة إذا كانت الأربعة مفاتيح Ctr1, 2, 3, 4 كلهم OFF يكون الخرج B7 = 0 أما فى حالة إذا كان أحدهم ON فيكون رمز الحساب ctr = 1 وبالتالى يبدأ البرنامج من البداية عن طريق نقطة الوصل A.

رابعا: تم تعديل الحد الأقصى للمتغير cycle من 255 الى 100 فى جميع برامج الماكرو الفرعية كما بالصورة:

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

السبب: حتى يكون المتغير pulse نسبة مئوية من المتغير cycle فتكون السرعة عبارة عن النسب المئوية (25% ,50% ,75%, 90%)

خامسا: تم تعديل زمن التأخير فى البرنامج الفرعى delay فى جميع اجزاء البرنامج الى برنامج فرعى للتأخير الزمنى كما بالصورة:

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

السبب: تعديل زمن التأخير من 4 ملى ثانية الى 3 ميلى ثانية حيث أن البرنامج الجديد للتأخير يحتوى على 3 تعليمات فقط كما بالصورة:

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

وبناء عليه فيكون التأخير الجديد 3 ميلى ثانية (إن صح التعبير فكان البرنامج السابق يكفى بعد حذف تعليمة منه) ولكن السؤال لماذا وضعت عداد يعد الى 8 وبعدها يتم تصفيره وخصوصا انه لايوجد رجوع لبدية العد كالمعتاد فعلى ذلك فإن السبب غير واضح لى....

أخى العزيز أرجو أن اكون وفقت فى التعليق على التعديلات واسبابها برجاء التصحيح وفى انتظار توجيهاتك .. شكرا لك وتقبل تحياتى...

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:32

ثانيا: تم تعديل أسم الدخل الرئيسى من main الى ON/OFF كما بالصورة:
السبب: حتى يتطابق مع أسم المفتاح الرئيسى A4 الخاص بالتشغيل والإيقاف.
نعم هذا سبب وسبب آخر : main مصطلح محجوز من بوست السي وخاص بفلوكود الافضل الابتعاد عنه وتركها له حتى لا يحدث للبرنامج تضارب تسميات..احتياط .
2- التأكد أنه فى حالة إذا كانت الأربعة مفاتيح Ctr1, 2, 3, 4 كلهم OFF يكون الخرج B7 = 0 أما فى حالة إذا كان أحدهم ON فيكون رمز الحساب ctr = 1 وبالتالى يبدأ البرنامج من البداية عن طريق نقطة الوصل A.
وهذا لضمان اطفاء خرج PWM من B7 اذا لم يكن أحد المفاتيح مشغلا وهكذا يتوقف المحرك لحظة رفع الضغط عن المفتاح ..احتياط ضروري واحييك لاكتشافك العلاقة بين المتغيرctr والعدد 1 والمفاتيح ..
خامسا: تم تعديل زمن التأخير فى البرنامج الفرعى delay فى جميع اجزاء البرنامج الى برنامج فرعى للتأخير الزمنى كما بالصورة:
السبب: تعديل زمن التأخير من 4 ميكرو ثانية الى 3 ميكرو ثانية حيث أن البرنامج الجديد للتأخير يحتوى على 3 تعليمات فقط كما بالصورة:
ولكن السؤال لماذا وضعت عداد يعد الى 8 وبعدها يتم تصفيره وخصوصا انه لايوجد رجوع لبدية العد كالمعتاد فعلى ذلك فإن السبب غير واضح لى....
المهم ليس في العدد المهم هو ان هذه الطريقة فيها تيسير لادخال التوقيت بطريقة سهلة : يكفي ادخال رقم مناسب ..
اما عدم وجود تعليمة الرجوع فهذا لان الشرط يتحقق بدونها اذن لا ضرورة لها وهكذا احسن كلما ابتعدنا عن رمز العودة كلما كان التحكم في الدقة أكبر
تعديل آخر خفي وأنت تعرف أهميته: ضبط الاعدادات الاساسية لتنفيذ برمجة على ارض الواقع ..
اكتفيت بهذه التوضيحات اما الباقي فقد كان كما ذكرت اخي بارك الله فيك
تحياتي ..
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:35

أخى العزيز

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

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:39

اخي الدارس ..
1/
العدد 8 ليس إلزاميا ..هو فقط مثال ..
العدد 8 = 8 تعليمات فارغة تقريبا من نوع: ctr_delay = 0
يعني زمن تاخير = 8 او 10 ميكروتانية بما ان المذبذب = 4 ميغاهرتز
واما طريقة العداد فليست الزامية كذلك. هي مفيدة اذا كان الزمن المطلوب كبيرا مثلا 15 ميكرو او 20 ميكرو .
تصور .. عدد التعليمات سيكون كبيرا.
كذلك فإن الطموح هو ان تتوفر لك يوما ما القدرة على ادخال زمن النبضات بواسطة كيباد (keypad) يجمع كل مفاتيح التحكم..
ومن بينها ادخال رقم للمتغير ctr_delay يحدد التردد المطلوب .
وعلى كل حال المهم انك تتوفر الان على خيارين وهذا احسن من خيار وحيد ..
---------------
2/
ا - المصطلحات التي اشتغلنا بها هنا
ب - ملف المشروع بعد ادخال المصطلحات المتداولة :
Duty_cycle بدل Pulse
Period بدل cycle
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:41

السلام عليكم ورحمة الله وبركاته
أستاذى بارك الله فيك
برجاء المساعدة فى عمل مشروع ساعة رقمية والاظهار على وحدة العرض الرقمية وذالك بواسطة الفلوكود فكيف أبداء
المشروع يعتمد على المتحكم 16f628a
بارك الله لك على المجهود الطيب
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:45

وعليكم السلام ورحمة الله وبركاته
أخي ميدو شراقي في بداية الدورة تجد دارة ساعة رقمية لكن بعرض LCD..
اذا سمحت ترسل لي الدارة التي تريد الحصول على برنامج لها بفلوكود ..
تحياتي
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:48



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

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

ارجو افادتى هل الخطأ فى توليد ملف الهيكس ام فى دائرة المحاكاة والثلاثة ملفات من هنا شكرا لك وتقبل تحياتى
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:49

السبب : ملف HEX فارغ تماما من اي سطر..
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:51

فعلا أخى الكريم السبب هو ملف الهيكس وجدته فارع ولا ادرى لماذا ولكن قمت بتوليده من جديد وحملته فى دائرة المحاكاة والحمد لله اشتغل بنجاح والملفات من هنا ولكن هناك بعض الملاحظات:

1- هناك مشكلة ظهرت من مفاتيح السرعات المختلفة حيث انها من النوع Bush فندما اضغط عليها يدور المحرك وبعد تركها يقف فقمت بدبديلها بمفاتيح toggel فهل هذا يجوز حيت ان المشكلة تم حلها.

2- هناك رقم بجانب المحرك كما بالصورة يزداد تدريجيا مع اختيار مفاتيح السرعة الأعلى فالأعلى هل هذا الرقم يمثل السرعة وان كان كذلك فتعتبر وحدتها لفة/الدقيقة ومعنى اشارة (+) ان السرعة فى اتجاه واحد وليكن مع عقارب الساعة مثلا.

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


3- هل هناك وسيلة للحماية من عدم الضغط على اكثر من مفتاح فى وقت واحد حيث انه هناك مشاكل تحدث عند القيام بذلك.... شكرا لك وتقبل تحياتى
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 11:57

[size=29]

اقتباس


1- هناك مشكلة ظهرت من مفاتيح السرعات المختلفة حيث انها من النوع Bush فندما اضغط عليها يدور المحرك وبعد تركها يقف فقمت بدبديلها بمفاتيح toggel فهل هذا يجوز حيت ان المشكلة تم حلها.

3- هل هناك وسيلة للحماية من عدم الضغط على اكثر من مفتاح فى وقت واحد حيث انه هناك مشاكل تحدث عند القيام بذلك.... شكرا لك وتقبل تحياتى
[/size] 2- هناك رقم بجانب المحرك كما بالصورة يزداد تدريجيا مع اختيار مفاتيح السرعة الأعلى فالأعلى هل هذا الرقم يمثل السرعة وان كان كذلك فتعتبر وحدتها لفة/الدقيقة ومعنى اشارة (+) ان السرعة فى اتجاه واحد وليكن مع عقارب الساعة مثلا.





1- نعم ممكن تغيير نوع المفاتيح ..
يمكن ايضا الاحتفاظ بنوع push لكن لابد من تعديل البرنامج حتى يخزن الضغطة الاولى
2- نعم هو يزداد مع ارتفاع السرعة هذا ما ألاحظه ولم ابحث حتى الان عن ماذا يمثل ..
3- في فلوكود كل الوسائل بيدك أخي الكريم : تفعل ذلك باضافة ادوات الاختبار ..
ويمكنك اجراء التجارب والتعديلات كما تحب وبسهولة وهذه ميزة العمل بفلوكود عن اللغات الاخرى
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:00

طريقة
استخدام مفتاح لحظي


هنا

في الملف
تجربة على فلوكود
وعلى بروتوس
ومسار خطي يساعد
على كتابة البرنامج بأية لغة برمجة أخرى
(اسمبلي، بيزك او سي..)
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:03


السلام عليكم
أخى العزيز/ بالنسبة لمشروع المفتاح اللحظى

يالنسبة لمشروع المفتاح اللحظى ارجو توضيح دور المتعير set المبين بالصورة

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

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

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:07

وعليكم السلام أخي نور
المتغير set يسجل اول نبضة على المفتاح (يضيف واحد)..بهذا يبقى عندي أثر لتلك النبضة حتى ولو رفع الضغط على المفتاح ..
حاول اولا ان تستفيد من الطريقة لتحويل المفاتيح من ماسكة الى لحظية..وبعد ذلك ربما تظهر افكار حول ماتطلب ..
بالتوفيق
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:09

شكرا اخى الكريم وجارى دراسة البرنامج
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:20

السلام عليكم إخوانى

اليكم اخوانى الأعزاء بيان يوضح اطراف الميكروكنتوللرودائرة لبرمجته

هذه صورة PIC16F84A توضح كافة أطرافه:
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
حيث يظهر طرفا التغذية :
الموجب:
VDD --- Pin 14 = +5V
الارضي (السالب):
VSS ---Pin 5 = 0V
---------------
2/ دارة الاختبار
لم أتقيد بدارة معينة لان الاختلاف في برمجة المنافذ يختلف من تطبيق إلى اخر.. نترك لكل تطبيق الحرية في برمجة هذا المنفذ اوذاك مرة مخرج واخرى مدخل .. احيانا نربطه مع ليد واحيانا مع عارضة سباعية واحيانا مع سويتش واخرى مع LCD ...وغير ذلك
---------------
3/ المبرمجة
هناك عدة انواع من المبرمجات .. منها ما يشترى جاهزا وأفضلها منتجات MICROCHIP
ومنها ما يمكن تصنيعه بسهولة مثل هاته المبرمجة المجربة:
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
من هذا الموقع:
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
تحياتي وأرجو لك التوفيق ..
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:53

إعادة رفع ملفات التطبيق : فلاشر 1 وفلاشر 2
فلاشر 01
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

فلاشر 02
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


المتحكم : PIC16F84A
نوع المذبذب : كوارتز 4Mhz
محتويات الملفات :
- رسمة الدارة
-ملفات المحاكاة
- ملفات المشروع بفلوكود
- ملفات شرح الخطوات بالصور PDF


هنا

الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:55


الوافد الجديد :

Flowcode V4 for PICmicros

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

برنامج بإمكانات قوية .. رحلة ممتعة
من
هنا

الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 12:58

إضاءة ليدات بصفة دورية - فلاشر 3
السلام عليكم ورحمة الله وبركاته

فلاشر 3

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


فى هذا المشروع تضاء الليدات بصفة دورية من اليسار الى اليمن دون توقف

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

صورة لمخطط تنفيذ المشروع ببرنامج فلوكود

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

صورة لمخطط محاكاة المشروع ببرنامج بروتس


الهدف: ادراك تنفيذ الحركة الضوئية فى الليدات
المتحكم المستخدم: PIC16F84a

ملف الفلوكود من هنا
ملف بروتس والهيكس من هنا

وبالتوفيق إن شاء الله



الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 13:01


إضاءة ليدات بصفة دورية - فلاشر 4
السلام عليكم ورحمة الله وبركاته

فلاشر 4

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


فى هذا المشروع تضاء الليدات بصفة دورية من اليمين الى اليسار دون توقف
( عكس مشروع فلاشر 3)

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

صورة لمخطط تنفيذ المشروع ببرنامج فلوكود

أما مخطط محاكاة المشروع ببرنامج بروتس فهو نفس الدائرة المستخدمة فى مشروع فلاشر 3


الهدف: ادراك تنفيذ الحركة الضوئية فى الليدات
المتحكم المستخدم: PIC16F84a

ملف الفلوكود من هنا
ملف بروتس والهيكس من هنا

وبالتوفيق إن شاء الله



الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 13:02

ضاءة ليدات بصفة دورية - فلاشر 5


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

فلاشر 5

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


فى هذا المشروع تضاء الليدات واحدة وراء الاخرى فى مجموعات بصفة دورية من اليسار الى اليمين دون توقف

زمن التأخير 150 ميلى ثانية

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

صورة لمخطط تنفيذ المشروع ببرنامج فلوكود


الهدف: ادراك تنفيذ الحركة الضوئية فى الليدات
المتحكم المستخدم: PIC16F84a

ملف الفلوكود من هنا


وبالتوفيق إن شاء الله

الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 13:03



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

ملف بروتس والهيكس الخاص بمشروع فلاشر 5

من هنا

مع التوفيق

الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 13:06

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

التحكم فى إضاءة ليدات بأستخدام سويتش

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]


فى هذا المشروع يتم التحكم فى إضاءة الليدات او إطفاءها باستخدام مفتاح (سويتش)
نفس مشروع فلاشر 3 ولكن مضاف اليه سويتش للتحكم
زمن التأخير 100 ميلى ثانية

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

صورة لمخطط تنفيذ المشروع ببرنامج فلوكود


الهدف: التعرف على كيفية استخدام سويتش للتحكم فى التشغيل والإيقاف
المتحكم المستخدم: PIC16F84a

ملف الفلوكود من هنا

وبالتوفيق إن شاء
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 13:09

محاكاة مشروع التحكم فى إضاءة ليدات باستخدام سويتش

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


محاكاة مشروع التحكم فى إضاءة ليدات باستخدام سويتش


[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

صورة لمخطط تنفيذ المشروع ببرنامج بروتس

ملف بروتس والهيكس الخاص بالمشروع من هنا

وبالله التوفيق



الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 13:10

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

السلام عليكم ورحمة الله وبركاته
سوف نكتفى بما تم عرضه من مشاريع للفلاشر وكان آخرها فلاشر 5
وكذلك تم عرض كيفية اضافة سويتش لفلاشر 3
وبذلك يكون عندنا 5 مشاريع مختلفة للفلاشر
بما فيهم فلاشر 1 وفلاشر 2 من اول صفحة لأخونا/ زكى شاكر
وهذا يكفى فى المرحلة الحالية ويمكن التطوير فى المستقبل
وان شاء الله فى المرحلة القادمة سوف اقوم بعرض مشاريع العدادات
أسأل الله ان يعيننى على ذلك وييسر لى الأمر
شكرا للجميع
الرجوع الى أعلى الصفحة اذهب الى الأسفل
م/سيدعبدالرحمن

المدير العام
 المدير العام
م/سيدعبدالرحمن


تاريخ التسجيل : 03/01/2008
تاريخ الميلاد : 13/01/1953
الجنس : ذكر
العمر : 71
نوع العمل/ : مهندس اتصالات
عدد الرسائل : 1696

برمجة الميكروكنترللر ببرنامج Flowcode  Empty
مُساهمةموضوع: رد: برمجة الميكروكنترللر ببرنامج Flowcode    برمجة الميكروكنترللر ببرنامج Flowcode  Icon_minitimeالسبت 9 أكتوبر - 13:12

تطبيقات على العدادات - counter 1

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

COUNTER 1

عداد تصاعدى من 0 الى 255 والتكرار

هذا المشروع عبارة عن عداد يقوم بالعد تصاعديا و باستمرار من 0 الى 255 عن طريق اجراء عملية حسابية على متغير
(العملية الحسابية هى الجمع)
( زمن التأخير 1 ثانية)

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]

صورة لمخطط تنفيذ المشروع ببرنامج فلوكود


الهدف: كيفية إجراء عمليات حسابية على متغير وتحويله الى عداد
المتحكم المستخدم: PIC16F84a

ملف الفلوكود من هنا

وبالتوفيق إن شاء الله

[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذه الصورة]
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
برمجة الميكروكنترللر ببرنامج Flowcode
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 3انتقل الى الصفحة : 1, 2, 3  الصفحة التالية
 مواضيع مماثلة
-
» Basic connecting of the microcontroller اساسيات توصيل الميكروكنترللر
» برمجة لوحة إعلانية باستخدام PIC16F84A
» تعلّم برمجة الميكروكنتروللر و محاكات الدوائر بالبروتوس
» مشروع اضاءة ليدات و للتدريب على برمجة البيك

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
Electronic Egyption Clup2 :: ۩۞۩ منتدى المتحكمات و الميكروكنتروللر ۩۞۩-
انتقل الى: