myavr.CHKRonline.de

Informationen und Projekte Rund um die Mikrocontroller-Programmierung
von myAVR (ATmega8), STM32 (Cortex-M3/4) und Raspberry Pi (ARM11)

Der Autor

Christian KrügerIch bin Christian Krüger und ich lebe in der fränkischen Groß­stadt Nürnberg. Aufgewachsen bin ich in dem kleinen Ort Gößnitz am östlichsten Zipfel Thüringens. Nach meinem Abitur am Roman-Herzog-Gymnasium Schmölln erwarb ich meinen Diplom-Ingenieur (FH) in Informations­technik an der Westsächsischen Hochschule Zwickau.

Heute bin ich Teamleiter für die Software­entwicklung Eingebetteter Systeme bei ISCUE in Nürnberg. Hier realisiere ich zusammen mit meinem Team die erfolgreiche Umsetzung verschiedenster Kunden­projekte aus dem Automotive Umfeld und der Elektro­mobilität. Gerne unterstütze ich dabei auch junge Ingenieure beim Einstieg in das Berufsleben im Rahmen und Praktika und Abschluss­arbeiten.

CHKRonline.de

Facebook Profil

Google+ Profil

Twitter Profil

XING Profil

Neuigkeiten

Tutorials aktualisiert

Sonntag, 18.09.2016 20:53

Nachdem mich ein Leser freundlicherweise darauf hingewiesen hat, dass der Atollic TrueStudio GDB-Server offenbar nicht mehr so einfach außerhalb der Atollic Entwicklungsumgebung verwendet werden kann, habe ich das STM32-Eclipse Tutorial für Windows auf den texane stlink umgeschrieben. Die Software habe ich zuvor schon für die Linux Tookette eingesetzt. Mittlerweile gibt es auch eine vorkompilierte Fassung des Programms für Windows.

In meinen Tests funktioniert die neue Variante gar besser, als der bisherige GDB-Server. Das muss aber nicht für jeden zutreffen. Feadback daher wie immer gerne erwünscht.

Tutorials aktualisiert

Dienstag, 09.04.2016 14:09

Da der Zahn der Zeit auch an Software und Webseiten nagt und so die meisten meiner Tutorials auf dieser Seite nicht mehr aktuell waren, habe ich nun alle Anleitungen aktualisiert. Hauptproblem war, dass viele Programme seit 2013 sehr große Aktualisierungen erfahren haben und so sich nicht mehr entsprechend meiner Tutorials verhalten haben. Auch ist mittlerweile die CodeSourcery GNU Toolchain nicht mehr problemlos erhältlich, weshalb ich meine ARM Tutorials auf eine andere GNU Toolchain umgeschrieben habe.

Ich hoffe damit sind alle Tutorials für die nächsten Jahre wieder einwandfrei nutzbar.

Webseite und Raspberry Pi

Dienstag, 11.12.2012 15:36

Durch meine Diplomarbeit bin ich in den vergangenen Monaten vermehrt mit Linux in Kontakt gekommen. Zunächst mit uClinux auf einem Cortex-M3, später auch Debian auf einem Raspberry Pi. Da ich ohnehin recht häufig mit STM32F2/4 Mikrocontrollern von STMicroelectronics und nun auch dem Raspberry Pi bastel, gedenke ich in Zukunft einen Bereich dieser Seite den Plattformen zu widmen. Wie genau das aussieht, weiß ich noch nicht.

Optimimalerweise werde ich die gesamte Webseite auf verschiedene Plattformen auslegen. Bevor jetzt aber der Große Jubelschrei kommt sei darauf hingewiesen, dass ich nach wie vor alle Hände voll zu tun habe und daher nur langsam an solchen Umbauten arbeiten kann. Dafür steht zur Abwechslung bereits der Inhalt der ersten Seiten fest. So wird es ein Tutorial für den Einsatz von Eclipse für die Programmierung von STM32 Mikrocontrollern unter Windows und Linux geben.

Bis dahin nur ein paar Bilder von meinem Pi, mit Gehäuse, aktivem USB-Hub, WLAN und Reset-Schalter. Trotz der Kühlkörper betreibe ich das Systeme mit dem Standardtakt von 700 MHz. Hauptgrund dafür ist, dass ich immer wieder mit beschädigten Dateisystemen zu kämpfen hatte, unabhängig von SD-Karte und Stromversorgung. Meine Vermutung ist mittlerweile, dass es an der Kontaktierung der SD-Karte liegt, also wird diese nun eingeklemmt. Bisher mit Erfolg.

