Knight Rider PicBasic aanpassen

Alle vragen m.b.t. lichteffecten m.b.v. lampen, led's etc.
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Geeft niks,
Aanzetten is 4x per cycle, en uitzetten is 1x per cycle en dat 4x.

En toch gaat het niet uit gefade, juist maar zwakjes uitfade dan uit.

Zit er ergens rede in het code?

Edit:

Denkt dat ergens ligt in PWM_Lus
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Ik heb de code:

PWM_lus:
For index = 0 To (snelheid *4)

Verandert naar:

PWM_lus:
For index = 0 To fade

Fade staat als byte en is ingesteld naar 2000.

Hij gaat inderdaad zoals stynus gezegt had,
Hij brand zwakker, maar gaat wel mooi uit faden.
Gompy

Bericht door Gompy »

Laat zien dan :D
Gebruikersavatar
Stynus
Site Admin
Site Admin
Berichten: 5971
Lid geworden op: vr 16 mei 2003, 20:45
Locatie: Overpelt (België)
Contacteer:

Bericht door Stynus »

captain nguyen schreef: Fade staat als byte en is ingesteld naar 2000.
2000 past niet in een byte ;).
Met vriendelijke groet,
Stynus
http://www.elektronicastynus.be
reddevil
Berichten: 316
Lid geworden op: wo 7 feb 2007, 22:54
Locatie: lummen. .. .. .. .. .. .. .. .. .....

Bericht door reddevil »

Fade als word en niet als byte nemen. Dan gaat het wel.

offtopic: Heb je de nieuwe serie al gezien?
Professioneel LED Temmer :twisted: alléé dat hoop ik.
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Yup alles.

Pilot en afleveringen tot nu. :D 8)

Zie vorige pagina die makkelijk te editen naar KI3T stijl scanner.
http://www.youtube.com/watch?v=_Ijt7jn1xys
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Aangezien dat de ledjes wel wat zwakjes branden.

En op mijn auto zit er 8x 3W high power led dat geschakeld door transistor.
Is er een manier om een weerstand te verwisselen naar lagere waarde zodat de H.P. Led stukken feller branden en toch mooi uitfaden?

Met condensator gaat het wel, maar ze branden nog altijd een beetje.
Zie hier een foto en zie dat er nog 4 leds nog branden dat terwijl helemaal uit moet zijn.

http://s11.photobucket.com/albums/a155/ ... C_2032.jpg


Hierbij zit er een schema die nu in zit:
Bijlagen
schemakittpwm.jpg
schemakittpwm.jpg (10.3 KiB) 17823 keer bekeken
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Never mind:

Btw,

Kan ik de code verkorten door aantal.

Bijv:

inc ledwaardes[1]
inc ledwaardes[1]
inc ledwaardes[1]
inc ledwaardes[1]
inc ledwaardes[1]

vervangen door:
inc ledwaardes[1] *5
reddevil
Berichten: 316
Lid geworden op: wo 7 feb 2007, 22:54
Locatie: lummen. .. .. .. .. .. .. .. .. .....

Bericht door reddevil »

Ik denk het niet, maar zo gaat het wel.

Code: Selecteer alles

ledwaardes[1] = ledwaardes[1] - 5

Professioneel LED Temmer :twisted: alléé dat hoop ik.
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Volgens mij heb je je weer vergist. :D

Inc = waarde verhogen.....

ledwaardes[1] = ledwaardes[1] + 5 zo dus...
reddevil
Berichten: 316
Lid geworden op: wo 7 feb 2007, 22:54
Locatie: lummen. .. .. .. .. .. .. .. .. .....

Bericht door reddevil »

Ja, daarom gebruik ik dat ding ook niet. :?
Professioneel LED Temmer :twisted: alléé dat hoop ik.
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Tja, en bij deze werkt het veel beter, moet dus veel waarde bijtellen zodat het feller brand.

http://tinypic.com/player.php?v=hve1vq&s=4
captain nguyen
Berichten: 40
Lid geworden op: za 26 jul 2008, 19:45

Bericht door captain nguyen »

Hij werkt naar behoren, en nu wil ik dat de snelheid regelbaar wordt door met 2 druk knoppen.

Code: Selecteer alles

 
'****************************************************************
'Uitgangen declareren
    Symbol ledjes   = PORTB
    Symbol led1     = PORTB.7
    Symbol led2     = PORTB.6
    Symbol led3     = PORTB.5
    Symbol led4     = PORTB.4
    Symbol led5     = PORTB.0
    Symbol led6     = PORTB.1
    Symbol led7     = PORTB.2
    Symbol led8     = PORTB.3
    'TrisB register instellen (alles uitgang)
    TRISB = 0                          
'Decraraties voor programma:  
    Dim    index    As word
    Dim     I As Byte
    Dim    Ledwaardes[9] As Byte
    Symbol snelheid = 5  'Hoe groter hoe trager
	Symbol Fade = 150
