Forum: Mikrocontroller und Digitale Elektronik Probleme mit AD Wandler beim 16F876


von Tomeee (Gast)


Lesenswert?

Hallooo,
es hat wundervolle 32 Grad in meinem Zimmerchen und meine Nerven sind 
Aufgrund eines zickigen AD Wandlers leicht angespannt! Deshalb hoffe ich 
das ihr mir weiterhelfen könnt!
Also Problemstellung: PIC16F876 mit 20MHZ, ich will 2 AD Eingänge 
benutzen. Erste AD Wandlung scheint zu Funktionieren, bei der Zweiten 
stimmt der Wert nicht.
Es sollen die Eingänge AN0 und dann AN1 verwendet werden. Die Wait 
Funktion  hat eine Laufzeit von 200µs.
Bin für jeden Hinweis dankbar!!


Code:
1
READAD 
2
3
4
  CLRWDT      ;Watchdog CLR
5
6
  
7
; Anfangsinitialisierung
8
init
9
10
; ADC einschalten          ;Vorgabe Messen poti
11
    BSF    ADCON0, 0    ; ADON=1
12
13
14
15
; ADC-Eingang AN/RA0 auswählen
16
    BCF    ADCON0, 5    ; ADCHS2=0
17
    BCF    ADCON0, 4    ; ADCHS1=0
18
    BCF    ADCON0, 3    ; ADCHS0=0
19
20
; ADC speed für 20 MHz einstellen
21
    BSF    ADCON0, 7    ; ADCS1=1
22
    BCF    ADCON0, 6    ; ADCS0=0
23
24
; Daten linksbündig
25
    BSF    STATUS,RP0   ; Bank1
26
    BCF    ADCON1, 7    ; ADFM=0
27
    BCF    STATUS,RP0   ; Bank0
28
29
  call Waitms
30
31
;Eingangsspannung wandeln 
32
    BSF     ADCON0, 2     ; ADC starten
33
loop1
34
    BTFSC    ADCON0, 2    
35
    GOTO     loop1         
36
37
38
    movlw    ADRESH       ; obere 8 Bit auslesen
39
    movwf    P1        ; obere 8-Bit nach P1
40
41
42
43
  call Waitms    ;warten
44
45
46
; ADC-Eingang AN1 auswählen      ;Temp Messen
47
    BCF    ADCON0, 5    ; ADCHS2=0
48
    BCF    ADCON0, 4    ; ADCHS1=0
49
    BSF    ADCON0, 3    ; ADCHS0=1
50
51
; ADC speed für 20 MHz einstellen
52
;    BSF    ADCON0, 7    ; ADCS1=1
53
 ;   BCF    ADCON0, 6    ; ADCS0=0
54
55
; Daten linksbündig
56
;    BSF    STATUS,RP0   ; Bank1
57
;    BCF    ADCON1, 7    ; ADFM=0
58
;    BCF    STATUS,RP0   ; Bank0
59
60
  call Waitms    ;Warten
61
62
;Eingangsspannung wandeln
63
    BSF     ADCON0, 2     ; ADC starten
64
loop11
65
    BTFSC    ADCON0, 2   
66
    GOTO     loop11        
67
68
69
    movlw    ADRESH     
70
    movwf    T1

von Tomeee (Gast)


Lesenswert?

niemand mit einer idee?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.