The very first prototype of the minimal display that Karadio will use.
It is made with a tiny lcd 84X48 84 * 48 Nokia Module 5110 Lcd
http://www.ebay.fr/itm/262558872574?_trksid=p2057872.m2749.l2649&ssPageName=STRK:MEBIDX:IT
The next one (waiting for it) will be a 0.96" I2C IIC SPI Serial 128X64 White OLED LCD LED Display Module for Arduino
http://www.ebay.fr/itm/191909116703?_trksid=p2057872.m2749.l2649&ssPageName=STRK:MEBIDX:IT
See it at:
Source and description (see define.h) at http://karadio.karawin.fr/karadioNokia5110.zip
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
Unable to edit sketch :( Arduino memory problem.
Sketch uses 7,012 bytes (22%) of program storage space. Maximum is 30,720 bytes.
Global variables use 2,408 bytes (117%) of dynamic memory, leaving -360 bytes for local variables. Maximum is 2,048 bytes.
Are you sure? yes | no
In french, sorry
Linking everything together...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc" -w -Os -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp/karadioNokia5110.ino.elf" "C:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp\sketch\karadioNokia5110.ino.cpp.o" "C:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp/core\core.a" "-LC:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp" -lm
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp/karadioNokia5110.ino.elf" "C:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp/karadioNokia5110.ino.eep"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -R .eeprom "C:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp/karadioNokia5110.ino.elf" "C:\Users\jp\AppData\Local\Temp\build68ab7b9c2bcb5b02978d33f4baa74706.tmp/karadioNokia5110.ino.hex"
Utilisation de la bibliothèque EEPROM version 2.0 dans le dossier: C:\Users\jp\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.14\libraries\EEPROM
Le croquis utilise 6 212 octets (20%) de l'espace de stockage de programmes. Le maximum est de 30 720 octets.
Les variables globales utilisent 1 608 octets (78%) de mémoire dynamique, ce qui laisse 440 octets pour les variables locales. Le maximum est de 2 048 octets.
La mémoire disponible faible, des problèmes de stabilité pourraient survenir.
Are you sure? yes | no
Too many fonts?
Try to use PROGMEM with _P version of call
https://www.arduino.cc/en/Reference/PROGMEM
Are you sure? yes | no
Not so much education :D
Are you sure? yes | no
I am studiing another version with the full font.
Wait....
Are you sure? yes | no
I add some baltic characters, like:
,{0x3D, 0x42, 0x42, 0x42, 0x3D} // 99 Ö
,{0x7D, 0x12, 0x13, 0x12, 0x7D} // 8E Ä
,{0x3D, 0x40, 0x40, 0x40, 0x3D} // 9A Ü
,{0x3C, 0x41, 0x40, 0x21, 0x7c} // 81 ü
,{0x38, 0x45, 0x45, 0x45, 0x38} // 93 õ
,{0x38, 0x45, 0x44, 0x45, 0x38} // 94 ö
,{0x20, 0x55, 0x54, 0x55, 0x78} // 84 ä
but do not show them?
Thank You
Are you sure? yes | no
Look at ScrnFuncts.ino, i map some to ascii.
Change what you need (and send me the new file please)
Change these lines
--------------------------------
void LcdCharacter(char character)
{
if ((character > 0x7F)||(character < 0x20)) character = 0x20;
--------------------------------
And may be also:
void removeUtf8(byte *characters)
{
int index = 0;
while (characters[index])
{
if ((characters[index]) == 195)
{
characters[index] = 'x';
// Serial.println((characters[index]));
characters[index+1] +=64;
int sind = index+1;
switch(characters[sind])
{
case 0xFF: case 0xFD:
characters[sind] = 'y'; break;
case 0xDF:
characters[sind] = 'Y'; break;
case 0xE7:
characters[sind] = 'c'; break;
case 0xC7:
characters[sind] = 'C'; break;
case 0xF2: case 0XF3: case 0xF4: case 0xF5: case 0xF6:
characters[sind] = 'o'; break;
case 0xD2: case 0XD3: case 0xD4: case 0xD5: case 0xD6:
characters[sind] = 'O'; break;
case 0xEC: case 0XED: case 0xEE: case 0xEF:
characters[sind] = 'i'; break;
case 0xCC: case 0XCD: case 0xCE: case 0xCF:
characters[sind] = 'I'; break;
case 0xF9: case 0XFA: case 0xFB: case 0xFC:
characters[sind] = 'u'; break;
case 0xD9: case 0XDA: case 0xDB: case 0xDC:
characters[sind] = 'U'; break;
case 0xE8: case 0XE9: case 0xEA: case 0xEB:
characters[sind] = 'e'; break;
case 0xC8: case 0XC9: case 0xCA: case 0xCB:
characters[sind] = 'E'; break;
case 0xE3: case 0XE0: case 0xE1: case 0xE2: case 0xE4: case 0XE5: case 0xE6:
characters[sind] = 'a'; break;
case 0xC3: case 0XC0: case 0xC1: case 0xC2: case 0xC4: case 0XC5: case 0xC6:
characters[sind] = 'A'; break;
default: ;
}
while (characters[sind]) { characters[sind-1] = characters[sind];sind++;}
characters[sind-1] = 0;
}
index++;
}
}
Are you sure? yes | no
Soon...
Are you sure? yes | no
Nice work! I am interested in this sketch and wirning diagram. Thank You!
Are you sure? yes | no
nice made it !
Are you sure? yes | no