ciao!
scuste la domanda quasi banale: nei pic16 (in particolare 16f877) cosa succede quando scatta un interrupt tipo ext0 e c'è una delay di tot milli-secondi in corso?
situazione:
- la isr dell'int_ext0 fa giusto partire un impulso da 1ms su una uscita del micro; int_ext0scatta sul fronte di salita
- l'int0 viene chiamato 100 volte al secondo
mi capita una cosa "strana"... se il main() è semplicemente un loop infinito, quando scatta int_ext0 tutto va bene (int0 e impulso generato sono perfettamente sincronizzati, lo verifico con l'oscilloscopio); se invece nel main() faccio lampeggiare un led (led_on --> attesa 25ms --> led_off --> attesa 725ms) perdo la sincronizzazione fra int_ext0 e l'impulso che la isr genera!
ho provato anche ad usare l'interrupt del modulo pwm/capture/compare... impostando il ccp1 come capture_on_rising ma ottengo lo stesso risultato!!!
invece accorciando l'impulso che genero nella ISR a 500us (anziche 1ms), c'è sincronismo
cos'è che non sto considerando? dove sbaglio???
grazie!
-ice-