Die Experimente mit Flüssigkristallanzeigen gehen weiter…

Vorbereitungen LCD Projekt 2:

Für dieses Projekt werden folgende Bauteile benötigt:

Die Pinbelegung des Grafikmoduls sollte dem Datenblatt entnommen werden. Um den Anschluss des Displays an die Steckplatine zu vereinfachen, wird die Stiftleiste angelötet.

Installation der Bibliothek openGLCD:

Die Installation sollte über die Arduino IDE erfolgen und selbsterklärend sein.

Schaltungsaufbau:

Die Verkabelung habe ich nach dem Datenblatt meines Grafikmoduls 13B36 vorgenommen und der mitgelieferten openGLCD Dokumentation…

Programmierung:

#include <openGLCD.h>
#include "fonts/SystemFont5x7.h"

int j = 7;

void setup()
{
GLCD.Init(NON_INVERTED);
GLCD.ClearScreen();
GLCD.SelectFont(System5x7);
}

void loop()
{
GLCD.ClearScreen();
GLCD.CursorTo(1, 1);
GLCD.Puts("Hallo Welt");
GLCD.CursorTo(1, 2);
GLCD.Puts("Dies ist Projekt 26 ");
GLCD.CursorTo(1, 3);
GLCD.Puts("Arduino Workshop");
GLCD.CursorTo(1, 4);
GLCD.Puts("Kapitel 7");
GLCD.CursorTo(1, 5);
GLCD.Puts("Seite 173");
GLCD.CursorTo(1, 6);
GLCD.Puts("Vom 15. Juli 2016");
//GLCD.PrintNumber(j);
GLCD.Puts(".");
do {} while(1);
}


Programmierung:

#include <openGLCD.h>
#include "fonts/SystemFont5x7.h"
int j = 7;

void setup()
{
GLCD.Init(NON_INVERTED);
GLCD.ClearScreen();
GLCD.SelectFont(System5x7);
}

void loop()
{
GLCD.ClearScreen();
GLCD.DrawRect(1,7,100,30,BLACK);
GLCD.DrawRoundRect(3,9,80,25,8,BLACK);
GLCD.DrawCircle(20,20,5,BLACK);
//GLCD.PrintNumber(j);
do {} while(1);
}

Vorbereitungen LCD Projekt 3:

Für dieses Projekt werden folgende Bauteile benötigt:

Die Pinbelegung des Grafikmoduls sollte dem Datenblatt entnommen werden. Um den Anschluss des Displays an die Steckplatine zu vereinfachen, wird die Stiftleiste angelötet.

Schaltungsaufbau:

Die Verkabelung habe ich nach dem Datenblatt meines Grafikmoduls 13B36 vorgenommen und der mitgelieferten openGLCD Dokumentation.

Der Spannungsausgang des TMP36 kommt an den Analogeingang des Arduino und Ground natürlich an Ground. Der (linke) Anschluss wird mit dem 5-Volt-Ausgang des Arduino verbunden.

Programmierung:

#include <openGLCD.h>
#include "fonts/SystemFont5x7.h"

int tcurrent;
int tempArray[100];

void setup()
{
GLCD.Init(NON_INVERTED);
GLCD.ClearScreen();
GLCD.SelectFont(System5x7);
}

void getTemp() //Liest die Temperatur vom TMP36
{
float sum = 0;
float voltage = 0;
float sensor = 0;
float celsius;

sensor = analogRead(5);
voltage = (sensor * 5000) / 1024;
voltage = voltage - 500;
celsius = voltage / 10;
tcurrent = int(celsius);

for (int a = 99 ; a >= 0 ; --a )
{
tempArray[a] = tempArray[a-1];
}
tempArray[0] = tcurrent;
}


void drawScreen()
{
int q;
GLCD.ClearScreen();
GLCD.CursorTo(5, 0);
GLCD.Puts("Current:");
GLCD.PrintNumber(tcurrent);
GLCD.CursorTo(0, 1);
GLCD.PrintNumber(40);

GLCD.CursorTo(0, 2);
GLCD.PrintNumber(32);

GLCD.CursorTo(0, 3);
GLCD.PrintNumber(24);

GLCD.CursorTo(0, 4);
GLCD.PrintNumber(16);

GLCD.CursorTo(1, 5);
GLCD.PrintNumber(8);

GLCD.CursorTo(1, 6);
GLCD.PrintNumber(0);

for (int a = 28; a < 127; a++)
{
q = (55 - tempArray[a-28]);
GLCD.SetDot(a, q, BLACK);
}

}

void loop()
{
getTemp();
drawScreen();
for (int a = 0; a <20; a++)
{
delay(60000);
}
}

Von Torsten