Goede middag,
Ik heb een poging gedaan om een stukje code te schrijven voor een PIC16F628A.
Wat moet het doen doormiddel van e druk op de knop nadat ik er spanning op heb gezet moet de witte led in een pwm cyclus komen.
Echter het probleem is als ik de spanning erop zet gelijk de led begint in zijn pwm cyclus ZONDER dat ik op de drukknop heb gedrukt.
Dit is de code:
DEVICE 16F628A ;Gebruik een 16F628A type
CONFIG INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF
ALL_DIGITAL TRUE ;Alle ingangen digitaal
SYMBOL LED1 = PORTA.0 ;Poort A.0 heeft nu de naam LED1
SYMBOL S1 = PORTB.0 ;Poort B.0 heeft nu de naam S1
DECLARE PORTB_PULLUPS ON ;On-chip pull-up weerstanden actief
CLEAR ;Wis alle RAM geheugen
;Variabele declareren
DIM Duty AS BYTE ;'Duty' is de variabele die de snelheid v.d. LED bepaalt
;Hoofdprogramma
WHILE 1 = 1 ;Oneindige lus
IF S1 = 0 THEN HIGH LED1 ;S1 gesloten (=laag) LED1 aan
FOR Duty = 1 TO 255 ;LED gaat steeds feller branden tot maximum (= 255)
PWM PORTA.0, Duty, 5 ;Stuur 5 pulsen met pulsbreedte 'Duty', naar PORTA.0
NEXT
FOR Duty = 254 TO 0 STEP -1 ;LED gaat steeds minder fel branden tot (=0)
PWM PORTA.0, Duty, 5 ;Stuur 5 pulsen met pulsbreedte 'Duty', naar PORTA.0
NEXT
WEND
END
Wiee weet wat er mis gaat want ik zie het even niet of heb ik wat over het hoofd gezien of nog niet geplaatst qua tekst in deze code.
Ik hoor graag van jullie.
gegroet.
Probleempje met source code voor een pic16F628A
-
- Berichten: 18
- Lid geworden op: zo 11 mar 2007, 22:42
- Locatie: Onderwater . .. .
Re: Probleempje met source code voor een pic16F628A
De fout zit'm in het if statement, want zoals jij het doet is alleen het aan gaan van de led afhankelijk van de stand van S1.computerman30 schreef:Echter het probleem is als ik de spanning erop zet gelijk de led begint in zijn pwm cyclus ZONDER dat ik op de drukknop heb gedrukt.
Code: Selecteer alles
IF S1 = 0 THEN
HIGH LED1
FOR Duty = 1 TO 255
PWM PORTA.0, Duty, 5
NEXT
FOR Duty = 254 TO 0 STEP -1
PWM PORTA.0, Duty, 5
NEXT
ENDIF
-
- Berichten: 18
- Lid geworden op: zo 11 mar 2007, 22:42
- Locatie: Onderwater . .. .