W
wcgan
Guest
Hi all,
Aš jau išbandyti šį kodą, kad sukurti nutraukti po timer1 perkrautas.tačiau jame nėra darbo.
Can anyone help ištaisyti savo kodą?arba duok man paprasta pavyzdys laikmatç interrrupt?
ačiū.
Kodas:
# include <timers.h>
# include <p18cxxx.h>tuščia timer1_isr (void);void main ()
(
TRISD = 0x00; / / RD4-7 "LCD, RD3 už SR_DATdA, RD2 produkcijos į CPLD, RD0 už nRESET produkcija
Latd = 0xFF;
PORTD = 0xFF / / RESET visada didelė galia
PORTEbits.RDPU = 0;OpenTimer1 (TIMER_INT_ON & T1_8BIT_RW & T1_SOURCE_INT & T1_PS_1_8 & T1_OSC1EN_OFF & T1_SYNC_EXT_OFF);
WriteTimer1 (0x00FF);RCONbits.IPEN = 1;
RCONbits.SBOREN = 0;INTCON = 0b10000000;
IPR1bits.TMR1IP = 1;
PIE1bits.TMR1IE = 1;o (1)
(
)
)tuščia high_ISR (tuščia)
(
_asm goto timer1_isr _endasm
)# pragma nutraukti timer1_isrtuščia timer1_isr (tuščia)
(
PIR1bits.TMR1IF = 0;
WriteTimer1 (0x00FF);PORTDbits.RD7 = ~ PORTDbits.RD7;
)
Aš jau išbandyti šį kodą, kad sukurti nutraukti po timer1 perkrautas.tačiau jame nėra darbo.
Can anyone help ištaisyti savo kodą?arba duok man paprasta pavyzdys laikmatç interrrupt?
ačiū.
Kodas:
# include <timers.h>
# include <p18cxxx.h>tuščia timer1_isr (void);void main ()
(
TRISD = 0x00; / / RD4-7 "LCD, RD3 už SR_DATdA, RD2 produkcijos į CPLD, RD0 už nRESET produkcija
Latd = 0xFF;
PORTD = 0xFF / / RESET visada didelė galia
PORTEbits.RDPU = 0;OpenTimer1 (TIMER_INT_ON & T1_8BIT_RW & T1_SOURCE_INT & T1_PS_1_8 & T1_OSC1EN_OFF & T1_SYNC_EXT_OFF);
WriteTimer1 (0x00FF);RCONbits.IPEN = 1;
RCONbits.SBOREN = 0;INTCON = 0b10000000;
IPR1bits.TMR1IP = 1;
PIE1bits.TMR1IE = 1;o (1)
(
)
)tuščia high_ISR (tuščia)
(
_asm goto timer1_isr _endasm
)# pragma nutraukti timer1_isrtuščia timer1_isr (tuščia)
(
PIR1bits.TMR1IF = 0;
WriteTimer1 (0x00FF);PORTDbits.RD7 = ~ PORTDbits.RD7;
)