قبلا در این نوشته با برنامه نویسی در محیط کدویژن (اتمل استودیو) و شبیه سازی در نرم افزار پروتئوس آشنا شدیم. در این مقاله 4 کد برای میکروکنترل AVR از نوع Attiny13 را در محیط نرم افزار کدویژن نوشته ایم و در پروتئوس تست کرده ایم. در پایان می توانید کدهای این پروژه ها را دانلود کنید. همانطور که قبلا گفته شد آشنایی مختصری با زبان برنامه نویسی C می تواند کمک زیادی به درک نحوه عملکرد این برنامه ها بکند.
LED چشمک زن
در این پروژه با اتصال یک ال ای دی به میکروکنترل Attiny13 شروع به چشمک زدن می کند.
while (1)
{
// Place your code here
PORTB.0=0;//led off
delay_ms(500);//0.5 second delay
PORTB.0=1;//led on
delay_ms(500);//0.5 second delay
}
}
RGB LED چشمک زن
با اتصال یک RGB LED به Attiny13 سه رنگ قرمز و آبی و سبز شروع به چشمک زدن می کند. پایه مشترک به زمین متصل می شوند و 3 پایه دیگر به پایه های Attiny13 متصل می شود.
while (1)
{
// Place your code here
//100 4
//010 2
//001 1
PORTB=4;
delay_ms(200);
PORTB=2;
delay_ms(200);
PORTB=1;
delay_ms(200);
}
}
اتصال 5 ال ای دی چشمک زن
در اینجا 5 ال ای دی به میکروکنترلر متصل شده است که به صورت چرخشی خاموش و روشن می شوند.
while (1)
{
// Place your code here
//10000 10
//01000 8
//00100 4
//00010 2
//00001 1
int i;
PORTB=0x1;
for(i=0;i<5;i++){
delay_ms(200);
PORTB<<=1;
}
}
}
Fading LED
در این پروژه با اتصال یک LED به Attiny13 به تدریج خاموش و روشن می شود.
while (1)
{
//fading in 1 second
float c=30;
int i,a,b;
// Fade-in
for (i = 0; i < c; i++) {
a=(float)i*(40.0/c);
b=40-a;
PORTB.0=1;
delay_ms(a);
PORTB.0=0;
delay_ms(b);
}
// Fade-out
for (i = c; i > 0; i--) {
a=(float)i*(40.0/c);
b=40-a;
PORTB.0=1;
delay_ms(a);
PORTB.0=0;
delay_ms(b);
}
}
}
کدهای پروژه های بالا را می توانید از اینجا دانلود کنید.
در همین رابطه: