Bonjour a tous
J'essaye pour la 1ere fois le convertisseur Analogique / Numérique sur un pic 16F877 .
Pour ceci , j'ai en entrée de RA0 / AN0 un pont diviseur comme ceci
5V > CTN 10K > Résistance 10K > masse 0V
L'entrée étant connectée au milieu du pont .
J'ai mis des leds sur le portC du pic pour voir le résultat de la convertion
mais je n'ai aucun changement quel que soit la tension d'entrée ...
L'init du pic
Et le prog. principal faisant la convertion et l'affichageCode:init bsf STATUS,RP0 ; aller en bank1 ; PORTA en entree analogique ... movlw b'00000000' ; entrees analogiques movwf ADCON1 ; resultat 8 bits sur ADRESH movlw b'00000000' ; movwf TRISA ; portA en entree movlw b'01000000' ; movwf ADCON0 movlw b'00000000' ; portB en movwf TRISB ; sortie movlw b'00000000' ; portC en movwf TRISC ; sortie movlw b'00000000' ; portD en movwf TRISD ; sortie movlw b'000' ; portE en movwf TRISE ; sortie bcf STATUS,RP0 ; aller en bank0 clrf PORTB clrf PORTC clrf PORTD clrf PORTE return
Merci de vos remarquesCode:start ; prog principal call tempo500ms ; tempo ; convertion analogyque numerique bsf ADCON0,ADON ; mise en route du CAN bcf ADCON0,CHS2 ; CHS2 = 0 bcf ADCON0,CHS1 ; CHS1 = 0 choix du canal bcf ADCON0,CHS0 ; CHS0 = 0 ici AN0 call tempo_20us bsf ADCON0,GO ; lancement de la conversion fin_can btfsc ADCON0,GO ; test fin de convertion goto fin_can movlw ADRESH movwf temperature ; copie resultat dans temperature movwf PORTC ; et affiche sur le PORTC bcf ADCON0,ADON ; arret du CAN goto start
Bonne journée
-----