Raspberry Pi

myAVR/Arduino Board

Dienstag, 11.12.2012 15:28

Das ATmega-Board in der Abbildung unten ist im März 2012 entstanden und basiert auf dem Layout des myAVR MK2 Boards. Zusätzlich zu den Controlleranschlüssen am unteren Rand der Platine habe ich auch Anschlüsse nach dem Arduino Pinlayout angebracht, sodass es per Adapter möglich ist, Ardiono-Shields zu verwenden. Ganz perfekt ist das Design nicht, es ist aber eine gute Fingerübung für Lötanfänger. Das aufgesteckte Modul ist in den letzten Wochen entstanden und enthält vier 7-Segmentanzeigen (meine kombinierte 7-Segmentanzeige hat leider den Geist aufgegeben). Die Software entspricht einer auf 7-Segmentanzeigen angepassten Version des Projekts Watch und verwendet zusätzlich den 7-Segment Treiber. Auf jeden Fall macht das Ding auf dem Schreibtisch ebensoviel her, wie eine Ice Tube Clock... naja fast.

MyAVR Selfmade Board

Neuer Treiber

Mittwoch, 21.03.2012 22:45

Der vorerst vermutlich letzte Treiber hat seinen Weg auf die Webseiten gefunden. Es handelt sich um eine Funktions-Bibliothek für die Timer/Counter-Module von ATmega8 und ATmega328P. Zusätzlich gab es ein Update auf Version 1.2 für den ADC Treiber. Bei dem hatten sich einige Tippfehler eingeschlichen. Da der Timer Treiber alles andere als kompakt ausgefallen ist und viel Copy&Paste enthält, wird auch er Fehler enthalten. Falls jemand einen feststellt, kann er mich gerne kontaktieren. Ich werde den Bug dann schnellstmöglich beseitigen.

In Zukunft dürfte es auf der Seite wieder etwas ruhiger werden. Ich beginne ab April mit der Arbeit an meiner Diplomarbeit und die Erfahrung hat gezeigt, dass ich in solchen Zeiten weniger Spaß daran finde, auch zu Hause noch zu programmieren. Ich hoffe dennoch, weiterhin einige Projekte zu verfolgen.

Arduino und serialchart

Sonntag, 11.03.2012 21:30

Wie der entsprechende Menüpunkt schon seit einigen Tagen vermuten ließ, habe ich mich etwas mit dem Thema Arduino auseinander gesetzt. Da die OpenSource-Plattform komplett auf der AVR-Technologie basiert, habe ich einen Weg gesucht, das myAVR Board MK2 mittels der Arduino-Entwicklungsumgebung zu programmieren. Natürlich bin ich nicht der erste mit dieser Idee und so fand ich schnell eine Lösung. Da ich das Ganze sehr interessant finde, habe ich eine Anleitung dazu geschrieben, die jetzt als Arduino Tutorial zu finden ist. Vorteil der ganzen Arduino-Software ist, dass man seinen ATmega sehr schnell programmieren kann und Programme höchst kompatibel sind.

Beim Ausprobieren einiger Arduino-Projekte benötigte ich ein Terminal-Programm, welches die am seriellen Port empfangenen Daten als Graph darstellt. So etwas eignet sich, wenn Analog-Werte ausgewertet werden sollen. Bisher hatte ich dafür immer das eingebaute Terminal im myAVR Workpad verwendet. Ich habe zwar ein eigenes Terminal-Programm in C# entwickelt, allerdings lässt da die Performance noch zu wünschen übrig. Offenbar ist die Windows Presentation Foundation nicht für Echtzeit-Anwendungen geeignet. Alternativen scheinen dagegen rar gesät zu sein. Ich bin jedoch auf ein Programm namens serialchart gestoßen. Das Tool zeigt Daten von der seriellen Schnittstelle als ASCII an und zeichnet einen Graphen, entsprechend einer Konfigurations-Datei. Es ist mit QT entwickelt, wiegt lediglich 4 MB und lässt sich nach dem Entpacken sofort starten. Großartig!

AVR-Eclipse Update

Mittwoch, 07.03.2012 16:26

