-
        

Ergebnis 1 bis 6 von 6

Thema: Problem: LED Balken-Lauflicht programmieren mit Bascom-8051

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    22.08.2006
    Beiträge
    10

    Problem: LED Balken-Lauflicht programmieren mit Bascom-8051

    Anzeige

    Hallo, ich habe folgendes Problem:
    ich muß ein Led Lauflicht mit Basic in Bascom programmieren, aber leider fange ich jetzt erst auf dem Gebiet des Microkontrollers an.

    Aufgabenstellung:
    Es gibt zwei LED Balkenlauflichter mit 13 LEDs, die jeweils mit einem Taster getastet werden. Beim ersten Tasten soll die dazugehörenden Leds angesteuert werden - das heißt
    1 Led an; 0 0000 0000 0001
    1 sek Pause
    2 Led an; 0 0000 0000 0011
    1 sek Pause
    3 Led an; 0 0000 0000 0111
    1 sek Pause
    ...
    13 Led an; 1 1111 1111 1111

    Zweite mal Tasten
    13 Led aus; 1 1111 1111 1111
    1 sek Pause
    12 Led aus; 0 1111 1111 1111
    1 sek Pause
    0 0111 1111 1111
    und so weiter.

    Das Problem:
    Wenn ich das programmiere, kann beim Tasten immer nur ein LED Lauflicht anlaufen, weil das Programm in der Warteschleife von einer Sekunde ist, um die nächste LED anzusteuern und der zweite Taster für das zweite Led Lauflicht nicht mehr abgefragt werden kann (erst wieder nach 13 sek).

    Wie kann ich programmieren, dass die beiden Taster immer abgefragt werden und entsprechent beide LAUFLICHTER unabhänig voneinander funktionieren?

    MFG
    Matthias

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    29.05.2005
    Ort
    Rott am Inn
    Alter
    29
    Beiträge
    373
    hallo,
    du könntest die beiden taster auf einen externen interrupt legen, dadurch wird dein programm immer unterbrochen wenn eine taste gedrückt wird.
    mfg franzl

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    47
    Beiträge
    2.556
    ...oder einfach zwischen den einzelnen LED`s eine IF-Abfrage auf die Taster setzen und damit ggfls. in eine Sub oder Sprungmarke springen.
    Danke an Alle, die uns bei der erfolgreichen 1.000€-Aktion der IngDiba unterstützt haben! | https://www.hackerspace-bremen.de | http://www.pixelklecks.de |

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    22.08.2006
    Beiträge
    10
    Hallo,
    vielen Dank für Eure Antworten.
    Ich weiß leider nicht, wie ich es programmieren soll, dass wenn die If Abfrage erfüllt ist und das 2. LED Lauflicht angesteuert wird, das Programm immer zwischen den beiden Zeitschleifen hin- und herspringt, damit die Leds immer mit einer Verzögerung von 1 sek angeschaltet werden.

    MFG
    Matthias

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    47
    Beiträge
    2.556
    Ich weiss ehrlich gesagt nicht so ganz, was Du genau möchtest - setze doch in beide "Lauflichter" nach jedem Einzelschritt eine If-Abfrage, die dann, je nach Taster, zu einer Sprungmarke an den Anfang des Lauflichtes geht.

    Damit kannst Du jederzeit mit einer der beiden Tasten Deine Lauflicht in die Richtung Deiner Wahl erneut starten.
    Danke an Alle, die uns bei der erfolgreichen 1.000€-Aktion der IngDiba unterstützt haben! | https://www.hackerspace-bremen.de | http://www.pixelklecks.de |

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    22.08.2006
    Beiträge
    10
    Die Idee mir den If Abfragen hat sehr gut funktioniert, aber jetzt habe ich ein weiteres Problem.
    Der Port 0 an meinem Mikrocontoller AT 89S8252 läst sich nicht schalten, es passiert garnichts. Ist er kaputt, oder muß ich in Bascom oder so, was einstellen damit er funktioniert?

    MFG
    Matthias

Berechtigungen

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