Oled displej - driver sh1106

Uživatelský avatar
robokop
Site Admin
Příspěvky: 22399
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

12. 11. 2023, 4:36

to to vidis moc cerne
vetsinou to funguje dost dobre a da se z toho vychazet kdyz ti neco nejde kdyz prave kvuli zminene rychlosti pises rutinky vlastni.
To ze ti ty knihovny nefungovali paklize jsi to 2x zkousel a zbytku sveta nejak funguji bude jiste necim jinym. Treba nepochopenim filozofie v arduinu.
Samozrejme to arduino dost obaluije takze to neni efektivni ale zase jsou tam udelane vychytavky ktere bych psal dva roky a jsou k mani za 5 minut.
jde o to co presne potrebujes.
Vsechna prava na chyby vyhrazena (E)
Uživatelský avatar
zz912
Příspěvky: 1357
Registrován: 25. 5. 2008, 7:16

12. 11. 2023, 4:39

atlan píše: 12. 11. 2023, 4:33 Kupovat displej nemusi, staci si stahnut simulator.
Máš nějakej vyzkousenej? Displej už měl být v pátek.
LinuxCNC - MESA 7i96
zz912.webnode.cz
t256
Příspěvky: 2835
Registrován: 19. 1. 2012, 4:49

12. 11. 2023, 4:48

Vsechny tyhle simulatory maji jednu spolecnou vlastnost: odtrzenost od reality. At uz vetsi nebo mensi. Vykasli se na ne, pak zas budes klasicky resit "v simulatoru to krasne funguje ale v realu ani tuk, co s tim?"
atlan
Příspěvky: 3346
Registrován: 7. 2. 2011, 9:12

12. 11. 2023, 6:27

Myslim ze diplej tam. Fungovat bude. Proteus simulator
Uživatelský avatar
zz912
Příspěvky: 1357
Registrován: 25. 5. 2008, 7:16

12. 11. 2023, 6:32

atlan píše: 12. 11. 2023, 6:27 Myslim ze diplej tam. Fungovat bude. Proteus simulator
Dekuji
LinuxCNC - MESA 7i96
zz912.webnode.cz
Uživatelský avatar
zz912
Příspěvky: 1357
Registrován: 25. 5. 2008, 7:16

12. 11. 2023, 8:24

Pochybuji, že by někdo dělal na tyhle OLED displeje vlastní knihovnu, ale když už jsem na to přišel, tak se s vámi podělím. Reverzním inženýrstvím z dostupné knihovny, jsem své dotazy vyřešil.

Na straně 13 je tato věta:
DC.png
Takže označení pinu D/C (na driveru A0) se jmenuje Data/Command a dle jeho stavu se rozlišuje, zda posílám po SPI Data nebo Command.

Kuuu****áááá , kdo psal ten návod? No číňani přece ....

Tahle věta je uvedená v popisu protokolu na I2C. Návod jsem četl několikrát, ale tento odstavec jsem přeskakoval protože se v něm vysvětluje protokol pro I2C a navíc pro SPI 4-wire žádný pin D/C není (pro tuto variantu zapojení se jmenuje A0).

Už jsem z toho byl nemocnej, že zahodím všechny snahy o to stát se Embedded programátorem, že na to nemám. Tímto se omlouvám za všechny negativa řečené z mé strany na manuály od Mesy, ty v takovém chaosu rozhodně nejsou.

To nemohly napsat pro těch pár sběrnic co ta sh1106 umí, napsat pár protokolů? Ušetřilo by mi to 3 dny pátrání.

Každopádně děkuji všem za příspěvky, pomohli mi.

Vyhráno ještě nemám, ale už vím, jak aspoň začít. To jsem předtím nevěděl.

Zdeněk
LinuxCNC - MESA 7i96
zz912.webnode.cz
atlan
Příspěvky: 3346
Registrován: 7. 2. 2011, 9:12

12. 11. 2023, 8:25

Sorry pozeram ze tento typ tam neni. V simulatore
Uživatelský avatar
zz912
Příspěvky: 1357
Registrován: 25. 5. 2008, 7:16

12. 11. 2023, 8:29

atlan píše: 12. 11. 2023, 8:25 Sorry pozeram ze tento typ tam neni. V simulatore
Nevadí, třeba ten simulátor využiji někdy jindy.
LinuxCNC - MESA 7i96
zz912.webnode.cz
Uživatelský avatar
Radhard
Příspěvky: 288
Registrován: 1. 7. 2020, 10:19
Bydliště: Praha
Kontaktovat uživatele:

