Schaltung
![]()  | 
      Die Schaltung besteht lediglich aus einem PIC16F876 (oder
anderer 16F87x)
und einer 20-MHz Taktquelle für den PIC (z.B. Quarzgenerator). Die
analoge Spannung wird an RA0 in den PIC gespeist. 
       Zur Anzeige wird der gemessene ADC-Wert 8-bittig an PortB ausgegeben und mit LEDs binär angezeigt. Zum Aufbau eignet sich z.B. die 16F876-Testplatine. beim Brennen des PIC ist der HS-Oszillator auszuwählen  | 
    
Programmablauf
Spannung messen:
Programmlisting
| ;**************************************************************
       ;* ;* Pinbelegung ;* ---------------------------------- ;* PORTA: 0 analoger Eingang ;* 1 ;* 2 ;* 3 ;* 4 ;* PORTB: 0 LED ;* 1 LED ;* 2 LED ;* 3 LED ;* 4 LED ;* 5 LED ;* 6 LED ;* 7 LED ;* PORTC: 0 ;* 1 ;* 2 ;* 3 ;* 4 ;* 5 ;* 6 ;* 7 ;* ;************************************************************** ; ; sprut (zero) Bredendiek 04/2002 ; ; ADC-Lernbeispiel: ; ; 16F876 wandelt die an RA0 anliegende Spannung in einen ; 10-Bit-Wert um ; die oberen 8 Bit des Wertes werden an PortB angezeigt ; ; Prozessortakt: 20 MHz ; Eingangsspannung: 0V ... 5V (Vss ... Vdd) ; ;**************************************************************
              
list
p=16f876         
ERRORLEVEL     
-302    
;SUPPRESS
BANK
SELECTION MESSAGES ;************************************************************** ;********************************************************** ; Variablen  ; Anfangsinitialisierung init  ; ADC einschalten  ; ADC-Eingang AN0 auswählen
       ; ADC speed für 20 MHz
einstellen  ; Daten linksbündig
       ;**********************************************************
       Main  ; Wert nach PortB schreiben
       ; Warten, damit der ADC sich erholen
kann  goto Main end ;**********************************************************  |