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.
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.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
Mfg







Zitieren
Lesezeichen