12. 11. 2023, 10:49

To dáš ;-) Čínské návody jsou sice peklo, ale lepší nedostaneš. Pár věcí jsem s OLED na driveru 1306 (to je sourozenec 1106) dělal a není to problém. Co problém byl, že sem tam v některých kusech soudruzi v číně osadili větší R v obvodu pro reset a ten trval 3 sekundy po zapnutí zařízení a já proč se to nechce inicializovat ;-)

To C se fakt nauč. A vlastní kód (knihovny) sice trochu bolí, ale časem se bohatě zůročí.
t256
Příspěvky: 2835
Registrován: 19. 1. 2012, 4:49

13. 11. 2023, 7:53

Ty cinske datasheety je treba cist opravdu poradne. Oni tam vetsinou maji vsechno, ale je to psane tak nejak usporne nebo jak to nazvat. Ja mel napriklad problem s jinym displejem ktery mi nechtel chodit textovem rezimu. Az uplne na konci DS mezi kravinami typu vibrace a nadmorska vyska byl jako poznamka pod carou nenapadne uveden drobny detail, ze v textovem rezimu se tam musi poslat stejna data 2x za sebou, pak uz to jelo. Kdyz uz nic, aspon ses naucil pracovat s cinskymy datasheety 😀
Uživatelský avatar
zz912
Příspěvky: 1357
Registrován: 25. 5. 2008, 7:16

16. 11. 2023, 5:58

Tak displej už doma mám a zatím ho zbaběle provozuji s arduino knihovnou. Vše funguje jak má.

Chtěl jsem ji promazat, aby z ní zbylo minimum, ale je psaná objektově, takže mi to moc nejde.

Každopádně mě to přivádí k myšlence jaké jsou výhody/nevýhody psaní C vs C++ pro mikrokontrolery.

Automobilky píšou v C, ale výrobci mikrokontrolerů dělají kompilatory v C++.

Co si o tom myslíte?
LinuxCNC - MESA 7i96
zz912.webnode.cz
oscar
Příspěvky: 1190
Registrován: 2. 5. 2010, 8:50
Bydliště: Perníkovice

16. 11. 2023, 8:00

Nevím co máš za procesor, a jak složitou věc s tou grafikou zamyslis, ale IMHO si to tim C++ zbytečně komplikujes. Někdy je na jednoduchých procesorech jednoduché C naprosto dostačující a nejefektivnejsi.
Ale je to jenom můj názor.....
Dawe
Příspěvky: 2524
Registrován: 8. 10. 2013, 6:18

16. 11. 2023, 8:33

Tak tak, C++ pokud potrebujes featury objektoveho programovani, jako zapouzdrenost nebo dedicnost. Takze zalezi na tom co a na jakem hw vlastne vyvijis. Pro hodne veci staci ansi C a dobra znalost daneho kompilatoru.
TOS S28, DIY CNC, Holzmann ZS-40HS, Prusa Mk3s+MMU2s, Bambu X1C Combo
Uživatelský avatar
zz912
Příspěvky: 1357
Registrován: 25. 5. 2008, 7:16

16. 11. 2023, 9:03

No, já si to nechci komplikovat tím c++. Ono ty knihovny už jsou napsané v c++. Tak se jen zamýšlím proč.
LinuxCNC - MESA 7i96
zz912.webnode.cz
Uživatelský avatar
Radhard
Příspěvky: 288
Registrován: 1. 7. 2020, 10:19
Bydliště: Praha
Kontaktovat uživatele:

16. 11. 2023, 9:26

Protože to šetří psaní textu při samotném programování.
Výsledný zdrojový kód je kompaktnější. Více abstrakní, elegantní.
Data jsou pohromadě s metodama, která s těmi daty pracují.

Na první pohled samé výhody, ale některé konstrukce mohou být problematické a proto automoto, aerospace a pod. jedou v C a ještě jsou v něm některé postupy zakázané.

C++ a C lze kombinovat, takže se hodí obojí.

Jo a není pravda, že výrobci cpu/mcu dodávají knihovny a compilátory jen pro C++
Naopak, většinou je k dispozici nějaký ASM a C překladač a když nic jinýho, tak GCC.

Arduino je postavený na C++ ( BFU pak neřeší nějaké funkce, ale volají rovnou metody těch objektů).
Odpovědět

Zpět na „Ostatní elektronika“