Hallo,
Ich brauche dringend hilfe beim debuggen dieses codes, nach ca 5-10 minuten gibt der adc falsche werte aus. Könnt ihr Fehler in der initialisierung finden?
mfg, spec
Code:list p=12F683 ;************************************************************** ;************************************************************** ;* ;* ;* ;* input: GPIO0 ;* output: GPIO1 ;* Takt: 8 MHz ;* ;* ;************************************************************** ; Includedatei für den 12F683 einbinden #include <P12f683.INC> ; Configuration festlegen ; bis 4 MHz: Power on Timer, kein Watchdog, XT-Oscillator __CONFIG _MCLRE_OFF & _PWRTE_OFF & _WDT_OFF & _INTRC_OSC_NOCLKOUT ;************************************************************** ;Variablennamen vergeben cycl_1 Equ 0x20 loop Equ 0x21 ; Zähler loops Equ 0x22 loops2 Equ 0x23 ; Zähler Byte Equ 0x24 Byte2 Equ 0x25 Byte3 Equ 0x26 status Equ 0x27 Zaehler Equ 0x28 ;************************************************************** ; los gehts mit dem Programm ; Pin RA2 auf Ausgabe stellen Init ;12F683 alle Comparator-/ADC-Eingänge auf Digital umschalten ; beginnt in der Bank 0 BCF STATUS,RP0 ;Bank 0 CLRF GPIO ;Init GPIO MOVLW 0x07 ;Set GP<2:0> to MOVWF CMCON0 ;digital I/O MOVLW 0x00 ;Left, Vdd Vref, AN0 MOVWF ADCON0 BSF STATUS,RP0 ;Bank 1 movlw B'01110101' ; interner Taktgenerator movwf OSCCON ; 8-MHz MOVLW 0x51 ;Set GP<1> to MOVWF ANSEL ;digital I/O MOVLW 0x01 ;Set GP<1> as output MOVWF TRISIO BCF STATUS,RP0 ;Bank 0 BSF ADCON0,0 Main BSF ADCON0,1 ;Start conversion Next BTFSC ADCON0,1 ;Is conversion done? GOTO Next







Zitieren
Lesezeichen