In Bezug auf diese Frage
Ist es möglich, die LEDs so zu programmieren, dass sie jeweils mit ihrer eigenen Aktivierungsgeschwindigkeit im Sequenz-Chase nacheinander aufleuchten, und fügen Sie dann eine Art Randomizer-Programmierung hinzu, um das Chase in zufälligen Intervallen um 1 Sekunde zu beschleunigen oder um 1 Sekunde zu verlangsamen wird zusätzlich durch eine LED als optische Benachrichtigung angezeigt. Kann dies über den Mikrocontroller Atmel AT89C2051 erfolgen?
Wenn Sie sich mit Multiplexing oder der Verwendung von Schieberegistern beschäftigen möchten, empfehle ich Ihnen, diese Links zu besuchen:
Der Arduino wird in beiden Tutorials verwendet, aber es sollte relativ einfach sein, die gleichen Konzepte auf Ihren Mikrocontroller anzuwenden.
Am einfachsten ist es, die LEDs zu multiplexen - auf dieser Seite gibt es ein Schema . Es ist ganz einfach:
Grundsätzlich zünden Sie jeweils eine Bank an. Schalten bei 20+ Hz, das Auge wird es nicht bemerken. Dann können Sie sie so programmieren, dass sie auf jede gewünschte Weise leuchten.
Ja, was Sie tun möchten, ist ziemlich einfach. Aber ...
Nein, mit dem Mikrocontroller AT89C2051 geht das nicht. Werfen Sie einen Blick auf sein Datenblatt . (Sie haben sich das Datenblatt angesehen, oder?) In der Beschreibung auf der ersten Seite steht "15 E / A-Leitungen". Das bedeutet, dass Sie maximal 15 LEDs/Tasten/etc. haben können.
Sie müssen einen Mikrocontroller mit mindestens 19 E / A-Leitungen (17 LEDs + 1 Schalter + 1 Piezo) auswählen. Wie wäre es mit dem AT89C51RC , er hat 32 E/A-Leitungen.
Chris Laplante
Herr Männer
Olin Lathrop
Herr Männer
Olin Lathrop
Chris Stratton
capcom
Herr Männer
meisterhaft
Herr Männer