Zdravim, dosli mi sily a tak bych se opet rad poradil, nefunguje mi while po stisknuti tlacitka a vyvolani interuptu, kod :
[code]
typedef enum {false,true}boolean;
boolean zmacknuto_gen = false;
ISR ( INT4_vect )
{
if (zmacknuto_gen){
zmacknuto_gen = false;
PORTE &= ~(_BV(7)); //vynuluje, zhasne cervenou LED na PE7
lcd_clrscr();
menu_start();
}
else{
zmacknuto_gen = true;
PORTE |= _BV(7); //nastavi, rozne LED
lcd_clrscr();
lcd_gotoxy(1,1);
lcd_puts("PROBIHA GENEROVANI");
}
}[/code]
v debugeru vsechno slape az na to, ze se to zacykli v tomto whilu bez ohledu na stav zmacknuto_gen, stejne tak kdyz to naprogramuji do MCU :
int main(void)
{
int i = 0;
while(1){
while (zmacknuto_gen){
PORTE |= _BV(7); //rozne
for(i=1;i<200;i++)
_delay_ms(10);
PORTE &= ~(_BV(7)); //zhasne
for(i=1;i<200;i++)
_delay_ms(10);
}
}
return (1);
}
administrator: přejmenováno z "nefunkcni while!"
administrator: přesunuto z "Ostatní"