Hi Leute, puhhhh ich habs endlich geschafft \
/ Die Led blinkt wenn ich den Taster 3mal betätigt hab! Schaut euch bitte meienn Code an, kann man da noch was verbesern? Was ist unnötig was könnte man rausnehemen.
Code:
;*****************************************************************
;
; Includedatei für den PIC16F628A
list p=16f628a
include "p16f628a.inc"
;
;*****************************************************************
; Configuration festlegen
; 8Mhz Resonator: Brown out Reset on, Data Protection off, Power up Timer on, Watchdog off, LV-Programmierung off
__CONFIG _BODEN_ON & _CP_OFF & _DATA_CP_OFF & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _MCLRE_OFF & _HS_OSC & _LVP_OFF
org 0x0000 ;Programmstart
goto MAIN
org 0x004 ; Interruptbehandlung
;****************************************************************
; Pinfunktion festlegen
;****************************************************************
MAIN
bcf STATUS,RP0
bcf STATUS,RP1 ; Bank0
movlw 0x07 ;Comperators off
movwf CMCON ;I/O Funktion ermöglichen
clrf PORTA
clrf PORTB ; alle Ausgänge Low
BCF STATUS, RP1 ;Bank 1 auswählen
BSF STATUS, RP0
movlw 0x01 ;Pins config
movwf TRISA ;PORTA RA0 Input, rest Output
movlw 0x00 ;PortB Output
movwf TRISB
bcf STATUS, RP0 ;Bank 0 auswählen
; hier bei Bedarf andere Register
; für Timer,CCP,EEprom,Usart,Vref
; initialisieren
;*****************************************************************
;Programm
;*****************************************************************
movlw 3
movwf 0x20 ; Speicherzelle wird die Zahl3 geladen
anf
btfsc PORTA, 0
goto anf
movlw 255 ;Zählregister
movwf 0x21
S1 movlw 255
movwf 0x22
S11 decfsz 0x22, 1
goto S11
decfsz 0x21, 1
goto S1
goto weiter
weiter nop
nop
nop
nop
btfss PORTA, 0
goto anf
decfsz 0x20, 1
goto anf
bsf PORTB, 0
clrw
end
Aber eine Sache stört mich immer noch, die LED leuchtet nicht so kräftig, wie bei den vorherigen Programmen die nicht funtkionierten, woran kann das liegen? Aufgebaut ist alles richtig, es muss am Programm liegen.
Mfg
Lesezeichen