با سلام یک چند روزه روی این میکرو پیک 16F876A گیر کردم لطفا کمک کنید
یک بر نامه ساده نوشتم تایمر یک رو بدون پرسکالر جور بارگذاری کردم که هر 10 میلی ثانیه سر ریز میکنه و یک بیت در هر وقفه عکس می شود و در برنامه در صورتی که این که بیت تغییر وضعیت دهد 3 تا متغیر word رو یکی اضافه می کنه وهر کدوم وقتی به عددی برسن یک بیت از پورت c رو عکس می کنن خود متغیر رو صفر می کنن و اینهاکلا چند شرطه پشت سر همه مشکل من اینه که این برنامه در داخل پروتیوس به درستی کار می کنه اما داخل میکرو درست کار نمی کنه درست کار نمی کنه یعنی اینکه وقتی به شرطهای اینکه word به عدد مورد نظر رسیده یا نه اگه رسیده بیت پورت سی که در دستور هست رو عکس کنه اما این کارو نمی کنه و برنامه به این خط نمی رسه برای اینکه آیا برنامه به این خط می رسه یا نه یک led گزاشتم که PORTB.0 رو می خونه ودر PORTC.3 می ریزه اما این کار انجام نمی شه اما یک دفعه بعد چند ثانیه ویا دقیقه می رسه وشروع به کار می کنه این کار رو با چند برنامه وحالت مختلف وبا سه میکرو انجام دادم وجواب همه همین بود با این تفاوت که در یکی کمتره تو اون دو تای دیگه اگه میکرو رو از روبرد برد در بیارم وجا بزنم دوباره قاطی می کنه وباید چند دقیقه صبر کرد که درست شه لطفا راهنمایی کنید اگه فکر می کنید گزاشتن برنامه در حل کمکی می کنه بگید بزارم
فقط کسی برای حل این مشکل راه حلی به ذهنش می رسه لطفا دریق نکنه چون بدجوری لنگم
بازم می گم برنامه سادست وبا پروتیوس به خوبی جواب می ده اما رو میکرو بگیر نگیر داره
تغذیه رو هم عوض کردم بازم حل نشد
کریستال رو هم عوض کردم بازم حل نشد
با دیز اسمبل کردن فایل هگز خروجی برنامه وفایل هگز میکرو نیز دنبال کردم اما از نظر اسمبلی که برنامه رو می خونم مشکلی نداره من با میکرو بیسیک فور پیک برنامه رو نوشتم اما بعید می دونم مشکل برنامه باشه چون هر بار اسمبلیش روچک می کنم ومی بینم مشکل نداره فکر می کنید هر سه میکرو خراب باشند
مشکل در تاریخ 28 آذر 1391 حل شد مشکل از ندادن مقدار اولیه صفر به متغیرها بود با تشکر

یک بر نامه ساده نوشتم تایمر یک رو بدون پرسکالر جور بارگذاری کردم که هر 10 میلی ثانیه سر ریز میکنه و یک بیت در هر وقفه عکس می شود و در برنامه در صورتی که این که بیت تغییر وضعیت دهد 3 تا متغیر word رو یکی اضافه می کنه وهر کدوم وقتی به عددی برسن یک بیت از پورت c رو عکس می کنن خود متغیر رو صفر می کنن و اینهاکلا چند شرطه پشت سر همه مشکل من اینه که این برنامه در داخل پروتیوس به درستی کار می کنه اما داخل میکرو درست کار نمی کنه درست کار نمی کنه یعنی اینکه وقتی به شرطهای اینکه word به عدد مورد نظر رسیده یا نه اگه رسیده بیت پورت سی که در دستور هست رو عکس کنه اما این کارو نمی کنه و برنامه به این خط نمی رسه برای اینکه آیا برنامه به این خط می رسه یا نه یک led گزاشتم که PORTB.0 رو می خونه ودر PORTC.3 می ریزه اما این کار انجام نمی شه اما یک دفعه بعد چند ثانیه ویا دقیقه می رسه وشروع به کار می کنه این کار رو با چند برنامه وحالت مختلف وبا سه میکرو انجام دادم وجواب همه همین بود با این تفاوت که در یکی کمتره تو اون دو تای دیگه اگه میکرو رو از روبرد برد در بیارم وجا بزنم دوباره قاطی می کنه وباید چند دقیقه صبر کرد که درست شه لطفا راهنمایی کنید اگه فکر می کنید گزاشتن برنامه در حل کمکی می کنه بگید بزارم
فقط کسی برای حل این مشکل راه حلی به ذهنش می رسه لطفا دریق نکنه چون بدجوری لنگم
بازم می گم برنامه سادست وبا پروتیوس به خوبی جواب می ده اما رو میکرو بگیر نگیر داره
تغذیه رو هم عوض کردم بازم حل نشد
کریستال رو هم عوض کردم بازم حل نشد
با دیز اسمبل کردن فایل هگز خروجی برنامه وفایل هگز میکرو نیز دنبال کردم اما از نظر اسمبلی که برنامه رو می خونم مشکلی نداره من با میکرو بیسیک فور پیک برنامه رو نوشتم اما بعید می دونم مشکل برنامه باشه چون هر بار اسمبلیش روچک می کنم ومی بینم مشکل نداره فکر می کنید هر سه میکرو خراب باشند
مشکل در تاریخ 28 آذر 1391 حل شد مشکل از ندادن مقدار اولیه صفر به متغیرها بود با تشکر





دیدگاه