|
Op Elektronicaforum.nl is de kans om een antwoord op je vraag te krijgen heel groot. In
overzichtelijke subcategorieën kun je vragen en antwoorden over
elektronica zoeken, plaatsen en beantwoorden.
Elektronica Forum is onderdeel van
Schakelingen
Online
|
| Auteur |
Bericht |
elektroman046
Geregistreerd op: 18-9-2009 Berichten: 2 Woonplaats: 3520
|
Geplaatst: Vr 18 Sep 2009, 9:46 Onderwerp: Eindwerk RC auto |
|
|
hallo,
Als eindwerk hebben wij een radio gestuurde auto besturen vanaf de pc.
We moeten dus vanaf de pc een micro-controller aansturen.
Hierbij willen we ook een draadloze camera aansluiten, pinkers, stoplichten en lichten (voor en achter) die automatisch aangaan als het donker wordt.
Parkeer sensoren om botsingen te vermijden (auto stopt met rijden als die iets registreert).
Hebben jullie misschien tips of info om ons eindwerk tot een goed einde te brengen ?
Mvg
Elektroman046
|
|
| Naar boven |
|
elektroman046
Geregistreerd op: 18-9-2009 Berichten: 2 Woonplaats: 3520
|
Geplaatst: Di 16 Feb 2010, 18:00 Onderwerp: rc auto |
|
|
Hallo,
We hebben in Bascom AVR een programma moeten schrijven om onze lichten te bedienen met het toetsenbord (HyperTerminal). Als we onze pinkers starten hebben wij een do-loop gemaakt om het pinken te signaliseren, maar we willen tijdens het pinken ook bijvoorbeeld de lichten kunnen intsteken. (Dit gaat nu niet). Het is ons in het oor gefluisterd dat wij een timerfunctie moeten gebruiken, maar we snappen het niet zo goed.
Kan iemand in zijn eigen woorden even verwoorden wat een timer doet en als die dan ook op de achtergrond blijft werken, of een heel simpel voorbeeld ons kan toesturen ?
Alvast bedankt voor de hulp
Elektroman046
| Code: |
'Lichten van de auto
Config Portb = Output
Config Portd = Input
Dim Lichten As Byte
Dim Invoer As Byte
Do
Invoer = Inkey()
If Invoer > 0 Then
Lichten = Invoer
End If
'Voorlichten
If Lichten = "a" Then
Portb.0 = 1
Elseif Lichten = "A" Then
Portb.0 = 0
End If
'Achterlichten
If Lichten = "q" Then
Portb.1 = 1
Elseif Lichten = "Q" Then
Portb.1 = 0
End If
'Pinker links
If Lichten = "z" Then
Do
Portb.2 = 1
Waitms 500
Portb.2 = 0
Waitms 500
Invoer = Inkey()
If Invoer > 0 Then
Lichten = Invoer
End If
If Lichten = "Z" Then
Exit Do
End If
Loop
End If
'Pinker rechts
If Lichten = "s" Then
Do
Portb.3 = 1
Waitms 500
Portb.3 = 0
Waitms 500
Invoer = Inkey()
If Invoer > 0 Then
Lichten = Invoer
End If
If Lichten = "S" Then
Exit Do
End If
Loop
End If
'remlichten
If Lichten = "w" Then
Portb.4 = 1
Elseif Lichten = "W" Then
Portb.4 = 0
End If
Loop
End |
|
|
| Naar boven |
|
pe5ocb
Geregistreerd op: 5-5-2007 Berichten: 115 Woonplaats: Zoetermeer
|
Geplaatst: Di 16 Feb 2010, 18:35 Onderwerp: |
|
|
Zoek op interrupt en timer.
Wat je nu doet is je zet het ding stil voor een halve seconde, waarna hij pas wat gaat doen.
Wat je moet doen is een timer programmeren die een interrupt opwekt elke halve seconde.
Via de interrupt roep je een functie aan die je uitgang hoog of laag maakt.
Verder loopt je programma gewoon door, tot er een halve seconde voorbij is, dan roept hij je functie aan.
|
|
| Naar boven |
|
|
Je mag geen nieuwe onderwerpen plaatsen Je mag geen reacties plaatsen Je mag je berichten niet bewerken Je mag je berichten niet verwijderen Ja mag niet stemmen in polls Je mag geen attachments plaatsen in dit forum Je mag bestanden downloaden in dit forum
|
|