I2C.Display Update  0

Prototyp für I2C Display
Prototyp für I2C Display

 

Nach einer kleinen Urlaubspause habe ich mich dann mal rangemacht und eine Platine entworfen für das I2C Display.

Außerdem wurde der Quellcode angepasst. Auf dem Steckbrett hatte ich nur vier Digits verwendet und konnte jetzt mit dem fertigen Prototypen feststellen, dass sich mit sechs Digits doch ein unangenehmes Flackern einstellte.

 

MacOsX und AVR?  0

Welcome to Xcode

Auf jeden Fall!

Atmels IDE Atmel Studio ist leider nur für Windows verfügbar. Ich habe aber die Stabilität, die Leistungsfähigkeit, die Zuverlässigkeit und den ganzen Komfort meines Macs schätzen gelernt und möchte nicht darauf verzichten! Meiner Ansicht nach macht programmieren am meisten Spaß, wenn man das an einem vernünftigen Rechner macht…

Ich möchte hier auf gar keinen Fall eine Grundsatzdiskussion entfachen, aber ich programmiere nur noch ungern abseits von Mac und XCode.

Natürlich lässt sich ein C-Programm auch mit einem normalen Texteditor schreiben und anschließend in der Kommandozeile mit avr-gcc übersetzen und per avrdude in den Chip flashen. Aber die elegante Lösung heißt XCode.

Was wird benötigt?

 

  •  XCode Apples IDE für MacOSX
  • CrossPack Die Toolchain enthält alles was nötig ist um ein Programm zu übersetzen und anschließend zu flashen
  • XCode AVR Template Das Template für XCode

 

Nach der Installation hat man eine neue Option in der Projekterstellung von XCode die folgendermaßen aussieht:

AVR-Projekt
AVR-Projekt

Hier lässt sich jetzt ganz bequem einstellen, welchen Mikrocontroller mit welcher Frequenz und welchem Programmer man in dem Projekt verwenden möchte. Danach wird dann das Makefile mit allen erforderlichen Einstellungen angelegt.

Programmerauswahl
Programmerauswahl

Hier lassen sich alle von AVRDude unterstützten Programmer auswählen. Zu den wichtigsten zählen wohl der USBAsp, der AVRISP mk2, AVR Dragon usw. Wenn man ein Arduino Board hat, lässt sich dieses übrigens auch ganz bequem programmieren, aber Achtung! solche Späße wie:

gehen selbstverständlich nicht. Hier wird noch “normal” ohne das Arduino-Zeugs gearbeitet.

 

Natürlich gibt es zahlreiche Alternativen zu XCode, die auch alle Ihre Darseinsberechtigung haben, ich möchte auch wirklich keine anderen IDEs schlecht reden. Selbst habe ich lange Zeit mit Eclipse programmiert und nutze es auch weiterhin noch auf meiner Ubuntu-Maschine. Und beruflich kann ich nur mit Windows arbeiten, dort setze ich dann Atmel Studio 6 ein.

Atmel Studio ist unschlagbar in Hinsicht auf Debugging, aber dazu komme ich dann in einem späteren Beitrag mal…

I2C.Display  0

I2C.Display

 

Mein aktuelles Projekt basiert auf einem ATMega8, der über I²C angebunden werden kann und Zahlen auf bis zu sechs Siebensegment-Anzeigen anzeigt. Über I²C wird der Mikrocontroller zuvor konfiguriert, weil es mehrere Anzeigemöglichkeiten für das Display gibt. Es kann eingestellt werden, wieviele Siebensegment-Anzeigen in der Schaltung aktiv sein sollen, ob eine 32Bit Ganzzahl, (bis zu) 6 BCD Zahlen oder die Uhrzeit angezeigt werden soll.

Anschließend werden die Werte, die angezeigt werden sollen per I²C übertragen.

Noch ist nicht alles fertig, und das was ich bisher programmiert habe, benötigt gerademal 3,5kB der verfügbaren 8kB. Da können also noch ein paar Features eingebaut werden, wie z.B. eine interne Uhr, einstellbare Helligkeit der Displays, Kalender- und Weckfunktion usw.

Einen vorläufigen Schaltplan gibts auch schon, siehe Anhänge.

 

Naja mal sehen, wohin die Reise geht 😉

 

ATMega8.I2C.Display.0b2

ATMEGA8.I2C.7SEG.Schaltplan.version.b01

die Kürbislampe  0

 

Jahr für Jahr dekorieren wir einen Kürbis mit einer bösen Fratze und einem Teelicht, damit er zu Halloween ungebetene Gäste fernhält. Natürlich funktioniert das mit einem gewöhnlichem Teelicht gar nicht, so dass eine effektivere Lösung her musste! Was liegt in so einem Fall wohl näher, als eine Lösung mit LEDs und einem Mikrocontroller?

Zum Glück hatte ich noch einen ungenutzten ATtiny85 rumliegen, der auf eine sinnvolle Verwendung wartete.

Logischerweise lässt sich mit zwei LEDs hier niemand beeindrucken, also mussten ein paar mehr in die Schaltung um die gewünschte Helligkeit zu erreichen. Ich entschied mich für zwei Arrays mit jeweils 10 parallel geschalteten LEDs und entwarf eine Platine dafür.

Außerdem hatte ich durch dieses Projekt endlich mal die Gelegenheit die Arduino-IDE mit einem ATTiny85 auszuprobieren – was mich leider nicht wirklich überzeugt hat, aber das ist ein anderes Thema.

 

 

 

Kürbis-Lampe-schaltplan

 

Relaunch  0

So, die Seite ist wieder online und zahlreiche Projekte warten nur darauf veröffentlicht zu werden…