Velky odber oled displeja pri powersave mode

Odpovědět
minicico1
Příspěvky: 29
Registrován: 30 kvě 2019, 01:13
Reputation: 0

Velky odber oled displeja pri powersave mode

Příspěvek od minicico1 » 26 čer 2019, 08:31

Ahojte, uz dlhsiu dobu si neviem rady s projektom fm radia s oled displejom napajanim bateriou.odber pri zapnuti je od 60mA vyssie podla hlasitosti.ked vsak uspim radio do stadby dialkovym ovladacom.vsetko funguje akoma-uspi sa mi fm modul, zosilnovac, arduino mini s vybratou power led a stabilizatorom a po prikaze v kniznici u8g2 "powersave"aj displej.problem je ze odber mi zostane na 12mA.ked odpojim display odber padne na 0,4mA co by mi stacilo nakolko radio bude dobijane solarnym clankom.vsetko komunikuje po i2c zbernici.display mi v standby zerie tych 12mA aj s pouzitim adafruit kniznice.

Uživatelský avatar
gilhad
Příspěvky: 778
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: Velky odber oled displeja pri powersave mode

Příspěvek od gilhad » 26 čer 2019, 10:07

Pokud je display z číny, tak je možné cokoli (např, že se uspí řídící obvod, ale podsvícení ne). Pak by pomohlo mu místo uspání (nebo navíc k němu) odpojit napájení nějakým tranzistorem nebo tak nějak.

Další problém u uspávání může být ta i2c sběrnice, pokud se něco odpojí od napájení, ale ne od sběrnice, co na ní visí (tedy ten display), tak to může stáhnout sběrnici dolů a tím ji paralyzovat - takže to odpojení zdroje by se muselo udělat jinak, než přez iěc, jinak bys ho nemusel být schopný znovu zapojit (což je potřeba prostě zkusit, třeba to problém nebude, ale třeba bude).

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Velky odber oled displeja pri powersave mode

Příspěvek od pavel1tu » 26 čer 2019, 11:48

Já používám příkaz sleep(on/off) a v pohodě.
Jen musí být navolen opravdu ten displej co máš.

Na zařízeních co jedou z baterek jsem zkoušel jít s kontrastem dolů (u8g.setContrast(value), ale nefungovalo to.
Pak jsem testoval ještě stažení podsvícení dle tohoto:

Kód: Vybrat vše

#define BRIGHTNESS 0x01
#define BRIGHTNESSREG 0x81


void setBrightness( ){
    Wire.beginTransmission(0x3c);
    Wire.write(0x00);
    Wire.write(BRIGHTNESSREG);
    Wire.endTransmission();
    Wire.beginTransmission(0x3c);
    Wire.write(0x00);
    Wire.write(BRIGHTNESS);
    Wire.endTransmission();
}
má to opět snížit odběr za provozu, ale nerozchodil jsem to.
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

minicico1
Příspěvky: 29
Registrován: 30 kvě 2019, 01:13
Reputation: 0

Re: Velky odber oled displeja pri powersave mode

Příspěvek od minicico1 » 14 črc 2019, 17:06

Skusal som uz vsetko, pokial display neodpojim od napetia stale v spanku zerie tych 12mA.ked odpojim display tranzistorom od napajania pred uspanim po prebudeni uz nensbehne az do resetu arduina.dnes ma napadlo, ekzistuje nejaky sposob ako po prebudeni zresetovat automaticky arduino?

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Velky odber oled displeja pri powersave mode

Příspěvek od jankop » 14 črc 2019, 19:22

Pokud je display z číny, tak je možné cokoli (např, že se uspí řídící obvod, ale podsvícení ne)
Pak jsem testoval ještě stažení podsvícení dle tohoto:
Vy mě děsíte, já naiva jsem si doposud myslel, že OLED displeje podsvícení nemají

Uživatelský avatar
gilhad
Příspěvky: 778
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: Velky odber oled displeja pri powersave mode

Příspěvek od gilhad » 14 črc 2019, 19:39

Určitě existuje, ale možná je spíš chyba v tom, že po odpojení a připojení toho displaye ten display ještě potřebuje zinicializovat (protože byl právě zapnutý) a to musíš udělat po probuzení ty.

Tedy pokud někde v setup() máš něco jako oled.setup(), tak ho musíš pochopitelně zavolat znovu, stejně jako všechna ostatní nastavení toho displeje (podsvícení, kontrast, rotaci ... prostě všechno, co jsi nastavil)

a Arduino knihovny dost často dělají inicializaci v rámci vytvoření objektu, takže pokud je to tento případ, tak se musíš podívat, jak je ten objekt vytvořený a ze všeho nejdřív zopakovat tuhle inicializaci.

Pokud potřebuješ zresetovat arduino, tak od toho je tlačítko reset. Podívej se do schématu, kam a jak je zapojené a vytáhni si na nějakou nožičku tranzistor, který tomu udělá to samé (a nezapomeň na patřičné ošetření toho tranzistoru externíma pull-up/down odporama, protože po resetu to arduino bude mít všechny piny "odpojené" dokud nepřetrpí čekání v bootloaderu a v setup() si je nějak nanastaví a ty nechceš, aby během té doby se to zresetovalo znovu.

Uživatelský avatar
gilhad
Příspěvky: 778
Registrován: 07 bře 2018, 11:22
Reputation: 0

Re: Velky odber oled displeja pri powersave mode

Příspěvek od gilhad » 14 črc 2019, 19:41

jankop: Tak ne podsvícení, ale Brightness nebo cokoli jiného ... co já vím, co tam má, třeba napájení nějakých budičů ...

klasicky třeba u BluePill je blbě odpor pro USB, takže než to člověk rozchodí, tak ho musí odpájet a vyměnit (nebo přemostit jiným odporem).

Zase u jiné destičky je připojený reset (aktivní v LOW) přímo k zemi, takže je nutno na tišťáku ten spoj přeškrábnout a buď to přivést na Vcc, nebo na nějaký jiný vstupní bod a ovládat to odtamtud (plus pořešit pullup, či tak něco).

Prostě pokud nevíš jak to je zapojené, tak se nemůžeš spolehnout na to, že je to zapojené správně.

minicico1
Příspěvky: 29
Registrován: 30 kvě 2019, 01:13
Reputation: 0

Re: Velky odber oled displeja pri powersave mode

Příspěvek od minicico1 » 14 črc 2019, 20:42

Ten oled by mal mat nejake charge pump na doske pre napajanie samotneho oled ale ked ich prikazom vypnem nic sa nedeje.je mozne ze to ma niekde na doske prepojene natrvalo.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 9 hostů