Página 1 de 1
Interrupção por Mudança de Estado na POrta

Enviado:
05 Mai 2007 15:56
por Bardelli
Olá all
Por acaso existe no pic algum tipo de interrupção por mudança de estado em algum dos ports???
abraços

Enviado:
05 Mai 2007 17:44
por tcpipchip
Sim
PORTB4--7
"Interrupt on Change"
TCPIPCHIP

Enviado:
05 Mai 2007 19:40
por Bardelli
Vc nao teria um exemplo de como tratar essa interrupção?. Eu estou procurando no compilador PICC da CCS e não estou achando...
abraços

Enviado:
06 Mai 2007 10:31
por kaoalex
- Código: Selecionar todos
#include <16F628A.h>
#fuses INTRC_IO,NOWDT,PUT,BROWNOUT,NOLVP,NOMCLR
#use delay (clock=4000000)
////////////////////////////////////////////////////////////////////////////////
#int_ext
void int_ext_isr()
{
////////////////////////////////////
//COMANDO DE INTERRUPÇÃO
////////////////////////////////////
}
////////////////////////////////////////////////////////////////////////////////
void main()
{
enable_interrupts( global|int_ext ); //Habilita interrupções.
while(true);
}

Enviado:
15 Mai 2007 17:37
por carlos_bugs
sim, esse exemplo está correto. Porém az referencia a interrupção externo do pic, que por sinal pode ser ajusta na borda de subida e descida do sinal.
Porém há um outro recurso, como havia falado que é a interrupção por mudanca de estado de algum pino , como por exemplo ra4. Essa interrupção teoricamente, deveria ocorrer sempre que houvesse alguma mudanca no estado do pino selecionado, sendo ela na borda de subida ou descida.
valeu

Enviado:
16 Mai 2007 08:06
por fabim
a interrupção RA4--7..
a partir do momento que vc liga ela, ela guarda o valor atual em um latch, se houver alguma mudânça ela dispara e cai no vetor de interrução.
se o tratamento de interrupção for muito rapido, e vc ligar a interrupção antes do cara tirar o dedo da tecla, ele vai disparar a interrupção novamente.
cuidado.
fabim