Zelf symbolen en fonts maken voor een LCD display
Als voorbeeld heb ik zelf wat symbolen gemaakt in een LCD tool, deze zet de pixels om in HEX formaat om deze dan weer te geven via de software en display.
Wat heb je nodig?
1) LCD Tools (in dit voorbeeld: GLCD Font Creator)
Ik heb zelf al een aantal symbolen getekend voor het 6×8 FONT:
124 = Temperatuur
125 = Luchvochtigheid / Regen
126 = Aan / Zon
127 = Baterij 1/7
128 = Baterij 2/7
129 = Baterij 3/7
130 = Baterij 4/7
131 = Baterij 5/7
132 = Baterij 6/7
133 = Baterij 7/7
134 = Graden Celcius
135 = Graden Farenheit
136 = Luidspreker
137 = Bell / Alarm
138 = Bluetooth
140 = Tekstballon
141 = Update / Recycle
Deze kun je dan exporteren:
Deze HEX codes van de symbolen kun je dan toevoegen aan de EF5110 bibliotheek:
Daarvoor moet je LCD.H openen met een tekstbewerker (notepad) dit bestand is te vinden in:
[Arduino folder]\libraries\EF5110\lcd.h
Plak de volgende code NA de regel met // horiz lines:
Voorbeeld:
Sla het bestand op.
Nu kun je bijvoorbeeld met lcm.write_char(130); een (halfvol)batterijtje laten weergeven.
Hieronder heb ik een DEMO code gemaakt om met de symbolen te spelen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#include <EF5110.h> // D4 -> Nokia 5110 - CE // D3 -> Nokia 5110 - RST // D5 -> Nokia 5110 - Rin // D6 -> Nokia 5110 - DC // D7 -> Nokia 5110 - CLK EF_LCM5110 lcm(4,3,5,6,7); int i; void setup() { lcm.init(); lcm.clearLCM(); lcm.write_string(6,2, "TEMP: 26"); lcm.write_string(6,3, "BATT:"); lcm.set_XY(56,2); lcm.write_char(134); } void loop() { for (i=1; i<7 ;i++) { lcm.set_XY(42,3); lcm.write_char(127+i); delay(500); } } |