Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
anleitungen:spezial:tiny-uniprog [2020/04/20 10:23] – Rechtschreibung korrigert moba_nick | anleitungen:spezial:tiny-uniprog [2025/02/12 07:49] (aktuell) – ↷ Links angepasst, weil Seiten im Wiki verschoben wurden 54.36.149.102 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Programmierung von Attinys | + | ====== Programmierung von ATTinys |
====== Aufgabe/ | ====== Aufgabe/ | ||
Programmierung eines ATTiny85 für die Verwendung in der 510DE-Servo LED WS2811 Platine. \\ | Programmierung eines ATTiny85 für die Verwendung in der 510DE-Servo LED WS2811 Platine. \\ | ||
- | Diese Platine kann in 2 unterschiedlichen Bestückungsvarianten verwendet werden: | + | Diese Platine kann in 3 unterschiedlichen Bestückungsvarianten verwendet werden: |
- | * **Variante 1** Ansteuerung von 12 LEDs mit Charlieplexing/ | + | * **Variante 1** [[anleitungen: |
- | * **Variante 2** [[anleitungen: | + | * **Variante 2** [[anleitungen: |
+ | * **Variante 3** [[anleitungen: | ||
\\ | \\ | ||
- | Die Programmierung erfolgt mittels der Platine "400-Attiny-Programmer" | + | Die Programmierung erfolgt mittels der Platine "400-ATTiny-Programmer" |
- Pattern_Configurator by Hardi | - Pattern_Configurator by Hardi | ||
- Arduino Programmiersoftware | - Arduino Programmiersoftware | ||
Zeile 112: | Zeile 113: | ||
\\ | \\ | ||
Die weitere Programmierung für die speziellen Anforderungen ist jetzt mit dem Pattern_Configurator möglich. \\ | Die weitere Programmierung für die speziellen Anforderungen ist jetzt mit dem Pattern_Configurator möglich. \\ | ||
- | Beispiele sind angeführt und eine nähere Beschreibung von Hardi ist unter dem folgenden [[https://www.stummiforum.de/viewtopic.php? | + | Beispiele sind angeführt und eine nähere Beschreibung von Hardi ist unter dem folgenden [[https://wiki.mobaledlib.de/redirect/ |
---- | ---- | ||
==== Servo-Modul ==== | ==== Servo-Modul ==== | ||
- | <WRAP important> | + | |
- | + | ||
- | Es erfolgt auf eigene Verantwortung mit einem „geheimen Trick“😉 \\ | + | |
Vorgehensweise wie bei der Charlieplex-Modul Programmierung. \\ | Vorgehensweise wie bei der Charlieplex-Modul Programmierung. \\ | ||
- Öffnen des Pattern_Configurators | - Öffnen des Pattern_Configurators | ||
Zeile 126: | Zeile 125: | ||
- Servo auswählen | - Servo auswählen | ||
- | {{bilder: | + | {{bilder: |
+ | \\ | ||
+ | Beim Klick auf den Button „Prog. Servo“ kommt nun eine Abfrage: \\ | ||
+ | {{bilder: | ||
+ | \\ | ||
+ | Falls man eine ältere Platine mit Datumsaufdruck 14.6.19 \\ | ||
+ | {{bilder: | ||
+ | <wrap em> | ||
+ | Bei den neueren Servo-Platinen wurde die Pinbelegung der SMD-Variante korrigiert. Und wenn man die DIL-Variante des WS2811 einsetzt ist die Version der Platine egal. Hier kann man „Nein“ auswählen. | ||
- | Anschließend kommt folgende Meldung – Uups! \\ | + | <WRAP info> |
- | {{bilder:anleitungen: | + | |
- | \\ | + | Anschließend kommt die normale Routine wie sie vom Charlieplex-Modul bekannt ist.\\ |
- | Um diese Meldung zu umgehen klickt | + | |
Die gelbe Prog-LED blinkt, anschließend flackert die orange Read-LED.\\ | Die gelbe Prog-LED blinkt, anschließend flackert die orange Read-LED.\\ | ||
- | Hochladen abgeschlossen, | + | Hochladen abgeschlossen, |
// (C: | // (C: | ||
\\ \\ | \\ \\ | ||
- | Um den ATTiny85 für die Verwendung | + | |
- | Das ist erforderlich um 3 Servos auf dem Modul anschließen zu können. Der ATTiny hat normalerweise zu wenige Ausgänge. Durch kurzfristig Beschaltung mit 12V wird der ResetPin ebenfalls zu einem Ausgang (IO). | + | <WRAP info centeralign round> |
- | \\ | + | |
- | {{bilder: | + | Die richtige Programmierung kann man überprüfen, |
- | \\ | + | |
- Das serielle Monitor Fenster öffnen. | - Das serielle Monitor Fenster öffnen. | ||
- | - Die Reset Pintaste | + | - Die Reset-Taste |
- Wenn der ATTiny nicht gleich erkannt wird dann nochmals versuchen. \\ | - Wenn der ATTiny nicht gleich erkannt wird dann nochmals versuchen. \\ | ||
- | Die angezeigten Werte der Fuses und die Frequenzeinstellung | + | Die angezeigten Werte der Fuses und die Frequenzeinstellung |
- | \\ | + | {{bilder: |
** Reset pin IO = blaue LED leuchtet.** | ** Reset pin IO = blaue LED leuchtet.** | ||
---- | ---- | ||
- | ==== Servo-Positionen definieren ==== | + | |
+ | ==== Servo-Positionen | ||
+ | |||
+ | Um den Servo-ATTiny85 zu verwenden müssen noch die Endpositionen der Servos definiert werden. | ||
+ | Das ist mit dem Farbtestprogramm des Programm-Generator möglich. | ||
+ | - Programm-Generator starten | ||
+ | - Optionen aufrufen \\ {{bilder: | ||
+ | - LED __F__arbtest starten \\ {{bilder: | ||
+ | - Auswahl des COM Ports bestätigen \\ {{bilder: | ||
+ | - Abfrage " | ||
+ | - Auf das Laden des Farbtestprogramms warten \\ {{bilder: | ||
+ | - Im geöffneten Programm zum Reiter "Servo Test" wechseln \\ {{bilder: | ||
+ | - Wir sollten jetzt folgende Darstellung sehen \\ {{bilder: | ||
+ | - | ||
+ | - 1. Servo Addresse und Servo Anschluss angeben. (Servo Adresse " | ||
+ | - 2. Das Servo (ohne Ruderhorn) mittels des Schiebebalkens ( unter Servo position) auf 110 (Mittenposition) setzen. | ||
+ | - 3. Dann das Ruderhorn des Servo montieren. | ||
+ | - 4. Folgend (unter Programmierung von Min/Max Position und Geschwindigkeit) den Button " | ||
+ | - 5. Nach nochmaligem Drücken des Buttons (auf der Hauptplatine blinkt die weiße mittlere LED) kann die Geschwindigkeit des Servos ebenso mittels der Pfeilfelder eingestellt werden. | ||
+ | - 6. Weitere Servos können jetzt unter der Eingabe von Servo Addresse und Servo Anschluss eingestellt werden (zurück zu Punkt 1.). | ||
+ | - 7. Schließen des Farbtestprogramms. Eine extra Speicherung ist nicht notwendig und es gibt auch keinen Button hierfür. | ||
+ | |||
+ | Sollten pro Servo mehr als zwei Stellungen benötigt werden, so können die weiteren Stellungen über den Programm-Generator (Dialog) eingestellt werden, siehe auch erstes Bild in dieser Rubrik. | ||
+ | Bei der Servobestimmung bitte die Kanalauswahl (1/Rot, 2/Grün, 3/Blau) beachten. Pro Servoplatine = 3 Servos = 3 Kanäle \\ {{bilder: | ||
+ | |||
+ | Bitte auch die Bauanleitung "510DE - Servo & LEDs" beachten. Hier sind wichtige Tipps zu den Servoplatinen-Anschlüssen zu finden | ||
+ | |||
+ | ---- | ||
+ | |||
+ | |||
+ | ==== Servo-Positionen mit der Arduino IDE definieren ==== | ||
Um den Servo-ATTiny85 zu verwenden müssen noch die Endpositionen der Servos definiert werden. | Um den Servo-ATTiny85 zu verwenden müssen noch die Endpositionen der Servos definiert werden. | ||
- | Das ist derzeit ausschließlich | + | Das ist mit der Arduino IDE möglich. |
- Arduino Software öffnen | - Arduino Software öffnen | ||
- Datei – Beispiele … 01.Servo_Pos öffnen - siehe unten.\\ {{bilder: | - Datei – Beispiele … 01.Servo_Pos öffnen - siehe unten.\\ {{bilder: | ||
Zeile 172: | Zeile 208: | ||
Man kann mit dem Beispiel_Main experimentieren. | Man kann mit dem Beispiel_Main experimentieren. | ||
- | * https://www.stummiforum.de/viewtopic.php? | + | * https://wiki.mobaledlib.de/redirect/ |
- | * https://www.stummiforum.de/viewtopic.php? | + | * https://wiki.mobaledlib.de/redirect/ |
- | * https://www.stummiforum.de/viewtopic.php? | + | * https://wiki.mobaledlib.de/redirect/ |
---- | ---- | ||
+ | |||
====== Bekannte Fehler ====== | ====== Bekannte Fehler ====== | ||
* Der COM Anschluss wird nicht richtig erkannt – Anschluss überprüfen und evtl USB-Port wechseln. | * Der COM Anschluss wird nicht richtig erkannt – Anschluss überprüfen und evtl USB-Port wechseln. | ||
* Verzeichnis „“ nicht gefunden – fehlende Bibliothek in der Boardverwaltung der Arduino IDE siehe | * Verzeichnis „“ nicht gefunden – fehlende Bibliothek in der Boardverwaltung der Arduino IDE siehe | ||
+ | * Wenn man alle Servos (mehr als drei) mit nur einer Servoplatine programmiert (Servos austauscht), | ||
* Der Programmer erzeugt die 12V für den HV-Reset nicht. Dies kann einer der folgenden Ursachen haben | * Der Programmer erzeugt die 12V für den HV-Reset nicht. Dies kann einer der folgenden Ursachen haben | ||
* Nicht bestückter Widerstand R10 | * Nicht bestückter Widerstand R10 | ||
* Falsche Beschriftung des Plus Pols der LEDs (Dieser muss Links sein). Das hatte Hardi zunächst nicht gemerkt und die Software so geschrieben, | * Falsche Beschriftung des Plus Pols der LEDs (Dieser muss Links sein). Das hatte Hardi zunächst nicht gemerkt und die Software so geschrieben, | ||
- | * Falsche Kondensatoren. Die Beschriftung der Einheit auf dem Board verursacht Verwirrung. \\ Die Angabe auf der Platine ist 0.22uF. Dies sind 220nF, bitte prüfen ob es sich um die richtigen Werte handelt((Aufdruck | + | * Falsche Kondensatoren. Die Beschriftung der Einheit auf dem Board verursacht Verwirrung. \\ Die Angabe auf der Platine ist 0.22uF. Dies sind 220nF, bitte prüfen ob es sich um die richtigen Werte handelt((Aufdruck |
* Lötbrücke zwischen einem Pad und einer Durchkontaktierung. Dummerweise haben die Durchkontaktierungen keinen Lötstopplack. | * Lötbrücke zwischen einem Pad und einer Durchkontaktierung. Dummerweise haben die Durchkontaktierungen keinen Lötstopplack. | ||
* Falsche bestückter Spannungsteiler (R8 wurde versehentlich mit 47K anstelle von 470K bestückt). | * Falsche bestückter Spannungsteiler (R8 wurde versehentlich mit 47K anstelle von 470K bestückt). | ||