Code:
void display_digits(){
port_b=SEG_MAP[x];
delay_us(5);
}
u ovoj funkciji drzis ledare upaljene prema SEG_MAP[6] nizu (cifre 1-6) 5
mikro sekundi .. ne 5 sekundi !!! 5 sekundi bi bilo ovako:
Code:
void display_digits(){
port_b=SEG_MAP[x];
delay_ms(5000);
}
tokom trajanja delay_ funkcije ne radis nista .. niti proveravas da li je pritisnut niti bilo sta drugo ..
Code:
while(input(PIN_B7)) i++;
dok je pritisnut taster - povecavaj i .. (kada dodje do 255 sam ce se i rotirati na 0)
Code:
srand(i);
r=rand();
setuj random seed na i pa pokupi random vrednost u r ... ovo je moglo da bude i preskoceno .. posto je svejedno I zavisno od toga koliko dugo drzis taster ceo random je potpuno nepotreban ...
Code:
x = r%6;
ovo dodeljuje X-u vrednost 0-5
Code:
display_digits();
ovde prikazes X+1 na kocki i sacekas 5 mikro sekundi
Code:
while(!input(PIN_B7)) delay_us(1);
cekaj dok neko ne pritisne taster
dakle ... ja i dalje ne kapiram sta hoces, ali evo ti objasnjenje sta se desava posto mi se cini da ti nije jasno ...
sto se tice tih 5 sekundi ... ovaj drugi kod ce ti pomoci .. samo onu cifru 9 promeni na manje/vise koliko oces da traje taj interval