سلام، من از اتمگا64 استفاده کردم و کریستال خارجی 16 مگاهرتز قرار دادم، ولی وقتی از دستورdelay_ms استفاده میکنم برای تاخیر یک ثانیه ای، و برنامه رو پروگرم میکنم رو آی سی ، این تاخیر بسیار بیشتر از یک ثانیه طول میکشه، نمیدونم ایراد کارم کجاست؟
اطلاعیه
Collapse
No announcement yet.
دستور delay_ms
Collapse
X
-
پاسخ : دستور delay_ms
فیوزبیت های CKSEL رو 1111 کن . (برای فرکانس بالا باید اینا تنظیم شن)
اگه زیاد آشنایی با فیوز بیت نداری اینم یه دید بزن:
http://azarrobot.persiangig.com/document/avr/Fuse%20bits%20and%20lock%20bits%20(AVR).rar/download?a1b6
یا یه دید به این لینک هم بزن:
سلام به همه دوستداران میکروکنترلر و به ویژه دوستداران مبحث فیوز بیت ها. :bye یه مدت بود که خیلی می دیدم راجع به فیوز بیت ها سوال میشه شاید خیلی ها تو این موضوع مشکل داشته باشن. ولی دیگر نگران نباشید ما تصمیم گرفتیم از این پس تو این تایپیک به صورت مفصل راجع به فیوز بیت ها بحث کنیم تا مشکلی باقی نمونه. مطالبی که ارائه می شودجدیدترین ویرایش توسط hosseinam; ۱۱:۵۴ ۱۳۹۵/۰۷/۲۵.به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
(پیش به سوی هدف)
دیدگاه
-
پاسخ : دستور delay_ms
زبان برنامه نویسی شما چیه ؟
اگه فرکانس 16 رو رو ی فیوز بیت هم اجرا کردین !
بهتره تو یه حلقه دستور قطع و وصل یه خروجی رو بدین با تاخیر مورد نظر سپس خروجی رو با اسکوپ نشد با اسپیکر واگه باز نشد با ال ای دی و چیزی که به خروجی متصل می کنید بهتره با یه مقاومت 220 اهمی سری تا به خروجی میکر اسیب نزنه
حال اگه این تاخیر یک ثانیه باشه شما می تونید ببیند خروجی رو
واما اگه در واقع تاخیر همانی باشد که گفتین و مشاهده کردین برین سراغ delay_us
و اگه مشاهده کردین خروجی خیلی سریع تر از یک ثانیه می باشد ممکنه تاخیر مورد ذکر شما بخاطر تاخیر کلی برنامه باشهجدیدترین ویرایش توسط ssmq; ۱۳:۵۰ ۱۳۹۵/۰۷/۲۵.
دیدگاه
-
پاسخ : دستور delay_ms
این بنده دا مشخصه تازه شروع کرده به یادگیری بعید میدونم اسکوپ داشته باشه.
شما برنامتو بذار ببینیم مشکلش چیه . شاید مشکل برنامه نویسی داره .
مراحل کار ه به این شکله کهک
فرکانس رو در کامپایلرت(کدویژن) روی 16 قرار بده
برنامه رو BUILD کن تا کد هگز ساخته بشه
فیوزبیت ها رو هم روی 16 مگا هرتز تنظیم کن و فایل هگز رو به میکرو بفرست
دیدگاه
-
پاسخ : دستور delay_ms
زبان برنامه نویسی c تو محیط کدویژن هست، برای تست میکرو که ببینم پروگرم میشه یا نه فقط برنامه چشمک زدن ال ای دی رو نوشتم ، هنوز سراغ برنامه اصلی نرفتم. تو این برنامه چشمک زن متوجه شدم که delay یک ثانیه ای که قرار داده بودم بیشتر از یک ثانیه طول میکشه و فاصله بین روشن و خاموش شدن ال ای دی خیلی بیشتر از یک ثانیه است. فرکانس رو تو برنامه 16 مگ تعیین کردم، فیوز بیتها هم فقط ckopt را فعال کردم که صفر باید باشه. کد هگز هم داخل میکرو میفرستم،
پروگرمر من avr910 هست و آی سی مگا64 که از طریق isp پروگرم میکنمش.
دیدگاه
-
پاسخ : دستور delay_ms
اصلا بیا مطمعن شو که کریستالت با وجودش میکرو رو راه میندازه. یعنی بیا کریستالتو بردار ، ببین اصلا میکروت برنامه ریزی میشه یا نه ، یا چشمک میزنه ال ای دی یا نه ، اگه با برداشتن کریستال میکرو کار کرد ، یعنی هنوز میکرو برای کریستال خروجی برنامه ریزی نشده.به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
(پیش به سوی هدف)
دیدگاه
دیدگاه