Aug
28
2009

AVR-Programmierung unter OS X

atmelchipAtmel kümmert sich mit kostenloser Software zur komfortableren Entwicklung von Software für die hauseigenen Mikrocontroller ganz gut um seine Kunden. Wenn sie Windows benutzen.

AVR Studio (Homepage, für Windows) kann alles, was das Herz begehrt. Es ist eine Programmierumgebung für C- und Assembler-Programmierer, die zusätzlich das Hochladen und Debugging von Programmcode auf den Chip bietet. Außerdem ist ein Simulator mitgeliefert, der die Analyse des Chips mit dem man arbeitet, stark vereinfacht und veranschaulicht.

Abgesehen davon dass man, nach einer kurzen Phase der Enttäuschung darüber dass Kunden mit anderen Lieblingsbetriebssystemen nicht bedient werden, fast Neid empfindet, stellt sich nach etwas Recherche aber dann doch durchaus heraus, dass das kein Grund ist, auf Windows umzusatteln. Jeder Nicht-User von Windows hat schließlich seine guten Gründe.

Also um überhaupt erst einmal AVR-Mikrocontroller zu programmieren, braucht man Compiler, Bibliotheken, Header-Dateien, Assembler und das Tool zum Hochladen des Codes.

Toolchain

Fink-Nutzer mögen einfach die diversen AVR-Pakete installieren, das geht schnell und einfach. (Mit Paketnamen: avr-binutils, avr-gcc, avr-libc, avrdude). Ich gehe hier nicht weiter auf Fink ein, da diejenigen, die jetzt nicht wissen wie das geht oder was Fink überhaupt ist, sowieso ein paar mehr Seiten an Doku lesen müssten und da ich es selbst nicht so gemacht habe (Beispielsweise deswegen weil der Assembler den ich haben wollte meines Wissens nach nicht per Fink zu erhalten ist).

Objective Development hat ein sehr praktisches Paket herausgebracht: Das Crosspack bietet alle Tools die man braucht. Gleichermaßen für Intel-Macs wie PPC-Macs.

Jetzt steht man zwar noch ohne GUI-Tools da, aber per Konsole kann man schon losprogrammieren. Mit dem Lieblingstexteditor programmiert man drauf los, kompiliert mit “avr-gcc” oder assembliert mit “avra”, lädt das Kompilat mit “avrdude” hoch und mit selbigem Tool ändert man auch die FUSE-Werte. Das ist nicht unkomfortabel, wenn man sich mit Shellscripten und einem guten Texteditor ausrüstet. (Empfehlung: VIM – ist bereits vorinstalliert)

Allerdings fehlen noch Syntax-Highlightning, Code-Completion, Upload-Button, FUSE-Editor, Registerbrowser usw.:

Entwicklungsumgebung

Beim Crosspack sind bereits Xcode-Templates mitgeliefert, aber da ich jene nicht benutze, bleibt das nur nebenbei erwähnt.

Ich kann Eclipse wärmstens empfehlen: Es handelt sich um eine Entwicklungsumgebung, die – da Java-basiert – auf jedem Betriebssystem heimisch ist und Plugins für jede Programmiersprache und beinahe jedes Framework liefert. Sich an dieses sehr umfangreiche Programm zu gewöhnen ist eine gute Idee, da man sich damit nicht an ein Betriebssystem oder Framework oder ähnliches bindet. Die neueste Version für OS X hängt auch nicht mehr vom Carbon-Framework ab, sondern baut die Oberfläche endlich auf Cocoa auf, was viele Vorteile gebracht hat.

Um Eclipse den Umgang mit AVRs beizubringen, braucht man das entsprechende Plugin: AVR-Eclipse. Auf die Installation gehe ich nicht weiter ein, da sie nicht kompliziert ist und eine Anleitung bald ohnehin schnell veraltet sein kann. Das Wiki der Projektseite bietet eine gute Anleitung.

Der praktische Upload-Button!

Als nächstes bringt Eclipse allgemein natürlich den Syntax-Parser, die Code-Completion, Syntax-Highlightning, eine schöne Organisationsstruktur für Projekte, Debuggingmöglichkeiten, Symbolbrowser und so weiter.

AVR-Plugin-spezifischer sind der praktische Upload-Button, der AVR-Device-Explorer, in dem man alle Register, Ports und Interrupts chipspezifisch einsehen kann, die Programmer-Integration (über die man den Typ des Mikrocontrollers übrigens inklusive Taktung automatisch auslesen kann) und die Möglichkeit, alles projektspezifisch einzustellen.

Bilder sagen mehr als tausend Worte:

Der AVR Device ExplorerFUSE-Editorlockbit_editor

Wer die Arbeit mit Eclipse bereits gewohnt ist, der wird dieses Plugin sicher mögen.

Wenn allerdings schnell mal ohne großes Terminal-Bla FUSEs ausgelesen/geändert, Kompilat hochgeladen oder ähnliches getan werden soll, dann ist es übertrieben, extra ein Eclipse-Projekt aufzuziehen.

