A jak zapsat v C preruseni na vstupu RB0/INT
Tak jako zapisuješ ostatní přerušení…
Si to uprav jak potřebuješ
//High - priority service------------------------------------------------------------------------------------------------------------------
void interrupt high (void)
{
if (TMR3IE && TMR3IF)
{
TMR3_interrupt ();
TMR3IF = 0;
}
}
// Low-priority service--------------------------------------------------------------------------------------------------------------------
void interrupt low_priority low (void)
{
if (TMR1IE && TMR1IF)
{
TMR1_interrupt ();
TMR1IF = 0;
}
if (TMR0IE && TMR0IF)
{
TMR0_interrupt ();
TMR0IF = 0;
}
if (TXIE && TXIF)// vysílání dat
Tx_interrupt (); //TXIF = 0 se děje automaticky po uložení nových dat do TXREG;
if (RCIE && RCIF)// příjem dat
Rx_interrupt (); //se RCIF = 0 se děje automaticky po přečtení RCREG;
}
Diky tohle mi pomohlo tomuhle rozumím
administrator: příspěvek byl upraven
Předchozí příspěvky se necitují.
NEfunguje to nevíte včem je chyba?
[code]unsigned int i;
void blik() {
for (i=0;i<5;i++) {
PORTA.B0 = 1;
delay_ms(100);
PORTA.B0 = 0;
delay_ms(100);
}
}
void iterrupt (void) {
INTCON.GIE =0;
if(INTCON.INTF==1){
PORTA.B1=0;
blik();
}
INTCON.INTF = 0;
INTCON.GIE =1;
}
void main(){
TRISB = 1;
TRISA = 0;
OPTION_REG.INTEDG=0;
INTCON.INTE = 1;
INTCON.GIE =1;
while(1){
PORTA.B1=1;
}
}[/code]
Tak chybu jsem nasel špatně jsem napsal interrupt
administrator: příspěvek byl upraven
Předchozí příspěvky se necitují.