Inhaltsverzeichnis:

Arduino-PC - Gunook
Arduino-PC - Gunook

Video: Arduino-PC - Gunook

Video: Arduino-PC - Gunook
Video: USB клавиатура и мышка на обычной Arduino Nano! EasyHID ч.1 2024, Dezember
Anonim
Arduino-PC
Arduino-PC

Obwohl ein Mikrocontroller ein Computer auf einem Chip mit integriertem Prozessor, Speicher und I/O-Peripherie ist, fühlt er sich für einen Studenten kaum anders an als andere integrierte DIP-Schaltungen. Aus diesem Grund haben wir ein Projekt "Arduino PC" als Aufgabenstellung für die Gymnasiasten konzipiert, die den Kurs "Digitale Elektronik" besuchen. Es erfordert, dass sie eine elektronische Schaltung in Tinkercad entwerfen und simulieren, um die gegebenen Projektanforderungen (siehe unten) zu erfüllen. Ziel ist es, den Studierenden zu ermöglichen, Mikrocontroller als vollwertigen Computer (wenn auch eingeschränkt) zu sehen, der mit einer benutzerdefinierten Tastatur und einem LCD (Liquid Crystal Display) verwendet werden kann. Es ermöglicht uns auch, ihre Fähigkeiten bei der Anwendung der in der Klasse erlernten Konzepte zu überprüfen.

Für dieses Aufgabenprojekt empfehlen wir Tinkercad, damit die Schüler nicht im Digitalelektroniklabor für die Komponenten herumstehen müssen und nach Belieben arbeiten können. Außerdem ist es für Dozenten einfach, den Status des Projekts jedes Schülers über Tinkercad zu verfolgen, sobald es von ihnen freigegeben wurde.

Das Projekt verlangt von den Studierenden:

  1. Entwerfen Sie eine benutzerdefinierte Tastatur mit 15 Eingabetasten (10 Tasten für die Ziffern 0-9 und 5 für die Anweisungen +, -, x, / und =) und maximal 4 Verbindungs-(Daten-)Pins (außer den 2 Pins für die Stromversorgung) zum Senden von Eingaben an das Arduino Uno.
  2. Verbinden Sie ein LCD mit dem Arduino Uno.
  3. Schreiben Sie einfachen Code für das Arduino Uno, um die gedrückte Taste zu interpretieren und auf dem LCD anzuzeigen.
  4. Zur Durchführung der einfachen mathematischen Operationen (über ganzzahlige Eingaben) unter der Annahme, dass alle Eingaben und Ergebnisse immer Ganzzahlen im Bereich von -32, 768 bis 32, 767 sind.

Dieses Projekt hilft den Schülern beim Erlernen von

  1. Codieren Sie verschiedene Eingaben in Binärcodes.
  2. Entwerfen Sie einen binären Encoder mit digitaler Schaltung (dies ist das Herzstück des Tastaturschaltungsdesigns).
  3. Identifizieren (dekodieren) Sie die einzelnen Eingaben anhand ihrer binären Kodierungen.
  4. Schreiben Sie Arduino-Codes.

Lieferungen

Das Projekt erfordert:

  1. Zugang zu einem PC mit stabiler Internetverbindung.
  2. Ein moderner Browser, der Tinkercad unterstützen kann.
  3. Ein Tinkercad-Konto.

Schritt 1: Entwerfen der Tastaturschaltung

Entwerfen der Tastaturschaltung
Entwerfen der Tastaturschaltung

Das Entwerfen der Tastaturschaltung ist eine der Hauptkomponenten des Projekts, bei dem die Schüler jede der 15 Tasteneingaben in verschiedene 4-Bit-Muster codieren müssen. Obwohl es 16 verschiedene 4-Bit-Muster gibt, ist jedoch ausschließlich ein 4-Bit-Muster erforderlich, um den Vorgabezustand darzustellen, d. h. wenn keine Taste gedrückt wird. Daher haben wir in unserer Implementierung 0000 (d. h. 0b0000) zugewiesen, um den Standardzustand darzustellen. Dann haben wir die Dezimalziffern 1-9 durch ihre tatsächliche 4-Bit-Binärdarstellung (dh 0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000 bzw. 1001) und die Dezimalziffer 0 mit 1010 (dh, 0b1010). Die mathematischen Operationen '+', '-', 'x', '/' und '=' wurden als 1011, 1100, 1101, 1110 bzw. 1111 kodiert.

Nachdem wir die Codierungen festgelegt hatten, entwarfen wir die Schaltung wie in der Abbildung gezeigt, wobei die Tasten durch Schalter (Druckknöpfe) dargestellt wurden.

Schritt 2: Anschließen des LCD

Anschließen des LCD
Anschließen des LCD

Um die Ausgabe des Arduino Uno anzuzeigen, wird ein 16x2 LCD verwendet. Die Schaltung zum Verbinden des LCD mit dem Arduino ist ziemlich Standard. Tatsächlich bietet Tinkercad eine vorgefertigte Arduino Uno-Schaltung, die mit einem 16x2-LCD verbunden ist. Es ist jedoch möglich, einige der Arduino Uno-Pins, die mit dem LCD verbunden sind, zu ändern, um andere Peripheriegeräte wie die von uns entwickelte benutzerdefinierte Tastatur besser unterzubringen. In unserer Implementierung haben wir die in der Abbildung gezeigte Schaltung verwendet.

Schritt 3: Schreiben von Code für das Arduino Uno

Um die Eingabe von der Tastatur zu interpretieren und das Ergebnis auf dem LCD anzuzeigen, müssen wir die Anweisungen in Arduino Uno laden. Das Schreiben von Code für den Arduino ist ganz der eigenen Kreativität überlassen. Denken Sie daran, dass der Atmega328p im Arduino Uno ein 8-Bit-Mikrocontroller ist. Man muss also improvisieren, damit es einen Überlauf erkennt und für große Zahlen funktioniert. Wir wollen jedoch nur überprüfen, ob das Arduino Uno die Eingabe decodieren und zwischen Zahlen (0-9) und mathematischen Anweisungen unterscheiden kann. Daher beschränken wir unsere Eingaben auf kleine ganze Zahlen (-32, 768 bis 32, 767) und stellen gleichzeitig sicher, dass die Ausgabe auch in den gleichen Bereich fällt. Darüber hinaus kann man andere Probleme wie das Entprellen von Tasten überprüfen.

Ein einfacher Code, den wir bei unserer Implementierung des Projekts verwendet haben, ist beigefügt. Diese kann im Code-Editor in Tinkercad kopiert und eingefügt werden.

Schritt 4: Alles zusammenfügen

Alles zusammenfügen
Alles zusammenfügen

Am Ende haben wir die Stromversorgungspins der Tastatur mit denen des Arduino verbunden und die Datenpins (die die 4-Bit-Daten tragen) mit den digitalen Pins 10, 11, 12 und 13 verbunden (in der Reihenfolge wie in der Arduino-Code). Wir haben auch eine LED (über einen 330-Ohm-Widerstand) an jeden der Datenpins angeschlossen, um die binäre Kodierung jeder Taste auf der Tastatur anzuzeigen. Schließlich klicken wir auf die Schaltfläche "Simulation starten", um das System zu testen.

Empfohlen: