KS0066

Hier geht es um die Ansteuerung eines HD44780 kompatiblen LCD Displays (Controller KS0066). Um genau zu sein habe ich das EA DIPS082-HN gewählt. Hierbei handelt es sich um ein 2×8 Zeichen LCD von electronic Assembly. Bei Reichelt gibt es das Modul für ca. 15€ inklusive LED Hintergrundbeleuchtung. Das Display eignet sich hervorragend für kleinere Projekte, bei denen vergleichsweise wenig Infos zur Anzeige gebracht werden müssen.

ILI9341 Bibliothek

In diesem Artikel stelle ich euch meine Bibliothek zum ILI9341-Displaycontroller vor. Warum dieser Controller? Nun es gibt beim Internetauktionshaus sehr viele Anbieter, die RGB-TFT-Displays zu sehr günstigen Preisen anbieten und diese haben des öfteren den ILI9341 als Displaycontroller verbaut. Damit diese Displays praktikabel werden ist es notwendig eine entsprechende Bibliothek zur Verfügung zu haben. Wer das Display nicht unbedingt innerhalb von einer Woche benötigt findet auf eBay problemlos Angebote für gerade einmal 6€ inklusive Versand. Und das für ein RGB-Display mit einer Auflösung von 320 \cdot 240 Pixeln.

EA DOGS

Bei dem EA DOGS handelt es sich um ein besonders kompaktes LCD-Display von Electronic Assembly  Das Display ist mit einem UC1701 Controller ausgestattet und unterscheidet sich in der Ansteuerung kaum von großen Bruder dem EA DOGL mit dem ST7565  Controller, das ich Euch in einem anderen Artikel bereits vorgestellt habe. Bei dem Display handelt es sich um ein Grafikfisplay mit 102×64 Pixel, welche in 7 Seiten (Pages) in der Höhe und in 64 Spalten (Columns) in der Breite aufgeteilt werden. Es gibt das Display in verschiedenen Ausführungen. Die Varianten unterscheiden sich in Art der Darstellung sowie der passenden Hintergrundbeleuchtung. Ich habe von Reichelt das EA DOGS 102N-6 entschieden. Dies wird ohne Beleuchtung betrieben. Zusätzlich kann man das Display mit einer Touchscreen-Folie versehen, was ich jedoch bei der Größe eher als Spielerei empfinde.

Projektstruktur

Ich möchte in diesem Artikel aufzeigen wie man ein C-Projekt modularisiert. Sobald ein Programm eine gewisse Größe übersteigt, wird es sehr schnell sehr unübersichtlich. Nun muss man sich Gedanken darüber machen, wie man sein Programm / sein Projekt möglichst so organisiert, dass man entsprechende Code-Passagen schnell wiederfindet. Zusätzlich (und das ist ein enorm wichtiger Faktor) sollte man sein Programm immer möglichst gut kommentieren / strukturieren, so dass sich auch außenstehende mit vergleichsweise geringem Aufwand einarbeiten können. Es kommt immer wieder vor, dass sich Hilfesuchende im Forum melden und nach Fehlern in ihrem Code fragen. Dieser ist dann häufig hoffnungslos unübersichtlich, so dass es allen anderen sehr schwer fällt Hilfestellung zu geben.

PIC C Tutorial – Grundlagen

In diesem Teil des PIC-C-Tutorials beschäftigen wir uns mit den wesentlichen Grundlagen der Programmierung in C. Dabei hat dieses Tutorial keinen Anspruch auf Vollständigkeit. Der Leser sollte jedoch nach dem Durcharbeiten des (gesamten) Tutorials in der Lage sein erste eigene Projekte mit PIC-Mikrocontrollern zu bewältigen und dabei die Hochsprache C als Werkzeug einzusetzen. C ist Case sensitiv! Das bedeutet es macht einen Unterschied ob ihr Buchstaben groß oder klein schreibt. Heißt eine Funktio zum Beispiel get_integer() und Ihr möchtet sie mit get_integer() aufrufen, so wird das nicht funktionieren!

PIC C Tutorial – Einleitung

Ich werde euch im Verlauf dieses Tutorials immer wieder einzelne Codeschnipsel oder Programmausschnitte zeigen. Es handelt sich dabei wirklich immer nur um Ausschnitte und nicht um fertige Programme, die Ihr via Copy & Paste so 1:1 übernehmen könnt und ohne jegliche Anpassung kompilieren könnt. Jeder PIC-Typ braucht zum Beispiel einige spezielle Einstellungen (Konfigurationswort). Dies könnte ich hier nicht verallgemeinert für alle PIC-Typen abbilden. In diesem Tutorial wird es darum gehen wie ihr mit der Sprache C umgehen müsst um Projekte zu erstellen und individuelle Probleme zu lösen. Ich zeige euch dabei natürlich auch wie ihr Schritt für Schritt ein Projekt von Null an beginnt. Also gut, legen wir los.