Pesquisar neste blog

04/08/2020

Interrupção com PIC 16F628A

Software: proteus 2010




















Código feito em CCS C Compiler

#include <16f628a.h>
#fuses intrc_io, nowdt, mclr//fuses bits
#use delay(clock = 4MHz)
#use fast_io(a)//diretiva otimiza o programa e evita mudanças no decorrer
#use fast_io(b)

#INT_RB // interrupucao
//função de interrupção
void RB(void){
   
   output_high(pin_a0);
   delay_ms(500);
   output_low(pin_a0);
   delay_ms(500);
   
}
void main(void){
   //tris_a tudo como saída
   set_tris_a(0x00);
   set_tris_b(0xf0);//metade como entrada e metade como saída
   output_b(0x00);//para todo port
   
   //senão colocar enable, nenhum tipo de interrupção irá acontecer
   ENABLE_INTERRUPTS(INT_RB);//habilitando a interrupção RB
   ENABLE_INTERRUPTS(GLOBAL);//HABILITANDO A INTERRUPÇÃO GERAL
   
   while(true){
   
      output_b(0xff);//vai colocar tudo como saída
      delay_ms(500);
      output_b(0x00);//
      delay_ms(500);
      
   }
}



Nenhum comentário: