Anda di halaman 1dari 1

PIC023_WR.

c 25/01/2018 15:34:24

1:
2:
3: int counter = 0x00; //Variável de contagem auxiliar
4:
5: void interrupt() //Vetor de interrupção , endereço 04h de memória
a
6: {
7: if(T0IF_bit) //Houve o estouro do TIMER0?
8: {
9: counter++; //Incrementa o counter
10: TMR0 = 0x06; //Reinicia o registrador TMR0
11:
12: T0IF_bit = 0x00; //Limpa a flag para a próxima interrupção
13:
14: }
15:
16:
17: } //end interrupt
18:
19:
20:
21: void main()
22: {
23: OPTION_REG = 0x81; //Desabilita os resistores de pull-up internos
24: //Configura o prescaler para 1:4 associado ao TM
MR0
25: GIE_bit = 0x01; //Habilita a interrupção global
26: PEIE_bit = 0x01; //Habilita a interrupção por periféricos
27: T0IE_bit = 0x01; //Habilita a interrupção por estouro do TMR0
28:
29: TMR0 = 0x06; //Inicia a contagem em zero
30:
31: TRISB.RB4 = 0x00; //Configura o RB4 como saída digital
32: RB4_bit = 0x00; //Inicia RB4 em LOW
33:
34: while(1)
35: {
36: if(counter == 500) // 1us * 4 * 250 * 500 = 500ms
37: {
38:
39: RB4_bit = ~RB4_bit;
40: counter = 0x00;
41:
42: }
43:
44: } //end while
45:
46: } //end main

1/1 mikroC PRO for PIC by mikroElektronika

Anda mungkin juga menyukai