-         

Ergebnis 1 bis 8 von 8

Thema: kann mir jemand helfen???

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2006
    Ort
    Oberschopfheim
    Alter
    29
    Beiträge
    380

    kann mir jemand helfen???

    Anzeige

    also hoffentlich bin ich jetzt hier im richtigen bereich ich schreib jetzt einfach mal los:


    also gut bin fleißig drann am programmieren für den L293d
    allerdings will dass programm mal wieder net wie ich will. soll jetzt so aussehen:
    ein sensor stößt an.
    soll er eine sekunde lang stehn. sprich portb.0 und portb.1 sollen beide 1 haben.
    1 Sekunde warten.
    Portb.0 = 0 also aus und Portb.1 =1 also ein.
    3 Sekunden warten
    Portb.0 = 1 und Portb.1 auch damit er ja steht.
    1 sekunde warten.
    und dann wieder portb.0 =1 und portb.1 =0

    und dass soll er jedesmal machen wenn er irgendwo anstößt.

    wie realisiere ich dass?
    Hab jetzt hier mal was angefangen aber is echt schlecht könnt ihr ja sagen:
    $regfile = "m8def.dat"
    $crystal = 1000000
    $baud = 9600

    Config Portb.0 = Output
    Config Pinc.0 = Input
    Config Portb.1 = Output
    Config Pinc.1 = Input
    Config Pinc.2 = Input

    Portc.0 = 1
    Portc.1 = 1
    Portc.2 = 1
    Do
    If Pinc.0 = 1 Then
    Portb.0 = 1
    Else
    Portb.0 = 0
    Wait 1
    End If
    Loop
    End


    bislang schalter halt nur die led für ne sekunde ab und weiter weiß ich net. wenn ich jetzt da nach wait:
    portb.0 =0
    portb.1 =1

    eingebe bleiben hinterher beide an.

    vll weiß ja jemand was von euch.

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2006
    Ort
    Oberschopfheim
    Alter
    29
    Beiträge
    380
    keiner ne lösung?

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2006
    Ort
    Oberschopfheim
    Alter
    29
    Beiträge
    380
    so hab jetzt mal was aber wie bekomme ich es hin dass das programm nur bei tastendruck durchläuft und nicht immer so läufts immer durch.
    Config Portb.0 = Output
    Config Pinc.0 = Input
    Config Portb.1 = Output
    Config Pinc.1 = Input
    Config Pinc.2 = Input

    Portc.0 = 1
    Portc.1 = 1
    Portc.2 = 1
    Do
    If Pinc.0 = 1 Then
    Portb.0 = 1
    Portb.0 = 1
    Wait 1
    Portb.0 = 0
    Portb.1 = 1
    Wait 3
    Portb.0 = 1
    Portb.1 = 1
    Wait 1
    Portb.0 = 1
    Portb.1 = 0
    Else
    Portb.0 = 0
    Portb.1 = 0
    Wait 1
    Portb.0 = 1
    Portb.1 = 0
    Wait 3
    Portb.0 = 0
    Portb.1 = 0
    Wait 1
    Portb.0 = 0
    Portb.1 = 1
    End If
    Loop
    End

    außerdem soll es dann wieder am ende bei der letzten angabe bleiben sprich portb.0 =1 und portb.1 =0

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2006
    Ort
    Oberschopfheim
    Alter
    29
    Beiträge
    380
    so habs:
    $regfile = "m8def.dat"
    $crystal = 1000000
    $baud = 9600

    Config Portb.0 = Output
    Config Pinc.0 = Input
    Config Portb.1 = Output
    Config Pinc.1 = Input

    Portc.0 = 1
    Portc.1 = 1
    Do
    If Pinc.0 = 1 Then
    Portb.0 = 1
    Portb.1 = 0
    Portb.1 = 0

    Else
    Portb.0 = 0
    Wait 2
    Portb.1 = 1
    Wait 5
    Portb.1 = 0
    Wait 2
    End If
    If Pinc.1 = 1 Then
    Portb.2 = 1
    Portb.3 = 0
    Portb.3 = 0

    Else
    Portb.2 = 0
    Wait 2
    Portb.3 = 1
    Wait 5
    Portb.3 = 0
    Wait 2
    End If
    Loop
    End


    so jetzt möchte ich dass dieses programm per tasterdruck 5 minuten durchläuft wie mache ich denn dass?

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.12.2005
    Ort
    Nähe Mainz
    Alter
    26
    Beiträge
    3.467
    Zitat Zitat von xbgamer
    so jetzt möchte ich dass dieses programm per tasterdruck 5 minuten durchläuft wie mache ich denn dass?
    das habe ich mal bei mir überlegt in den bot einzubauen (als programm).
    hab ich dann nichtmehr weiter verfolgt und weiß es deswegen auch nicht.

    jon
    Nice to be back after two years
    www.roboterfreak.de

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    13.04.2005
    Beiträge
    56
    Hi!

    Du musst das mit einem Timer machen, indem du bei jedem TimerÜberlauf hochzählst und schaust, wie oft er übergelaufen ist. Ist er so oft übergelaufen, dass 5 min vorbei sind, setzt du deine Ports entsprechend, dass er stehen bleibt und wartet bis wieder dein Tastendruck kommt.
    Such einfach im Forum nach Timern. Da gibts einiges zu.

    Gruß

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2006
    Ort
    Oberschopfheim
    Alter
    29
    Beiträge
    380
    danke schon mal. ich möchte noch einen bodenabtastung drann machen. auf dem prinzip von der oberen schaltung.
    wenn ich nun aber nun
    pinc.2 und pinc.3 als eingang konfiguriere
    und dann anstatt der stellen
    if pinc.0 =1
    zb if pinc.2 =0

    schreibe klappt es net.

    ich möchte es ja so haben dass wenn der sensor der auf den boden gerichtet ist 0 wird dass das programm abgespielt wird und net wenn er 1 wird

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2006
    Ort
    Oberschopfheim
    Alter
    29
    Beiträge
    380
    weiß jemand was?

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •