Benutzer-Werkzeuge

Webseiten-Werkzeuge


myhobby-cnc:usbasp

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Both sides previous revision Previous revision
Next revision
Previous revision
myhobby-cnc:usbasp [2019/03/03 16:38]
editor [Programmierung einer neuen Anwendung]
myhobby-cnc:usbasp [2019/03/22 17:01]
crix [Einrichtung einer Programmierumgebung]
Zeile 17: Zeile 17:
 Auf der Seite des PCs wird hier in nahezu 100% der Fälle auf das alte und bewährte (DOS-)Programm **AVRDUDE** zurückgegriffen. Dieses wurde in den über 10 Jahren seines Bestehens immer wieder an neue Prozessoren angepasst. Um die "​umständliche"​ Bedienung des Kommandozeilenprogramms irgend wie zu vereinfachen wurden viele unterschiedliche Windows-Programme erstellt, die über eine komfortable Fensteroberfläche zu bedienen sind und im Hintergrund dann das Programm AVRDUDE mit den entsprechenen Kommandozeilenparametern auf zu rufen. Oft wird die Ausgabe der Konsole auch im Programm angezeigt. Beim herunterladen einer solchen Software wird in der Regel auch gleich das Programm AVRDUDE im Installationspaket mitgeleifert. Eine getrennte Installation ist meist nicht nötig. Auf der Seite des PCs wird hier in nahezu 100% der Fälle auf das alte und bewährte (DOS-)Programm **AVRDUDE** zurückgegriffen. Dieses wurde in den über 10 Jahren seines Bestehens immer wieder an neue Prozessoren angepasst. Um die "​umständliche"​ Bedienung des Kommandozeilenprogramms irgend wie zu vereinfachen wurden viele unterschiedliche Windows-Programme erstellt, die über eine komfortable Fensteroberfläche zu bedienen sind und im Hintergrund dann das Programm AVRDUDE mit den entsprechenen Kommandozeilenparametern auf zu rufen. Oft wird die Ausgabe der Konsole auch im Programm angezeigt. Beim herunterladen einer solchen Software wird in der Regel auch gleich das Programm AVRDUDE im Installationspaket mitgeleifert. Eine getrennte Installation ist meist nicht nötig.
  
-Was aber nötig ist, ist ein Treiber für einen **Programmier-DONGLE**. Auch als Programmier-Hardware wurden in den Jahren viele unterscheidliche Tools/​Boards entwickelt. Sehr verbreitet, da meist günstig zu bekommen, hat sich der **USBasp-Programmer**. Hierbei wurde selber ein AVR-Prozessor verwendet um über USB (in diesem Fall sogar eine Software-USB Schnittstelle) Daten zu empfangen und dann die entsprechenden Programmiersignale für die JTAG-Schnittstelle zu erzeugen. Das Board ist deshalb so günstig, da auf jede überflüssige Hardware, wie z.B. einem USB-Wandler oder Spannungswandlern,​ verzichtet wurde. Für diesen Adapter mit Software USB-Empfänger ist allerdings ein ganz spezieller Treiber auf der PC-Seite notwenig. Dieser nennt sich **libUSB**! Der libUSB-Treiber verwendet dabei keine virtuelle Serielle-Schnittselle,​ wie das z.B. bei der Programmierung von normalen Anwendungsprogrammen für den Arduino der Fall ist, sondern eine eigene Schnittstelle,​ die sehr Tief auf Hardwareebene statt findet. //(wer mehr über die USB-Softwareschnittstelle lesen möchte, kann das unter [[https://​www.fischl.de/​usbasp/​|www.fischl.de]])//​ +Was aber nötig ist, ist ein Treiber für einen **Programmier-DONGLE**. Auch als Programmier-Hardware wurden in den Jahren viele unterscheidliche Tools/​Boards entwickelt. Sehr verbreitet, da meist günstig zu bekommen, hat sich der **USBasp-Programmer**. Hierbei wurde selber ein AVR-Prozessor verwendet um über USB (in diesem Fall sogar eine Software-USB Schnittstelle) Daten zu empfangen und dann die entsprechenden Programmiersignale für die JTAG-Schnittstelle zu erzeugen. Das Board ist deshalb so günstig, da auf jede überflüssige Hardware, wie z.B. einem USB-Wandler oder Spannungswandlern,​ verzichtet wurde. Für diesen Adapter mit Software USB-Empfänger ist allerdings ein ganz spezieller Treiber auf der PC-Seite notwenig. Dieser nennt sich **libUSB**! Der libUSB-Treiber verwendet dabei keine virtuelle Serielle-Schnittselle,​ wie das z.B. bei der Programmierung von normalen Anwendungsprogrammen für den Arduino der Fall ist, sondern eine eigene Schnittstelle,​ die sehr Tief auf Hardwareebene statt findet. 
 +//(wer mehr über die USB-Softwareschnittstelle lesen möchte, kann das unter [[https://​www.fischl.de/​usbasp/​|www.fischl.de]])//​
 ====Einrichtung einer Programmierumgebung==== ====Einrichtung einer Programmierumgebung====
 ===Der USB-Programmier-Dongle=== ===Der USB-Programmier-Dongle===
