قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

   

مشتاق الله
:: مهندس متميز ::
تاريخ التسجيل: Oct 2015
المشاركات: 619
نشاط [ مشتاق الله ]
قوة السمعة:
قديم 21-03-2017, 09:48 PM المشاركة 9   
sun



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

الحمد لله الذى بنعمته تتم الصالحات , هذا من فضل ربى ,

ما فائدة هذه العلامة في الكود ام انها صقطت سهوا ! هي في يداية حلقة while الاولى

هذه العلامة معناها NOT ,

كود:
while( !((portb.f1==0) && (portb.F1==0) && (portb.F7==1)) ) ;
و معنى هذا السطر ( بينما لم يتحقق الشرط انتظر و لا تنتقل الى الامر التالى حتى يتحقق الشرط ) فاذا تحقق الشرط تنتهى عملية الانتظار ثم يدخل فى السطر التالى :

كود:
 while( ((portb.F1==0) && (portb.F1==0) && (portb.F7==1)) ) ;
و معناه (اذا تحقق الشرط انتظر ولا تنتقل للامر التالى حتى ينتهى وجود الشرط ) فعندما ينتهى ينتقل للسطر التالى و الذى هو استكمال حلقة for loop .


و ممكن كتابة الكود بشكل ابسط لحلقة while كالتالى :
كود:
while( ((portb.F1==0) && (portb.F1==0) && (portb.F7==1)) ) {    }
و هو يوضح معنى عملية الانتظار السابقة و معناها : بينما هذا الشرط صحيح TRUE ادخل فى حلقة دوارة لا نهائية(اى انتظر) حتى يتحول الشرط الى FALSE اى ينتهى حدوثه , ثم انتقل للسطر التالى .

و لو كنت مبدئ و لست مضطر لاستخدام ال PIC فانصحك بالتحول لل AVR ان كان متوفر لديك , و هما الاثنين شركة واحدة الان.


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

اللهم حياة ترضيك و ميتة تضحكك



اعلانات

رسول العراق
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2009
المشاركات: 90
نشاط [ رسول العراق ]
قوة السمعة:
قديم 21-03-2017, 11:21 PM المشاركة 10   
افتراضي


بارك الله فيك استاذ مشتاق الله على هذا التوضيح

بصراحة انا مبتدئ ولكني اجد mikroC اسهل علي

نعم استاذي AVR متوفرة عندنا اكثر من ال PIC وبأسعار جيدة

ان شاء الله احاول في ال++C والله كريم

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

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

انا اثقلت عليك استاذ اعذرني

الامر الثاني بعد اتمام الامر الاول وفقك الله

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

مشتاق الله
:: مهندس متميز ::
تاريخ التسجيل: Oct 2015
المشاركات: 619
نشاط [ مشتاق الله ]
قوة السمعة:
قديم 22-03-2017, 12:15 AM المشاركة 11   
sun


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

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

ثانيا نرجع للمشروع , برجاء شرح المشروع باستفاضة لانه بعد فهم الهدف منه ممكن نغير الكود بشكل افضل , لان طلبك الاخير سيكون معقد فى حله .


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

اللهم حياة ترضيك و ميتة تضحكك




رسول العراق
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2009
المشاركات: 90
نشاط [ رسول العراق ]
قوة السمعة:
قديم 22-03-2017, 10:03 AM المشاركة 12   
افتراضي


السلام عليكم

اذا كان هذا الشرط يعقد الكود لنأجله الان لأن اريد ان افهم الكود بشكل جيد

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

يشرح فيها ما قلت حضرتك وهذا رابط قناته على اليو تيوب

https://www.youtube.com/channel/UCqS...mbWzOx8G3S9rpw

وبالنسبة للكود سأحاول قدر الامكان وأذا لم أفلح اعود لحضرتك

أنا اشكرك استاذي لما قدمت لي من مساعدة حفظك الله



الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 09:31 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)