Stránka 1 z 1

Velky odber oled displeja pri powersave mode

Napsal: 26 čer 2019, 08:31
od minicico1
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.

Re: Velky odber oled displeja pri powersave mode

Napsal: 26 čer 2019, 10:07
od gilhad
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).

Re: Velky odber oled displeja pri powersave mode

Napsal: 26 čer 2019, 11:48
od pavel1tu
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.

Re: Velky odber oled displeja pri powersave mode

Napsal: 14 črc 2019, 17:06
od minicico1
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?

Re: Velky odber oled displeja pri powersave mode

Napsal: 14 črc 2019, 19:22
od jankop
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í

Re: Velky odber oled displeja pri powersave mode

Napsal: 14 črc 2019, 19:39
od gilhad
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.

Re: Velky odber oled displeja pri powersave mode

Napsal: 14 črc 2019, 19:41
od gilhad
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ě.

Re: Velky odber oled displeja pri powersave mode

Napsal: 14 črc 2019, 20:42
od minicico1
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.