Zeile 31: Zeile 31:
 {{ :​myhobby-cnc:​grbl-controller-board_avrdudess2.jpg?​450|}}Auch bei der Programmier Software gibt es natürlich endlos viele Programme. Standard wäre hier natürlich das original AVR-Studio mit dem dazugehörigen STK500 Programmier-Adapter. Das haben aber wohl die wenigsten. Ich habe mich abermals im Internet umgeschaut, und finde den [[http://​blog.zakkemble.net/​avrdudess-a-gui-for-avrdude/​|AVRDUDESS]] sehr gelungen. Die Software ist intuitiv und hat bei mir sehr gut funktioniert. Sie bietet auch super Funktionen wie die autom. Device Erkennung anhand der Signatur und Einstellungen für Presets und die Unterstützung von wirklich sehr vielen Programmieradaptern. Nun ja, dass ist natürlich die Funktionalität des darunter liegenden AVRDUDE Anwendung. Es scheint für mich aber alles sehr stabil, transparent und die Software wird aktuell immer noch weiter entwickelt. Auch die Fuse-Bits lassen sich komfortabel programmieren. AVRDUDE ist natürlich Bestandteil des Downloadfiles und muss nicht extra installiert werden. Nach dem Download und der Installation meldet sich das Programm wie folgt. {{ :​myhobby-cnc:​grbl-controller-board_avrdudess2.jpg?​450|}}Auch bei der Programmier Software gibt es natürlich endlos viele Programme. Standard wäre hier natürlich das original AVR-Studio mit dem dazugehörigen STK500 Programmier-Adapter. Das haben aber wohl die wenigsten. Ich habe mich abermals im Internet umgeschaut, und finde den [[http://​blog.zakkemble.net/​avrdudess-a-gui-for-avrdude/​|AVRDUDESS]] sehr gelungen. Die Software ist intuitiv und hat bei mir sehr gut funktioniert. Sie bietet auch super Funktionen wie die autom. Device Erkennung anhand der Signatur und Einstellungen für Presets und die Unterstützung von wirklich sehr vielen Programmieradaptern. Nun ja, dass ist natürlich die Funktionalität des darunter liegenden AVRDUDE Anwendung. Es scheint für mich aber alles sehr stabil, transparent und die Software wird aktuell immer noch weiter entwickelt. Auch die Fuse-Bits lassen sich komfortabel programmieren. AVRDUDE ist natürlich Bestandteil des Downloadfiles und muss nicht extra installiert werden. Nach dem Download und der Installation meldet sich das Programm wie folgt.
  
-Als Programmieradapter muss oben dann %%"​USBasp,​ http://​www.fischl.de/​usbasp/"​%% eingestellt werden. Die richtige Einstellung der Fuse-Bits kann man auf der rechten Seite sehen. Das sind die Einstellungen für unser Board mit dem ATMega328PB Prozessor. Wenn an die Fusebits in diesem Programm mit dem beinhalteten Editor verändern will, dann muss noch eine Konfigurationsdatei erweitert werden. Hier sind die Fusebits für den 328PB noch nicht aktuell gepflegt. //(Ich werde die geänderte Datei noch hier reinstellen.)//​+Als Programmieradapter muss oben dann %%"​USBasp,​ http://​www.fischl.de/​usbasp/"​%% eingestellt werden. Die richtige Einstellung der Fuse-Bits kann man auf der rechten Seite sehen. Das sind die Einstellungen für unser Board mit dem ATMega328PB Prozessor. Wenn man die Fusebits in diesem Programm mit dem beinhalteten Editor verändern will, dann muss noch eine Konfigurationsdatei erweitert werden. Hier sind die Fusebits für den 328PB noch nicht aktuell gepflegt. //(Ich werde die geänderte Datei noch hier reinstellen.)//​
  
 ===OPTIBOOT=== ===OPTIBOOT===
myhobby-cnc/usbasp.txt · Zuletzt geändert: 2019/03/22 17:01 von crix

Seiten-Werkzeuge