Bonjour à tous,
J'utilise un PIC18F14K50 et son ADC. Pour la tension de référence je prends FVR (Fixed Voltage Reference, soit la tension de référence interne).
Malheureusement je n'arrive pas à faire fonctionner la petite bête. Lorsque j'utilise Vdd comme réf' tout se passe bien, la mesure se fait et tout se trame comme il faut. Par contre dès que je choisi FVR la valeur est aléatoire.
J'ai fait le test sur carte et en simu'.
Voici le morceau de code que j'ai implémentée pour configurer l'ADC et FVR :
Est ce que quelqu'un voit un souci ou aurait rencontré le même problème que moi ?Code:/* Battery voltage */ TRISC7 = 1; // input for RC7 ANS9 = 1; // RC7 : analog ADCON2bits.ADCS = 0b110; // ADC clock source Fosc/64 REFCON0bits.FVR1EN = 1; // fixed Vref (1.024V) enabled while (REFCON0bits.FVR1ST == 0) // FVR stable bit {} REFCON0bits.FVR1S0 = 1; // gain : x1 (1024mV x 1) REFCON0bits.FVR1S1 = 0; ADCON1bits.NVCFG0 = 0; // Vref- to GND ADCON1bits.NVCFG1 = 0; ADCON1bits.PVCFG0 = 0; // Vref+ to FVR ADCON1bits.PVCFG1 = 1; ADCON0bits.CHS = 0b1001; // AN9 to ADC ADCON2bits.ADFM = 1; // result format, right justification ADCON2bits.ACQT = 0b010; // A/D conversion cycles : 4Tad
Merci par avance.
-----