La interrupción en el cambio es generalmente de medio byte de E / S, donde las interrupciones externas son generalmente para bits individuales. Como ya dijo, una cosa que debe hacer en el IOC ISR es determinar qué bit (o bits) cambió.
El COI también es un poco más difícil de usar, incluso más allá de eso. ¡Es imprescindible leer el puerto poco antes de habilitar la interrupción, y aún más importante LEER EL PUERTO dentro del ISR! Si tiene una señal de cambio lento y cree que puede establecer una bandera dentro del ISR y leer más tarde, fuera del ISR, ¡piense de nuevo! La lectura del puerto (o cualquier bit en el puerto, si recuerdo correctamente), restablece el pestillo en el comparador que desencadena la interrupción. Si no lo borra dentro del ISR, se activará inmediatamente cuando salga del ISR. Si recuerda hacer esto, todo está bien, pero si olvida y cree que puede leer el puerto cuando lo encuentre, se sentirá un poco frustrado hasta que recuerde hacer la lectura en el ISR.