list p=12f629 #include __CONFIG _CP_OFF & _CPD_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON & _MCLRE_ON & _EC_OSC ERRORLEVEL -302 ;remove message about using proper bank org 0x00 bcf STATUS, RP0 clrf GPIO ; Initialisiert GPIO movlw 07h movwf CMCON bsf STATUS, RP0 ; Waehle Speicher-Bank 1 movlw b'00011000' ; Ausgang GP0-GP2 movwf TRISIO ; Eingang GP3 und GP4 bcf STATUS, RP0 ; Register festlegen INDATA EQU 0x20 ; Hauptprogramm MAIN: movlw h'00' movwf INDATA btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 btfsc GPIO,4 call ADDINDATA btfss GPIO,4 rlf INDATA,1 rrf INDATA,1 return ADDINDATA: movlw b'00000001' iorwf INDATA,1 rlf INDATA,1 return end