'****************************************************************
Clear
'- = reeds uit
'o = 0
'x = 50
'z = 51
'a = fade 20
'b = fade 15
'c = fade 5
'd = fade 0

'************************************************** All On

Start:
    For I = 1 To 8
        Ledwaardes[I] = 0
    Next
    For I = 0 To snelheid
		Ledwaardes[1] = Ledwaardes[1] + 20
		Ledwaardes[2] = Ledwaardes[2] + 20
		Ledwaardes[3] = Ledwaardes[3] + 20
		Ledwaardes[4] = Ledwaardes[4] + 20
		Ledwaardes[5] = Ledwaardes[5] + 20
		Ledwaardes[6] = Ledwaardes[6] + 20
		Ledwaardes[7] = Ledwaardes[7] + 20
		Ledwaardes[8] = Ledwaardes[8] + 20
		GoSub PWM_lus

~~~~~~~~~~~
    
    Next 
    For I = 0 To snelheid
		Ledwaardes[1] = Ledwaardes[1] - 1
		Ledwaardes[2] = Ledwaardes[2] - 3
		Ledwaardes[3] = Ledwaardes[3] - 5
		Ledwaardes[4] = Ledwaardes[4] - 15
		Ledwaardes[5] = Ledwaardes[5] + 25
		GoSub PWM_lus
    Next 
wend
'****************************************************************
PWM_lus:
    For index = 0 To fade
        If Ledwaardes[1] > index Then
            High led1
        Else
            Low led1
        EndIf
        If Ledwaardes[2] > index Then
            High led2
        Else
            Low led2
        EndIf
        If Ledwaardes[3] > index Then
            High led3
        Else
            Low led3
        EndIf    
        If Ledwaardes[4] > index Then
            High led4
        Else
            Low led4
        EndIf
        If Ledwaardes[5] > index Then
            High led5
        Else
            Low led5
        EndIf
        If Ledwaardes[6] > index Then
            High led6
        Else
            Low led6
        EndIf    
        If Ledwaardes[7] > index Then
            High led7
        Else
            Low led7
        EndIf    
        If Ledwaardes[8] > index Then
            High led8
        Else
            Low led8
        EndIf     
    Next 
Return     

'****************************************************************
End
Nieuwe code:

Code: Selecteer alles

'Uitgangen declareren
    Symbol ledjes   = PORTB
    Symbol led1     = PORTB.7
    Symbol led2     = PORTB.6
    Symbol led3     = PORTB.5
    Symbol led4     = PORTB.4
    Symbol led5     = PORTB.0
    Symbol led6     = PORTB.1
    Symbol led7     = PORTB.2
    Symbol led8     = PORTB.3
    'TrisB register instellen (alles uitgang)
    TRISB = 0    

    Symbol aan = 0      

    Symbol S1 = PORTA.3   'Trager
    Symbol S2 = PORTA.4   'Sneller              

'****************************************************************    
'Decraraties voor programma:  
    Dim    index    As word
    Dim     I As Byte
    Dim    Ledwaardes[9] As Byte
    Symbol snelheid = 5  'Hoe groter hoe trager
    Symbol Fade = 150
'****************************************************************
En waar moet ik en hoe zet ik hem in:

If S1 = aan then
snelheid -1
EndIf

If S2 = uit then
snelheid +1
EndIf
zo, en waar?
Gebruikersavatar
Stynus
Site Admin
Site Admin
Berichten: 5971
Lid geworden op: vr 16 mei 2003, 20:45
Locatie: Overpelt (België)
Contacteer:

Bericht door Stynus »

Die schakelaars kan je denk ik best op portB hangen en dan interupt op een stijgende of dalende flank doen.

Dan zal je je leds naar port A moten verplaatsen maar daar heb je wel het probleem dat 1 pin open collector is en een andere pin niet als uitgang kan.

Wat je anders nog kan proberen is het tmr0 register vol te zetten. Dan via 2 diodes de knoppen met RA4 verbinden en dat als er gedrukt is dan dat register overloopt en je daar ook een interupt van krijgt. Dan kunnen je leds op portb blijvne.
Met vriendelijke groet,
Stynus
http://www.elektronicastynus.be
mathla
Berichten: 1
Lid geworden op: ma 2 feb 2009, 20:32

Bericht door mathla »

en werkt je programma nu goed Captain?

want ik ben al een tijdje op zoek naar zo'n programma.

welke componenten zijn er allemaal gebruikt?

en zou je de goedwerkende source eens kunnen posten?

graag bedankt,

Mathla
dirk bruijns
Berichten: 8
Lid geworden op: do 27 dec 2007, 21:19
Locatie: 2845 Niel (B). .

Bericht door dirk bruijns »

Toen ik halverwege de jaren '80 afstudeerde, kwam de PIC nog maar net van de grond. De Knight-Rider was toen heel populair, en wij maakten de schakeling met een 7400 , een bcd en 74159. Nagloeien door de combinatie 1µ tantaal, 100k en basis van een transistor. Ik ga eens zoeken of ik daar iets van kan terugvinden.
Plaats reactie