Avrei un ultimo problemino sempre con PIC16F84..... Non sò come si fa a gestire l'interrupt, ora mi spiego...... .
Nel codice assembler io sò come programmare i vari PIN in modo che riconoscano un Interrupt, per esempio su RB0 ma poi non sò come fare a specificare quali sono le istruzioni da fare eseguire al PIC in seguito a tale interrupt, ad esempio
premo un pulsante-> Interrupt-> Lampeggio di led
Come si scrive la routine di lampeggio in modo che il PIC la riconosca come routine di interrupt?
Mi pare che sul datasheet c'è scritto che tale routine va chiamata ISR (Interrupt Service Routine), ma se io volessi che premendo un secondo pulsante il PIC legga una seconda routine, diversa dalla prima, come la devo chiamare ISR2?
E' possibile implementare un tipo di codice che faccia in modo che mentre il PIC sta eseguendo uno specifico interrupt, alla pressione di un secondo pulsante, interrompa questo interrupt, passi ad un nuovo interrupt, poi finito quest'ultimo torni all'interrupt precedente, e poi torni infine al programma? E come le devo chiamare le varie routine?
Spero di essermi spiegato, grazie
|