Wer AVR-Eclipse verwendet wird sicher bemerkt haben, dass vor wenigen Tagen das Update 2.4.0 online ging. Ich habe es auch sofort installiert, um heute eine großer Überraschung zu erleben. Offenbar ist die aktuelle Version nicht ganz fehlerfrei. So meldet sich Eclipse beim Versuch ein Projekt zu kompilieren mit einer Null-Pointer Exception. Dasselbe tritt auch in den C-Einstellungen eines Projekts auf. Das Problem ist bereits im Bug-Tracker von AVR-Eclipse eingegangen. Nun kann man nur auf eine baldige Korrektur hoffen. Bis dahin, bin ich zu der Version 2.3.4 zurückgekehrt. Siehe auch:

sourceforge.net/tracker/?func=detail&aid=3497145&group_id=189165&atid=928231

AVR-Eclipse Tutorial

Mittwoch, 29.02.2012 16:43

Noch mehr Updates! Das Tutorial zu der Verwendung von AVR-Eclipse ist online gegangen. Bei der Erstellung habe ich zusätzlich etwas mit der Arduino Software-Umgebung gespielt und festgestellt, dass diese nahezu problemlos mit dem myAVR Board MK2 arbeitet. Es folgt also in Kürze eine Anleitung, wie sich die Arduino-Software mit myAVR zusammen nutzen lässt und was dabei zu beachten ist.

Daneben ist die Homepage etwas umgebaut worden. So haben die Treiber jetzt eine eigene Kategorie bekommen, die anderen Seiten habe ich passender benannt. Ich hoffe, Google nimmt mir das nicht übel.

SPI Treiber

Sonntag, 26.02.2012 16:42

Wie angekündigt habe ich alle Projekt-Dateien überarbeitet. Die Bibliotheken liegen nun auch als solche vor und wurden in Treiber umgetauft. Bei den Programmen habe ich lediglich etwas an der Dokumentation geschraubt. Die meiste Arbeit ging in die Neu-Sortierung der Projekte auf meinem Rechner. Eclipse hat sich durchaus einen Spaß daraus gemacht, keine vernünftigen Makefiles mehr zu erstellen, weshalb ich alle Projekte, und deren Abhängigkeiten, neu erstellen durfte. Schönes Tagesaufgabe.

Nebenher ist der SPI Treiber fertig geworden. Ich habe ihn bisher nur am Oszilloskop getestet, aber dort sieht er sehr gut aus. Es funktionieren sowohl Master als auch Slave-Mode. Als Master schafft der ATmega dabei eine Datenübertragungsrate entsprechend des halben Prozessortaktes. Nicht schlecht, finde ich.

Updates

Samstag, 25.02.2012 10:52

Wie man unschwer erkennen kann, ist auf der Seite die letzten Monate nicht viel passiert. Ich war das gesamte 7. Semester an einem Projekt mit einem ARM Cortex M3 an der Hochschule beschäftigt und war so wenig geneigt, weitere Arbeiten am ATmega vorzunehmen.

Nun ist der ARM weg und ich habe endlich einen Monat Zeit, etwas am ATmega zu entwickeln. Danach geht es allerdings direkt weiter mit meiner Diplomarbeit.

Aktuell arbeite ich daran, alle Projekte in Eclipse auf einen aktuellen Stand zu bringen. Das heißt, ich überarbeite die Projektmappen und mache aus den vorhandenen Treibern endlich einmal echte Bibliotheken. Dazu gibt es noch ein Tutorial wie ich AVR Eclipse aufgesetzt habe und was es bei der Erstellung eines neuen Projekts zu beachten gilt. Das Ganze ist natürlich nicht frei von Eigeninteressen, habe ich doch über das letzte Jahr so ziemlich alles zu dem Thema vergessen. Besser ich schreibe es mal auf.

Daneben ist zudem noch die Entwicklung eines Funktions-Generators auf Basis des myAVR Board MK2 USB geplant sowie die Anbindung eines kleinen Monochrom-Grafik-LCDs via SPI.

Nichts los

Donnerstag, 14.07.2011 9:31

Ich habe mich entschieden, aktuelle Änderungen hier kurz mit einer Neuigkeit nieder zu schreiben. So sollen u.a. Software-Updates besser bekannt gemacht werden. Leider gibt es im Augenblick nicht viel Neues. Die Semester-Prüfungen haben mich voll im Griff und dank Bologna sind es dieses mal auch deutlich mehr Prüfungen, als vorgesehen. Über die Ferien werde ich aber vielleicht etwas Neues entwickeln. Zumindest, wenn meine Studienarbeit vorbei ist.

Bis dahin erfreue ich mich der Tatsache, dass diese Seite doch recht häufig besucht wird. MyAVR scheint eine viel gesuchte Marke bei Google und Konsorten zu sein.