-
ساده ترین پروژه با AVR
سلام دوستان
من تازه با avr آشنا شدم. رفتم قطعات مورد نیاز رو تهیه کردم, یه ATMEGA8, چند تا LED, یه BreadBoard، ریگلاتور ولتاژ 5 ولت،یه پروگرامر، بعد از یه سایت یه برنامه خیلی ساده گرفتم که یه LED چشمک بزنه بعد کامپایل کردم و با پروگرامر ریختم تو ATMEGA8 ، ولی وقتی مدار رو وصل می کنم LED چشمک نمیزنه همش روشنه همه ی پایه های میکرو هم جریان دارد یعنی به هر پایش وصل می کنم باز LED روشنه برنامه ش رو زیر نوشتم ببینید کسی می تونه این تازه کار رو راهنمایی کنه عکس مداری که سر هم کردم رو هم ضمیمه می کنم
مرسی از کمکتون :11::10:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
-
اینم کدی که نوشتم
کد:
#include <io.h>
#include <delay.h>
void main()
{
while (1)
{
DDRD.0=0 ;
PORTD.0=1;
delay_ms(200);
PORTD.0=0;
delay_ms(200);
}
}
-
سلام
DDRD=0; يعني ورودي ، نه خروجي ! اما مسئله اين نيست. احتمالا مدار مشكل تغذيه داره كه همه پايه ها روشن هستن.
ولتاژ ورودي رگلاتور بين 7.5 تا 19 ولت بايد باشه.
ولتاژ بين پايه هاي مثبت و منفي IC رو هم ببين چند ولته. اگه بيشتر از 5.5 باشه احتمال سوختن IC هست.
در ضمن يه خازن حدود 10 ميكرو يا بيشتر بايد به خروجي رگلاتور وصل كني.
ممكنه تنظيمات فيوزبيت رو اشتباه دستكاري كرده باشي.
هيچ وقت LED رو مستقيما به هيچ خروجي وصل نكن مگر اينكه مقاومت گذاشته باشي. ( حدود چند صد اهم )
اگه پايه ريست رو به مثبت وصل كني بهتره .
ببينم فايل <mega8.h> رو به برنامه معرفي نكردي ؟ ( <include <mega8.h# )
-
مشکلم حل شد همونظور که گفتی یا از فیوز بیت ها بوده یا از تغذیه ولی نفهمیدم از کدوم ولی درست شد.
میشه حالت پیش فرضی که فیز بیت های ATMEGA8 باید باشه رو بگی؟ چون دستکاری کردم و نمیدونم باید کدوم صفر و کدوم یک باشه و اصلا برای چی هستن
مرسی
-
من یه سوالی در مورد ریگلاتورت داشتم می شه بگی GND و VCC رو به + وصل شدن یا منفی
-
در مدارهاي معمولي كه دو قطب مثبت و منفي مدنظر هست ، منظور از GND يعني همون منفي ، مثبت هم VCC
اگه رگلاتور هاي سري 78XX مثل 7805 رو از مقابل نگاه كنيم ( طرف اسمش ) ، پايه سمت چپ ورودي مثبت هست ، پايه سمت راست خروجي مثبت و پايه وسط ( اتصال به بدنه ) منفي يا همون GND هست كه بين ورودي و خروجي مشتركه. اتصال خازن چند ميكروفاراد بين پايه هاي خروجي فراموش نشه !