سلام
اين برنامه اي كه ضميمه كردم سه تا تسك داره.pwm,lcd2.8,7 segment.اين برنامه كامپايل و پروگرم ميشه ولي روي هدر برد اجرا نميشه .مشكلش كجاست؟ اگه دوستان راهنمايي كنن ممنون ميشم
سلام
اين برنامه اي كه ضميمه كردم سه تا تسك داره.pwm,lcd2.8,7 segment.اين برنامه كامپايل و پروگرم ميشه ولي روي هدر برد اجرا نميشه .مشكلش كجاست؟ اگه دوستان راهنمايي كنن ممنون ميشم
قبل ازاینو بنویسکد:os_sys_init(task_init);کد:SystemInit(); /* initialize the Coretx-M3 processor */
سلام
درست نشد . بازم رو هدر اجرا نمیشه
فکر کنم هدر Retarget ایراد داره. با سیمولاتور دیباگ کردم رفت اینجا
گیر کرد، منم به جای 1، صفر نوشتم و تو سیمولاتور کیل کار کرد. حالا نمیدونم دیگه اون تابع واسه چیه. و این کاری که کردم درسته یا نه.(دوستان نظر بدن)کد:void _sys_exit (int return_code) { /* Endless loop. */ while (1); }
تست کن و جوابشو خبر بده.
ویرایش توسط zoz_zozm : 25-08-2013 در ساعت 00:44
pwm رو به RGB وصل كردم.موقعي كه اون 1 رو 0 كردم بعد از پروگرم كردن فقط rgb روشن شد البته كليد هايي هم كه براش تعريف كرده بودم كار نميكنن.وقتي هم كه اولويت ها رو تغيير ميدم rgb و 7seg تا حدودي كار ميكنن (روشن ميشن) ولي lcd نه(صفحه سفيد ميمونه)
دوست عزیز شما اندازه استک رو کم کردین(byte 196) و در چند اجرای اول باعث سرریز شدن استک میشه.
رو زیاد کنید مثلا بذارید رو 512 یا بیشتر.کد:Task Stack Size
ویرایش توسط zoz_zozm : 25-08-2013 در ساعت 02:41
عدد هاي زيادي رو امتحان كردم ولي باز جواب نميده
ديباگ كه ميكنم روي خط زير ميمونه
os_sys_init(task_init);
داخل سیمولاتور کیل جواب میده؟
اون خط پست 2 رو اضافه کردین؟
از دیباگ Os support رو باز کن بعد RTX task.. رو بزن تا اجرای تسک ها رو ببینید.
شما این برنامه رو اجرا کن ببین جواب میده یا نه.
از خط اول كه system init هست رد ميشه و rgb روشن ميشه با اينكه اولويت ها برابرن و روي os_sys_init(task_init وايميسه و دكمه هاي ديباگ غير فعال ميشه
نه كار نميكنه بازم.حالا بايد چند تا تسك ديگه ام اضافه كنم !!!!!!!!!
خدا به دادم برسه.علي آقا واقعا ممنون كه به من كمك ميكني دادا
تو دیباگ کردن داخل یکی از تسک ها که فکر میکنی اجرا نمیشه یه بریک پوینت بذار بعد دیباگ کن ببین بازم روی اون خطی که گفتی گیر میکنه یا نه.
زياد با ديباگ آشنا نيستم.بريك پوينت همون دايره قرمزه س؟؟؟
اون رو اول هر تسكي كه ميذارم ميره به صفحه ي startup و تو خط 254 گير ميكنه
بله همونه. بریک پوینت رو داخل حلقه while بذار.
هر جا ميذارم باز برميگرده به خط 254 استارآپ
وقتي اولويت هر تسك رو زياد ميكنم ديگه تو startup گير نميكنه. rgb رو تونستم ديباگ كنم و مشكلي نداشت ولي دو تاي ديگه درست جواب نميدن تو ديباگ كه احتمالا از ناشي بودن منه.
من سخت افزار شما رو ندارم و با کیل شبیه سازی می کنم موردی نداره. شما قدم به قدم دیباگ کنید (f11) ببینید کجای برنامه گیر می کنه. (رجیستر استفاده شده رو هم ببینید شاید وقفه ای چیزی میاد و شما فلگش رو پاک نمی کنین. )