Das perfekte Tool hierfür heißt AVRFuses. avrfuses_about

Es ist in C#.NET programmiert, was wiederum bedeutet, dass es unter Windows, Linux (mit Mono) und OS X lauffähig ist.

Da es eine Vielzahl von AVR-Chips unterstützt und an sich recht spartanisch ausgestattet (Es kann das was man braucht und mehr nicht) ist, nutzt man es am besten um schnell mal ein paar Bits zu setzen, wenn man fremde Programme in den eigenen Mikrocontroller schicken will oder ähnliches.

Die eigentlichen Features:

  • Programme hochladen/auslesen
  • EEPROM hochladen/auslesen
  • Chip löschen
  • FUSE-Bits setzen/auslesen

Screenshots:

avrfuses_1avrfuses_2

3 Kommentare
Aug
07
2009

O2-Kunden: Verbindungsaufbau beschleunigen

O2-StandardrouterMittlerweile bekommt man kaum noch echte Telefonanschlüsse, sondern eher Telefon über Internet. Die Qualität ist schlechter, der Verbindungsaufbau häufig langsamer, aber es ist billig.

Bei O2 ist es so, dass der Router nach dem Eintippen der Nummer noch fünf Sekunden wartet, bis er loswählt. Vielleicht zögert/überlegt der Benutzer ja noch. Bei früheren Telefonverbindungen war das egal – wenn man über Internet verbunden wird, dann ist das aus technischen Gründen nicht mehr egal.

Als ich letztens auf o2online.de (dort wo man als “Onlinekunde” seine Rechnungen und Verbindungsnachweise nachlesen kann) im Hilfe-Abteil herumgesurft bin, habe ich auch folgenden goldenen Tipp gefunden:

Die fünfsekündige Wartezeit des Routers lässt sich unterbrechen, indem man eine Raute (#) an die Nummer anhängt. Der Router wählt dann sofort los!

Wer also alle Nummern im digitalen Telefonbuch mit einer Raute am Ende ausstattet, der wartet fortan nicht mehr so lange, bis er verbunden ist.

Das sollte nicht nur bei O2-Kunden klappen, sondern allgemein bei jedem, der einen Router von Zyxel benutzt. Allerdings sind alle mir bekannten Geräte dieses Herstellers so schlecht, dass man sowas eigentlich nur dann haben sollte, wenn der Telekommunikationsanbieter es kostenlos mit dem Anschluss ausliefert.

0 Kommentare
Written by Jacek in: Allgemein | Schlagwörter:, , ,
Feb
02
2009

Knochenmarkspende für Vollidioten

Wer bei StudiVZ angemeldet ist, bekommt zur Zeit reichlich Spam:

Gesucht 

AB-Rhesus negativ!!! 
wenn ihr nicht helfen könnt, Bitte weitersenden!! 
Wer hat diese Blutgruppe? 
Wegen Leukämieerkrankung dringend gesucht. 
Selber wäre man auch froh wenn’s weitergeleitet werden würde….. 

DRINGEND!!!!!! ! 

Knochenmarkspender Blutgruppe AB Rhfkt. negativ gesucht! 

Es hat einen guten Zweck!” könnte man sagen. Könnte man. Aber wieso habe ich das Gefühl, dass das alles nur Verarschung ist?

Als ich etwa 17 Jahre alt war habe ich eine Probe meines Bluts zur weiteren Untersuchung abgegeben, um in der Deutschen Knochenmarkspenderdatei eingetragen zu werden, so dass man mich kontaktieren kann, falls jemand mein Knochenmark gebrauchen könnte.

Damals informierte ich mich natürlich gründlich über alles, was damit zu tun hat. Die Spende an sich, Krankheiten, die damit geheilt werden können, und – das Stichwort überhaupt – Spenderkriterien!

Wer ist überhaupt als Spender für wen geeignet? Das erste, was man dazu lesen kann oder was dazu gesagt wird, ist, dass die Blutgruppe von Spender/Empfänger nichts miteinander zu tun haben müssen.

Der Empfänger des Knochenmarks nimmt die Blutgruppe des Spenders an. Es geht bei der Suche nach möglichen Spendern also um völlig andere Dinge als die Blutgruppe.

Das wiederum bedeutet, dass der Typ, der über StudiVZ nach einem Knochenmarkspender für seine Freundin sucht, völligen Blödsinn treibt. Kein Arzt würde nach Spendern suchen lassen und dabei den Kreis möglicher Spender durch die Blutgruppe begrenzen.

Ich bitte meine Mitmenschen, die die Kettenmails, die sie verschicken, nicht lesen oder diejenigen, die das schlichtweg nicht wussten, so einen Blödsinn nicht weiterzuschicken. Damit degradiert man die Mails derer, die Hilfegesuche ernst meinen und nervt auch viele Mitmenschen dabei.

3 Kommentare
Written by Jacek in: Allgemein | Schlagwörter:, ,

Powered by WordPress. Theme: TheBuckmaker. Darlehen, Geld verdienen

3.14159