maly OLED 128x64 a knihovna

Odpovědět
Vladimir66
Příspěvky: 353
Registrován: 02 dub 2014, 15:30

maly OLED 128x64 a knihovna

Příspěvek od Vladimir66 »

Zdravim,
tak jsem dal do robota I2C diisplej 128x64.
https://www.aliexpress.com/item/White-B ... cb0cee031f

funguje super, ale knihovna "u8g" je pekny moloch a zabira hodne mista v pameti Arduina.
jako alternativu muzete zkusit tuto knihovnu
https://github.com/stanleyhuangyc/MultiLCD

zkopirovat adresar "MultiLCD" do "libraries"
Velkou vyhodou teto knihovny je, ze jednoduse zobrazi promenne ruznych typu a nemusim je prevadet.
(konkretne vystup kompasu je ve float a uplne bez problemu)
Vyzkousejte a kdyz najdete neco jeste lepsiho, napiste.
V66
Naposledy upravil(a) Vladimir66 dne 28 kvě 2017, 09:36, celkem upraveno 3 x.
Uživatelský avatar
Dex
Administrátor
Příspěvky: 1312
Registrován: 16 úno 2013, 14:26

Re: maly OLED 128x64 a knihovna

Příspěvek od Dex »

Zajímavé a užitečné ;)

Bude zajímavé, jak to bude šlapat s displejem 128x64, který má ale řadič SH1106 primárně určený pro 132x64 - to bývá někdy malý problém. Tato kombinace se vyskytuje u 1,3" OLED displejů.
"all your robots are belong to us"
robodoupe.cz | rxd.cz | codetory.cz
pgerla
Příspěvky: 377
Registrován: 11 dub 2013, 00:17

Re: maly OLED 128x64 a knihovna

Příspěvek od pgerla »

Dex píše: 23 kvě 2017, 23:22 Zajímavé a užitečné ;)

Bude zajímavé, jak to bude šlapat s displejem 128x64, který má ale řadič SH1106 primárně určený pro 132x64 - to bývá někdy malý problém. Tato kombinace se vyskytuje u 1,3" OLED displejů.

Kód: Vybrat vše

	0xAE,			// Display OFF (sleep mode)
	0x20, 0b00,		// Set Memory Addressing Mode
					// 00=Horizontal Addressing Mode; 01=Vertical Addressing Mode;
					// 10=Page Addressing Mode (RESET); 11=Invalid
	0xB0,			// Set Page Start Address for Page Addressing Mode, 0-7
	0xC8,			// Set COM Output Scan Direction
	0x00,			// ---set low column address
	0x10,			// ---set high column address
	0x40,			// --set start line address
	0x81, 0x3F,		// Set contrast control register
	0xA1,			// Set Segment Re-map. A0=address mapped; A1=address 127 mapped. 
	0xA6,			// Set display mode. A6=Normal; A7=Inverse
	0xA8, 0x3F,		// Set multiplex ratio(1 to 64)
	0xA4,			// Output RAM to Display
					// 0xA4=Output follows RAM content; 0xA5,Output ignores RAM content
	0xD3, 0x00,		// Set display offset. 00 = no offset
	0xD5,			// --set display clock divide ratio/oscillator frequency
	0xF0,			// --set divide ratio
	0xD9, 0x22,		// Set pre-charge period
	0xDA, 0x12,		// Set com pins hardware configuration		
	0xDB,			// --set vcomh
	0x20,			// 0x20,0.77xVcc
	0x8D, 0x14,		// Set DC-DC enable
	0xAF			// Display ON in normal mode
	
};
Mě to příjde přehledně konfigurovatelné :P
Uživatelský avatar
Dex
Administrátor
Příspěvky: 1312
Registrován: 16 úno 2013, 14:26

Re: maly OLED 128x64 a knihovna

Příspěvek od Dex »

Až dorazí displej, musím to vyzkoušet. Ďábel totiž může být skryt v detailech, jako kdysi u podobné knihovny od Adafruit ;)

Těch nejčastějších 0,96" velkých se to pochopitelně netýká, tam je jiný řadič (aby to někoho nemátlo).
"all your robots are belong to us"
robodoupe.cz | rxd.cz | codetory.cz
Odpovědět