MMtee
Üye
- Katılım
- 24 May 2012
- Mesajlar
- 3
- Puanları
- 1
- Yaş
- 31
Arkadaşlar Atmega16 ile Micro c AVR de yazılım yaptım.ama çalışmıyor.Eksikler var herhalde yardımcı olursanız sevinirim.
//micro_yazilim
void main()
{
int veri;
PORTA=0x00; // PORTA Giriş Olarak Ayarlanır.
PORTC=0xFF; // PORTC Çıkış Olarak Ayarlanır.
for( ; ; ) // Sonsuz Çevrim
// Sola Sürekli Yürü
{
if(PINA.B0==1)
for(veri=0x01; veri<=0x80; veri<<=1)
{
PORTC=veri;
Delay_ms(45);
}
}
//Sağa Sürekli Yürü
{
if(PINA.B1==1)
for(veri=0x80; veri>=0x01; veri>>=1)
{
PORTC=veri;
Delay_ms(45);
}
}
// Sağa - Sola Sürekli Sürekli Yürü
{
if(PINA.B2==1)
for(veri=0x01; veri<=0x80; veri<<=1)
{
PORTC=veri;
Delay_ms(45);
}
for(veri=0x80; veri>=0x01; veri>>=1)
{
PORTC=veri;
Delay_ms(45);
}
}
// 0-255 Binary Yukarı Sayıcı
{
if(PINA.B3==1)
for(veri=0x01; veri<=255; ++veri)
{
PORTC=veri;
Delay_ms(45);
}
}
// 255-0 Binary Aşağı Sayıcı
{
if(PINA.B4==1)
for(veri=255; veri>=0x01; --veri)
{
PORTC=veri;
Delay_ms(45);
}
}
// 0-99 BCD Yukarı Sayıcı
{
if(PINA.B5==1)
for(veri=0x01; veri<=99; ++veri)
{
PORTC=veri;
Delay_ms(45);
}
}
// 99-0 BCD Yukarı Sayıcı
{
if(PINA.B6==1)
for(veri=99; veri>=0x01; --veri)
{
PORTC=veri;
Delay_ms(45);
}
}
}
//micro_yazilim
void main()
{
int veri;
PORTA=0x00; // PORTA Giriş Olarak Ayarlanır.
PORTC=0xFF; // PORTC Çıkış Olarak Ayarlanır.
for( ; ; ) // Sonsuz Çevrim
// Sola Sürekli Yürü
{
if(PINA.B0==1)
for(veri=0x01; veri<=0x80; veri<<=1)
{
PORTC=veri;
Delay_ms(45);
}
}
//Sağa Sürekli Yürü
{
if(PINA.B1==1)
for(veri=0x80; veri>=0x01; veri>>=1)
{
PORTC=veri;
Delay_ms(45);
}
}
// Sağa - Sola Sürekli Sürekli Yürü
{
if(PINA.B2==1)
for(veri=0x01; veri<=0x80; veri<<=1)
{
PORTC=veri;
Delay_ms(45);
}
for(veri=0x80; veri>=0x01; veri>>=1)
{
PORTC=veri;
Delay_ms(45);
}
}
// 0-255 Binary Yukarı Sayıcı
{
if(PINA.B3==1)
for(veri=0x01; veri<=255; ++veri)
{
PORTC=veri;
Delay_ms(45);
}
}
// 255-0 Binary Aşağı Sayıcı
{
if(PINA.B4==1)
for(veri=255; veri>=0x01; --veri)
{
PORTC=veri;
Delay_ms(45);
}
}
// 0-99 BCD Yukarı Sayıcı
{
if(PINA.B5==1)
for(veri=0x01; veri<=99; ++veri)
{
PORTC=veri;
Delay_ms(45);
}
}
// 99-0 BCD Yukarı Sayıcı
{
if(PINA.B6==1)
for(veri=99; veri>=0x01; --veri)
{
PORTC=veri;
Delay_ms(45);
}
}
}