G
Guma
Guest
Postavil jsem se tohoto programu, c, je to pod vedením pingpong, na pic 16f877a, ale program doesnt práce 100%, LED diody pohybovat na jedné straně a dont návratu, a já nevím proč.
Může mi někdo pomoct??
program je:# Include <htc.h>
int direction = 0;
__CONFIG (XT & WDTDIS & PWRTDIS & BORDIS & LVPEN & WRTEN & DEBUGDIS & DUNPROT & Odemknout);neplatné inittimer0 (void)
(
T0CS = 0;
T0SE = 0;
PSA = 0;
PS2 = 1;
PS1 = 1;
PS0 = 1;
TMR0 = 0;
)
neplatné initporto (void)
(
TRISD = 0;
PORTD = 0;
RD7 = 1;
)neplatné interrupcoes (void)
(
T0IF = 0;
T0IE = 1;
GIE = 1;
)void main (void)
(
inittimer0 ();
initporto ();
interrupcoes ();
while (1)
(
)
)neplatné přerušení my_isr (void)
(
if (směr == 0)
(
T0IF = 0;
PORTD = PORTD * 10;
if (RD0 == 1)
(
direction = 1;
)
)
jiný
(
T0IF = 0;
PORTD = PORTD/10;
if (RD7 == 1)
(
direction = 0;
)
)
)
Naposledy upravil Eraser dne 31 července 2008 21:19; edited 1 krát v celkové
Může mi někdo pomoct??
program je:# Include <htc.h>
int direction = 0;
__CONFIG (XT & WDTDIS & PWRTDIS & BORDIS & LVPEN & WRTEN & DEBUGDIS & DUNPROT & Odemknout);neplatné inittimer0 (void)
(
T0CS = 0;
T0SE = 0;
PSA = 0;
PS2 = 1;
PS1 = 1;
PS0 = 1;
TMR0 = 0;
)
neplatné initporto (void)
(
TRISD = 0;
PORTD = 0;
RD7 = 1;
)neplatné interrupcoes (void)
(
T0IF = 0;
T0IE = 1;
GIE = 1;
)void main (void)
(
inittimer0 ();
initporto ();
interrupcoes ();
while (1)
(
)
)neplatné přerušení my_isr (void)
(
if (směr == 0)
(
T0IF = 0;
PORTD = PORTD * 10;
if (RD0 == 1)
(
direction = 1;
)
)
jiný
(
T0IF = 0;
PORTD = PORTD/10;
if (RD7 == 1)
(
direction = 0;
)
)
)
Naposledy upravil Eraser dne 31 července 2008 21:19; edited 1 krát v celkové