Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

ATtiny85 mit Arduino Uno programmieren

Komponenten und Verbrauchsmaterialien

Arduino UNO
× 1
Mikrochip-Technologie ATtiny85
× 1
Elektrolytische Entkopplungskondensatoren - 10uF/25V
× 1
Jumper Wires M/M
× 1

Über dieses Projekt

Ich arbeite an einem Projekt, bei dem mehrere Sensordaten an verschiedenen Orten gelesen werden müssen. Diese erfordern nur wenige PWM-Pins, so dass die Verwendung mehrerer Arduino Uno teuer und unnötig wäre. Also entschied ich mich, den ATtiny85-Mikrocontroller anstelle von Arduino Uno-Entwicklungsboards zu verwenden. ATtiny85 ist eine günstige und leistungsstarke Alternative, wenn Sie nicht zu viele PWM-Pins benötigen. Da ATtiny85 nur ein Mikrocontroller ist, benötigen wir einen Arduino Uno, um ihn zu programmieren. In diesem Projekt werde ich erklären, wie es geht. Unten ist die Pin-Konfiguration von ATtiny85 und das Datenblatt finden Sie hier http://www.atmel.com/images/atmel-2586-avr-8-bit-microcontroller-attiny25-attiny45-attiny85_datasheet.pdf.

Arduino Uno als ISP (In-System Programming) konfigurieren

Um den ATtiny85 zu programmieren, müssen wir zuerst Arduino Uno in den ISP-Modus versetzen. Verbinden Sie Ihr Arduino Uno mit dem PC. Öffnen Sie die Arduino IDE und öffnen Sie die ArduinoISP-Beispieldatei (Datei -> Beispiele -> ArduinoISP) und laden Sie sie hoch.

Hinzufügen von ATtiny85-Unterstützung zur Arduino-IDE

Standardmäßig unterstützt die Arduino IDE ATtiny85 nicht, daher sollten wir ATtiny-Boards zur Arduino IDE hinzufügen. Öffnen Sie Datei -> Einstellungen und geben Sie in den URLs des zusätzlichen Boards-Managers diese URL ein:https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json.

Nachdem dies erledigt ist, öffne Tools -> Board -> Board Manager

Nachdem Sie Board Manager geöffnet haben, scrollen Sie in der Liste nach unten, wo "attiny by Davis A. Mellis" steht. Klicken Sie darauf und installieren Sie es.

Nach der Installation könnten Sie jetzt einen neuen Eintrag im Board-Menü sehen

ATtiny85 mit Arduino Uno verbinden

Nachdem alle oben genannten Dinge fertig sind, beginnen wir mit der Programmierung des attiny85. Verbinden Sie das Arduino Uno mit dem Steckbrett wie unten beschrieben mit attiny85.

Arduino Uno – ATtiny85

  • 5V – Vcc
  • Gnd – Gnd
  • Pin 13 – Pin 2
  • Pin 12 – Pin 1
  • Pin 11 – Pin 0
  • Pin 10 – Zurücksetzen

Fügen Sie einen 10uF-Kondensator zwischen RESET und GND in Arduino hinzu. Dies soll verhindern, dass Arduino automatisch zurückgesetzt wird, wenn wir das Programm auf attiny85 hochladen. Wenn Sie einen Elektrolytkondensator verwenden, stellen Sie sicher, dass die Anode in GND von uno geht.

Programm auf ATtiny85 hochladen

Nun zurück zur Arduino-IDE. Wählen Sie ATtiny unter Tools -> Board aus. Wählen Sie dann unter Tools -> Prozessor ATtiny85 aus. Und wählen Sie 8 MHz (intern) unter Tools -> Clock.

Stellen Sie dann sicher, dass Arduino als ISP ausgewählt ist unter Tools -> Programmer

Standardmäßig läuft der ATtiny85 mit 1MHz. Um es mit 8MHz laufen zu lassen, wählen Sie Extras -> Bootloader brennen.

Sie erhalten die obige Meldung, wenn das Brennen des Bootloaders erfolgreich war.

Öffnen Sie nun das Blink-Beispiel aus Arduino-Beispielen und ändern Sie die PIN-Nummer von 13 auf 0 und laden Sie sie hoch.

Sie können die obige Meldung sehen, wenn alles erfolgreich war. Jetzt haben wir das Blinkprogramm auf ATtiny85 hochgeladen und können es jetzt testen.

Jetzt ist es Zeit zu testen. Entfernen Sie alle Verbindungen von Arduino und nehmen Sie eine Stromquelle. Hier verwende ich eine Knopfzelle, um ATtiny85 mit Strom zu versorgen.

Dort ist es das Blinkprogramm, das auf einem ATtiny85 mit nur einer Batteriezelle läuft, um es mit Strom zu versorgen. Sie können viele Projekte mit geringen Kosten, geringem Stromverbrauch und geringem Platzbedarf durchführen. Nur Ihrer Fantasie sind hier Grenzen gesetzt und natürlich der Anzahl der PWM-Pins.

Einen Schild daraus machen

Ich habe die obige Schaltung in ein mit Arduino Uno kompatibles Schild umgewandelt.

(Hinweis:Als Softwareentwickler ist dies mein erstes Projekt im Bereich Elektronik. Bitte geben Sie Ihre Vorschläge ein, um mehr zu erreichen.)

Code

  • Blinkprogramm
Blink-ProgrammC/C++
/* Blink Schaltet eine LED eine Sekunde lang ein und dann wiederholt eine Sekunde lang aus. Die meisten Arduinos haben eine On-Board-LED, die Sie steuern können. Beim Uno und Leonardo ist es an den digitalen Pin 13 angeschlossen. Wenn Sie sich nicht sicher sind, mit welchem ​​​​Pin die On-Board-LED Ihres Arduino-Modells verbunden ist, überprüfen Sie die Dokumentation unter http://arduino.cc Dieser Beispielcode ist in die öffentliche Domäne. geändert 8. Mai 2014 von Scott Fitzgerald */// Die Setup-Funktion wird einmal ausgeführt, wenn Sie Reset drücken oder das Boardvoid-Setup () einschalten ( // Digital-Pin 13 als Ausgang initialisieren. pinMode (0, OUTPUT);} // die Schleifenfunktion wird immer wieder ausgeführt forevervoid loop () { digitalWrite (0, HIGH); // schalten Sie die LED ein (HIGH ist der Spannungspegel) Verzögerung (1000); // auf eine zweite warten digitalWrite (0, LOW); // schalten Sie die LED aus, indem Sie die Spannung auf LOW stellen (1000); // warte eine Sekunde}

Schaltpläne


Herstellungsprozess

  1. Python - Erweiterungsprogrammierung mit C
  2. Arduino-Uhr mit islamischen Gebetszeiten
  3. Münzprüfer mit Arduino steuern
  4. Arduino mit Bluetooth zur Steuerung einer LED!
  5. Einfacher UNO-Rechner
  6. Anzeige eines Bildes auf einem LCD-TFT-Bildschirm mit Arduino UNO!
  7. Beharrlichkeit der Vision
  8. Steuerung einer LED-Matrix mit Arduino Uno
  9. 4x4x4 LED-Würfel mit Arduino Uno und 1sheeld
  10. 25-kHz-4-Pin-PWM-Lüftersteuerung mit Arduino Uno