Šema:

#include "D:\Documents and Settings\user\Desktop\LED_Disp.h"
int i=0;
void main() {
TRISB = 0;
PORTB = 0;
TRISA = 0x03;
PORTA = 0x00;
for(;;) {
if(i>9)
i=0;
PORTB=LED_Disp(i);
if(i==0)
PORTA.F2=~PORTA.F2;
if(PORTA.F0)
Delay_ms(500);
else
if(PORTA.F1)
Delay_ms(2000);
else
Delay_ms(1833);
i++;
}
}
1. Zašto je greška ako se "i" deklariše kao lokalna promenljiva unutar main-a?
2. Zašto se pritiskom na odgovarajući taster ne menja brzina brojanja, nego je stalno 500ms? Ako napišem if(!PORTA.F0) onda je stalno 1833ms. Meni bi bilo logično da 500ms bude dok je pritisnut taster T1, a 2000ms dok je pritisnut T2, a ako nije pritisnut ni jedan od njih onda 1833ms. Zašto nije tako?