Hallo zusammen,
ich habe hier ein problem mit dem Low Voltage Detection, ich bin mir nicht sicher ob der unten aufgeführte Code stimmt. Der Microcontroller PIC18F4520 die Entwicklungsumgebung ist MicroC. Die Batterie hängt an RA5, falls die Spannung auf 4.11V fällt soll eine Led am RB3 aufleuchten.
Danke Vielmals.
Code://LOW VOLTAGE DETECTION void InitLVD(){ ADCON1 = 0x00; //Analog I/O TRISA.B5 = 1; //Port RA5 als Eingang TRISB.B3 = 0; //Port RB3 als Ausgang PORTB.B3 = 0; HLVDCON.VDIRMAG = 0; HLVDCON.HLVDEN = 1; HLVDCON.IRVST = 0; HLVDCON.HLVDL3 = 1; //1100 für 4.11V grenzwert HLVDCON.HLVDL2 = 1; HLVDCON.HLVDL1 = 0; HLVDCON.HLVDL0 = 0; INTCON.GIE = 1; //Globale Interrupt einschalten INTCON.PEIE = 1; // PIR2.HLVDIF = 0; // PIE2.HLVDIE = 1; // IPR2.HLVDIP = 1; // } void interrupt_LVD() iv 0x000008{ if(HLVDIE_bit == 1 && HLVDIF_bit == 1){ ADCON1 = 0x0F; PORTB.B3 = ~PORTB.B3; HLVDIF_bit = 0; } } void main(){ InitLVD(); while(1); }







Zitieren


Lesezeichen