سلام
عید همتون مبارک باشه (عکس گل)
من اینا رو تو وایل گذاشتم :
PORTA=0x00;
delay_ms(500);
PORTA=0xff;
delay_ms(500);
اما بیشتر از نیم ثاینه تاخیر داره تو هر بار :cry:
کریستال رو هم رو 4 مگ گذاشتم . داخلی .
اتمگا 16 هم دارم .
مشکل از کجایه ؟
کلا با این کلاکها مشکل اساسی دارم . هیچ جور نتونستم بفهمنمشون .
می تونی بگی دقیقا چه قدر است؟
چون بیشتر وقت ها خطا داره از کریستال داخلی هم که خودش خطا داره بهتره
از چند dely باز زمان کمتر توی یک for استفاده کنی یا از timer
کریستال که نداره . با کریستال داخلی خود میکرویه .
این 500 میلی رو حدود 2-3 ثانیه طولش می ده !
چون از کریستال از مدار RC داخلی استفاده میکنه خطاش از خارجی بیشتر
از یک for با تکرار 50 بنویس و توش dely 10ms بزار ببین خوب می شه
چون هرچی زمان رو بیاری پایینتر خطا کمتره
خطا هر چی هم باشه به این حد نمی رسه شما احتمالا یا فرکانس رو اشتباه انتخاب کردی یا کمپایلر اشتباه فرکانس رو اشتباه متوجه شده
باید ببینی میکرو با چه فرکانسی داره کار میکنه و چه فرکانسی رو به کمپایلر معرفی کردی این دوتا باهم برابر نیست که این اتفاق می افته
mochen جان خطا که نیست که . این همه خطا ؟!
هادی جان ممنون
من میکرو اتمگا 16 دارم که تو کدویژن بهش 4 مگ دادم . از کجا بدونم درست فهمیده کامپایلر و بقیه حرفهای شما ... ؟
اگه تو کد ویژن بهش 4 دادی باید فیوز بیت هارو هم جوری تعیین کنی که میکرو با 4M کار کنه اگه فیوز بیتها رو تغییر ندادی 1M به صورت پیش فرض هست
سلام
هادی جان ممنون
تو کدویژن بهش 1 مگ دادم درست شد :wink:
حالا میشه باز کمکم کنین که چه جوری 4 مگ بدمش ؟ فیوز بیتا رو چه کنم ؟
اگه 12 مگ یا 16 بخام چی ؟ کدوما با خود میکرو میشه ؟ کدوما با کریستال خارجی ؟
برای فیوز بیت ها هم بستگی به پروگرامر داره بعضی ها از یه لیست می تونی انتخاب کنی بعضی هم باید صفر و یک وارد کنی که من از تو دیتاشیتش یه نگاه می کنم برای اینکه بفهمی درست داری تنظیم میکنی یا نه یه بار بخونش باید روی یک مگ تنظیم شده باشه
با خود اسیلاتورداخلی تا 8 بیشتر نمی تونی بدی برای بیشترش حتما باید از نوع معمولی استفاده کنی (غیر L) و کریستال خارجی