Witam
Nie wiem dlaczego program zlicza mimo, że przycisk nie został wciśnięty. Zaraz po uruchomieniu chwile wyświetlane jest 0 a następnie program sam zaczyna liczyć. Co robię nie tak?
Nie wiem dlaczego program zlicza mimo, że przycisk nie został wciśnięty. Zaraz po uruchomieniu chwile wyświetlane jest 0 a następnie program sam zaczyna liczyć. Co robię nie tak?
#define F_CPU 4000000L
#include <avr/io.h>
#include <util/delay.h>
int8_t i,m, wysw,jednostki,dziesiatki;
unsigned char liczba_LED[10]={192,249,164,176,153,146,130,248,128,144};
void confIO(void)
{
DDRB=0xFF;
PORTB=0xFF;
DDRD=24;
PORTD=0x03;
}
int main(void)
{
confIO();
while(1)
{
_delay_ms(5);
wysw++;
switch(wysw)
{
case 1:
{
PORTB = liczba_LED[jednostki];
PORTD=16;
break;
}
case 2:
{
PORTB = liczba_LED[dziesiatki];
PORTD=8;
break;
}
case 3:
{
wysw = 0;
break;
}
}
if(!(PIND&0x01))
{
jednostki++;
if(jednostki==10)
{
jednostki=0;
dziesiatki++;
if(dziesiatki==10)
{
dziesiatki=0;
}
}
}
}
}