Inhaltsverzeichnis:

Rechner TinkerCad-Wettbewerb - Gunook
Rechner TinkerCad-Wettbewerb - Gunook

Video: Rechner TinkerCad-Wettbewerb - Gunook

Video: Rechner TinkerCad-Wettbewerb - Gunook
Video: Ausrichten, nachmessen und prüfen mit Tinkercad 2024, November
Anonim
Rechner TinkerCad Wettbewerb
Rechner TinkerCad Wettbewerb

Hey, vor kurzem habe ich untersucht, wie man verschiedene Arten von Code in eine Schaltung implementiert. Ich fand, dass die Erstellung eines Taschenrechners eine großartige Möglichkeit wäre, "Case" und andere Codeformen zu implementieren, die ich interessant fand. Ich habe in der Vergangenheit Taschenrechner direkt aus Code erstellt, aber das Erstellen einer Schaltung dafür hat mich interessiert. Gerade in dieser Quarantänezeit, in der ich fast den ganzen Tag am Computer bin. Das Projekt besteht darin, mathematische Operationen auf einem LCD-Bildschirm zu implementieren.

Schritt 1: Materialien

Für Schaltung:

  • LCD 16 x 2
  • Arduino Uno R3
  • Tastatur 4x4
  • Kleines Steckbrett
  • Potentiometer (250 kΩ)
  • Widerstand (1kΩ)
  • x26 Jumperdrähte

Schritt 2: Anschließen der 4x4-Tastatur

Anschließen der 4x4-Tastatur
Anschließen der 4x4-Tastatur

Verbinden Sie die 4 Reihenstifte der 4x4-Tastatur mit den Arduino-Pins 4-7 und die 4 Spaltenstifte mit den Arduino-Pins 0-3.

Schritt 3: Versorgen Sie das Steckbrett mit Strom und schließen Sie das LCD an

Versorgen Sie das Steckbrett mit Strom und schließen Sie das LCD an
Versorgen Sie das Steckbrett mit Strom und schließen Sie das LCD an

Ich habe eine Netzspannung von 5 für das Steckbrett verwendet. Ich habe die Stromversorgung und Masse an das Steckbrett angeschlossen. Das LCD wird auf das Steckbrett gelegt und so platziert, dass alle seine Pins mit dem Steckbrett verbunden werden.

Schritt 4: Verbinden Sie Strom und Masse mit dem LCD

Verbinden Sie Strom und Masse mit dem LCD
Verbinden Sie Strom und Masse mit dem LCD

Es werden 3 Erdungsstifte benötigt, um mit dem LCD verbunden zu werden. Einer wird mit der Masse des LCD verbunden, ein anderer wird mit der LED des LCD verbunden und der letzte wird mit dem RW verbunden. Der VCC des LCD und der LED müssen mit Strom versorgt werden. Die Stromversorgung der LED erfordert jedoch einen angeschlossenen Widerstand. In diesem Fall habe ich einen 1kΩ-Widerstand verwendet.

Schritt 5: Anschließen des Potentiometers

Anschließen des Potentiometers
Anschließen des Potentiometers

Verbinden Sie das Potentiometer mit 3 freien Spalten mit dem Steckbrett. Es hat 3 Pins, die Spalte, die den Pin von Terminal 1 enthält, muss geerdet werden. Die Spalte, die den Pin von Terminal 2 enthält, muss mit Strom versorgt werden. Dann hat der Wischer ein Überbrückungskabel in seiner Spalte, das mit VO des LCD verbunden ist.

Schritt 6: Anschließen des Arduino an LCD

Anschließen des Arduino an LCD
Anschließen des Arduino an LCD

Die Pins 8-13 des Arduino werden mit dem LCD verbunden. Die Pins 8-11 auf dem Arduino werden jeweils mit D8 (7-4) verbunden. Dann wird Pin 12 des Arduino mit dem Enable des LCD verbunden, und Pin 13 des Arduino wird mit dem Register des LCD verbunden.

Schritt 7: Code implementieren

Code wird benötigt, um mathematische Operationen mit der Tastatur und dem LCD zu verwenden. Der folgende Code ist der von mir verwendete Code, es können jedoch noch mehrere Änderungen implementiert werden, um ihn sauberer und besser zu machen. Spielen Sie also ruhig ein wenig damit.

#einschließen #einschließen

Flüssigkristall-LCD(13, 12, 11, 10, 9, 8);

lang zuerst = 0;

lange Sekunde = 0;

doppelte Summe = 0;

int-Position = 0;

char customKey;

konstantes Byte ROWS = 4;

konstantes Byte COLS = 4;

Zeichentasten[ROWS][COLS] = {

{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'} };

Byte rowPins[ROWS] = {7, 6, 5, 4};

Byte colPins[COLS] = {3, 2, 1, 0};

Keypad customKeypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

Void-Setup () {

lcd.begin(16, 2);

lcd.setCursor(5, 0);

lcd.clear(); }

Leere Schleife () {

customKey = customKeypad.getKey();

Schalter (benutzerdefinierter Schlüssel) {

Fall '0' … '9':

lcd.setCursor(0, 0);

first = first * 10 + (customKey - '0');

lcd.print (zuerst);

Position++;

brechen;

Fall '+':

first = (total != 0 ? total: first);

lcd.setCursor (Position, 0);

lcd.print("+");

Position++;

zweite = ZweiteNummer();

gesamt = erster + zweiter;

lcd.setCursor(1, 1);

lcd.print (gesamt);

zuerst = 0, Sekunde = 0;

Position=0;

brechen;

Fall '-':

first = (total != 0 ? total: first);

lcd.setCursor (Position, 0);

lcd.print("-");

Position++;

zweite = ZweiteNummer();

gesamt = erste - zweite;

lcd.setCursor(1, 1);

lcd.print (gesamt);

zuerst = 0, Sekunde = 0;

Position=0;

brechen;

Fall '*':

first = (total != 0 ? total: first);

lcd.setCursor (Position, 0);

lcd.print("*");

Position++;

zweite = ZweiteNummer();

gesamt = erste * zweite;

lcd.setCursor(1, 1);

lcd.print (gesamt);

zuerst = 0, Sekunde = 0;

Position=0;

brechen;

Fall '/':

first = (total != 0 ? total: first);

lcd.setCursor (Position, 0);

lcd.print("/");

Position++;

zweite = ZweiteNummer(); lcd.setCursor(1, 1);

zweite == 0 ? lcd.print("Fehler"): total = (float)first / (float)second;

lcd.print (gesamt);

zuerst = 0, Sekunde = 0;

Position=0;

brechen;

Fall 'C':

gesamt = 0;

zuerst = 0;

Sekunde = 0;

Position = 0;

lcd.clear();

brechen; }

}

lange zweiteZahl () {

während(1) {

customKey = customKeypad.getKey();

if(customKey >= '0' && customKey <= '9') {

Sekunde = Sekunde * 10 + (customKey - '0');

lcd.setCursor (Position, 0);

lcd.print (zweite); }

if(customKey == 'C') {

gesamt = 0;

zuerst = 0;

Sekunde = 0;

Position = 0;

lcd.clear();

brechen; }

if(customKey == '='){

lcd.setCursor(0, 1);

lcd.print("=");

Position = gesamt;

lcd.clear();

lcd.setCursor(0, 1);

lcd.print("=");

brechen; }

}

zweite zurückgeben;}

Schritt 8: Ergebnis

Ergebnis
Ergebnis
Ergebnis
Ergebnis

Ich hoffe, Sie haben alle dieses instructable genossen. Vielen Dank fürs Lesen!

Saim.

Empfohlen: