Nybörjar problem med pic16f627 på k8048
-
- Inlägg: 593
- Blev medlem: 17 december 2005, 02:23:20
- Skype: crypto-master
- Ort: Nyköping
Jag får inte det att funka.
Skriver jag:
Då får jag fel vid kompileringen.
Men skriver jag:
Då funkar kompileringen men bara 1 diod tänds.
Skriver jag:
Kod: Markera allt
PORTB = 0b00111111 'Tänder portb
Men skriver jag:
Kod: Markera allt
PORTB = 1 'Tänder portb
-
- Inlägg: 593
- Blev medlem: 17 december 2005, 02:23:20
- Skype: crypto-master
- Ort: Nyköping
-
- Inlägg: 593
- Blev medlem: 17 december 2005, 02:23:20
- Skype: crypto-master
- Ort: Nyköping
-
- Inlägg: 593
- Blev medlem: 17 december 2005, 02:23:20
- Skype: crypto-master
- Ort: Nyköping
Ok, har inte kunnat svara på länge pga av mycket att göra under jul och nyår. Och så har jag varit bortrest ett tag också.
Först av allt så vill jag tacka er alla för hjälpen. Nu funkar det problemfritt.
Koden vart då så här:
Det är då morseloop: som är den omtalade.
Som ni kanske ser så har jag experimenterat lite med pwm och fått det att funka problemfritt på 1st lysdiod. Men jag skulle vilja få det som ett rinnande ljus effekt.
1.Fadea lysdiod 1 på portb.0
2.Fadea lysdiod 2 på portb.1
3.Fadea lysdiod 3 på portb.2....
osv ända upp till lysdiod nr 6.
Jag har funderat lite på om man kunde få en FOR-NEXT sats att ändra siffran i variabeln:
LED VAR PORTB.0
Tacksam för svar
Först av allt så vill jag tacka er alla för hjälpen. Nu funkar det problemfritt.
Koden vart då så här:
Det är då morseloop: som är den omtalade.
Kod: Markera allt
define osc 4
CMCON = 7
input PORTA.0
INPUT PORTA.1
INPUT PORTA.2
SW1 VAR PORTA.0
SW2 VAR PORTA.1
SW3 VAR PORTA.2
main:
IF SW1 THEN morseloop
IF SW2 THEN blinkningar
if sw3 then fade
GoTo main
fade:
led VAR portb.0
steps VAR WORD
cycles CON 2
up:
For steps=0 TO 255
PWM led,steps,cycles
Next
High led
Pause 200
low led
pause 200
high led
down:
For steps=255 TO 1 STEP -1
PWM led,steps,cycles
Next
Low led
Pause 2500
GoTo fade
morseloop:
TRISB = 0
Pause 1000
PORTB = %00111111 'Tänder portb
PAUSE 300
PORTB = 0 'släcker hela portb
PAUSE 300
PORTB = %00111111 'Tänder portb
PAUSE 300
PORTB = 0 'släcker hela portb
PAUSE 300
PORTB = %00111111 'Tänder portb
PAUSE 300
PORTB = 0 'släcker hela portb
Pause 800
PORTB = %00111111 'Tänder portb
PAUSE 900
PORTB = 0 'släcker hela portb
PAUSE 900
PORTB = %00111111 'Tänder portb
PAUSE 900
PORTB = 0 'släcker hela portb
PAUSE 900
PORTB = %00111111 'Tänder portb
PAUSE 800
PORTB = 0 'släcker hela portb
Pause 300
PORTB = %00111111 'Tänder portb
PAUSE 300
PORTB = 0 'släcker hela portb
PAUSE 300
PORTB = %00111111 'Tänder portb
PAUSE 300
PORTB = 0 'släcker hela portb
PAUSE 300
PORTB = %00111111 'Tänder portb
PAUSE 300
PORTB = 0 'släcker hela portb
Pause 2000 'Väntar 2 s
GoTo morseloop 'Loopar
blinkningar:
High PORTB.0 'Tänder lysdiod 1
PAUSE 40 'Väntar 0,040 s
LOW PORTB.0 'Släcker lysdiod 1
HIGH PORTB.5 'Tänder lysdiod 6
PAUSE 40 'Väntar 0,040 s
LOW PORTB.5 'Släcker lysdiod 6
HIGH PORTB.3
PAUSE 40
LOW PORTB.3
HIGH PORTB.1
PAUSE 40
LOW PORTB.1
HIGH PORTB.4
PAUSE 40
LOW PORTB.4
HIGH PORTB.2
PAUSE 40
LOW PORTB.2
GOTO blinkningar 'Loopar stycket med blinkningar
1.Fadea lysdiod 1 på portb.0
2.Fadea lysdiod 2 på portb.1
3.Fadea lysdiod 3 på portb.2....
osv ända upp till lysdiod nr 6.
Jag har funderat lite på om man kunde få en FOR-NEXT sats att ändra siffran i variabeln:
LED VAR PORTB.0
Tacksam för svar

- Jine
- Inlägg: 1795
- Blev medlem: 21 juli 2004, 20:25:56
- Skype: Jim.Nelin
- Ort: Trångsund, Stockholm
- Kontakt:
Heej Cryptomaster!
Inte visste jag att du hade hittat hit! (Eller va det jag som rekomenderade Elektronikforumet till dig?
)
Nog om det..
Ang koden..
Det går med FOR NEXT osv.. Dock så vet jag inte hur.. jag kom aldrig så långt i min pickariär
(Blinkande led, Blinkande led i olika hastigheter, Sen byggde ajg en robot
)
Inte visste jag att du hade hittat hit! (Eller va det jag som rekomenderade Elektronikforumet till dig?

Nog om det..
Ang koden..
Det går med FOR NEXT osv.. Dock så vet jag inte hur.. jag kom aldrig så långt i min pickariär


-
- Inlägg: 593
- Blev medlem: 17 december 2005, 02:23:20
- Skype: crypto-master
- Ort: Nyköping
Hehe jo jag har vart och smygtittat lite då och då här i några år, men jag vart inte medlem förens, hmm det var några månader sedan tror jag.
Och jo det borde ju gå att få ihop det med FOR-NEXT.
Liksom få en for next sats att ändra siffran i PORTB.0 till PORTB.1 Och sedan nästa gång den körst till PORTB.2 osv...
Och jo det borde ju gå att få ihop det med FOR-NEXT.
Liksom få en for next sats att ändra siffran i PORTB.0 till PORTB.1 Och sedan nästa gång den körst till PORTB.2 osv...
-
- Inlägg: 593
- Blev medlem: 17 december 2005, 02:23:20
- Skype: crypto-master
- Ort: Nyköping
Ok, jo det är pin numret som jag var ute efter att ändra.
Men ett alternativ är ju att skriva hela stycken med pwm och ändra PORTB.0 i varje, men det skulle alltså bli väldigt mycket kod.
En sån här för varje kod:
Men ett alternativ är ju att skriva hela stycken med pwm och ändra PORTB.0 i varje, men det skulle alltså bli väldigt mycket kod.
En sån här för varje kod:
Kod: Markera allt
fade:
led VAR portb.0
steps VAR WORD
cycles CON 2
up:
For steps=0 TO 255
PWM led,steps,cycles
Next
High led
Pause 200
low led
pause 200
high led
down:
For steps=255 TO 1 STEP -1
PWM led,steps,cycles
Next
Low led
Pause 2500
GoTo fade