Strana 1 z 1

PNP + NPN na odpojenie Vcc aj GND

Napísané: 10 Sep 2020, 15:36
od používateľa Dybuk
Ahojte, potreboval by som po skonceni prace s LCD pouzit jeho dva komunikacne piny (v scheme DB4 a DB5) na inu I/O operaciu, aby vsak prudy netiekli smerom do LCD potreboval by som ho 1. vypnut od Vcc a 2. odpojit aj od GND. Co mi v rychlosti napadlo, je riesenie v prilohe, ale mam z toho nejake zmiesane pocity a nie som si isty ci taketo zapojenie je korektne (i ked funkcne by to malo byt). Mohol by sa mi k tomu vyjadrit niekto, kto elektronike rozumie trochu lepsie ako ja?
Tiez by ma zaujimalo, ci mam dat na bazy tranzistorov PULL-UP resp. PULL-DOWN rezistory voci Vcc/GND, idealne by bolo pomoct mi s dizajnom hodnot bazovych/PULL rezistorov. Neviem momentalne spotrebu LCD, ale povedzme ze je to 100mA a VCC = 3.3V.

Vrela vdaka.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 10 Sep 2020, 16:00
od používateľa Atlan
Vypinat lcd, netreba kludne tie piny pouzi.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 10 Sep 2020, 16:02
od používateľa romiadam
Ked vypnes LCD a znova zapnes musis ho stale inicializovat. Ja by som skor opdpajal tie komunikacne piny ( na ten styl ako je to u SPI protokole pin CS) a aby tie dva piny pre LCD neboli vo vzduchu, tak tam by som dal ci uz pull up alebo pull down odpor.
Pohladaj na internete ze ako sa to spravne robi. Ja som to este nerobil a nechcem ti tu radit neoveren veci. Vsak pockaj este kym sa niekto dalsi pripoji do tejto temy.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 10 Sep 2020, 16:28
od používateľa Dybuk
Este doplnim, ze LCD budem vypinat tak ci tak, to sluzi iba na pociatocne nastavenie zariadenia a dalej zariadenie bude fungovat autonomne bez potreby zobrazovania informacii pre pouzivatela a kvoli power saving ho chcem odstavit uplne od prevadzky. Len vsimol som si, ze ak neham pripojene GND, tak do datovych pinov tecie prud hoci VCC je odpojene.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 10 Sep 2020, 18:01
od používateľa Mek
Ak by to ozaj inak neslo, mozes pouzit rele - DPDT. Kedze ti ide o spotrebu, tak by si ho mal zapojene tak, aby pocas beznej prevadzky bolo vypnute, a pocas manipulacie s displejom zopnute.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 10 Sep 2020, 22:07
od používateľa peterple
Aký má odber ten tvoj LCD. Ja som to kedysi dávno riešil tak že som to napájal priamo z pinu procesora. Teda som neodpájal GND. To by malo za následok aj zdvihnutie hladiny pre log 0 o nejakých 0,4V, čo to už môže posúvať do zakázanej oblasti vstupného napätia. Minimálne sa tak oberáš o šumovú imunitu.
Ja by som to riešil nasledovne:
VCC - pin procesora, aktivny stav log 1 výstup. neaktívny stav vysoká impedancia
komunikačné piny aktívny stav log 1 alebo log.0, neaktívny stav, vysoká impedancia.
Nedostatok pinov by som riešil švábom čo má viac pinov, lebo si myslím že cez clampovacie diody na pinoch toho LCD sa bude ten displej "napájať" aj keď tam dáš VCC a GND cez relé.
Alebo potom nejakými latch registrami (paralelnými, alebo sériovými)

Inak pulup/pulldown vo všeobecnosti samozrejme áno, nakoľko počas resetu a až do doby než firmware nastaví porty sú tie drôty v lufte a teda môžu lietať kade tade. Zbadáš v momente ak to zariadenie bude v blízkosti nejakého výkonnejšieho zdroja EMI. Tie EMI normy a EMI testy nevymysleli len tak z dlhej chvíle.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 10 Sep 2020, 22:22
od používateľa Sahasrar
Más presne ten LCD ako je v schéme? Pretože väčšina LCD má pre tieto prípady Pin ENABLE (t vojom prípade pin 6). Citácia z manuálu LCD:
"E - "Enabling" pin; when this pin is set to logical low, the LCD does not care what is happening with R/W, RS, and the data bus lines; when this pin is set to logical high, the - LCD is processing the incoming data"

-- Spojený príspevok 10 Sep 2020, 21:42 --

Inak ešte mi napadlo, že väčšinou na pine 3 býva nastavovanie podsvietenia displeja možno by bolo elegantnejšie riešenie vypnúť podsvietenie, pretože to robí najväčšiu spotrebu ak ti ide o spotrebu... samotný LCD by už mal mať iba zbytkovú spotrebu < 1mA... Teda ak tvoja aplikácia nevyžaduje šetrenie každého elektrónu :D :D :D

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 07:14
od používateľa kukinko
podsvietenie jsu piny 15 a 16

podla mna by stacilo vypnut enable signal a vypnut podsvietenie - pripadne predtym "zmazat" zobrazenie na displeji aby tam nieco neostalo aj nepodsvietene ...

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 08:22
od používateľa romiadam
Ja som si nevsimol ten ENABLE pin. (moc detailne som to nestudoval). Potom tu nie je o com diskutovat.
Ako bolo spomenute, vypnut podsvietenie a aktivovat ENABLE pin, a hotovo.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 08:47
od používateľa Dybuk
Ahojte, dakujem za odpovede, riesenie s EN pinom a vypnutim iba podsvietenia dava zmysel - LCD bude ignorovat to co sa deje na datovych pinoch, ja sa vsak obavam aj o opacny pripad, ci zariadenie na opacnom konci linky nebude ovplyvnene pripojenym LCD v zapnutom stave.
Priklad: povedzme ze po skonceni komunikacie s LCD pouzijem pin DB4 na 1-wire komunikaciu s teplomerom a DB5 napriklad nastavim na procesore ako input ktory bude generovat prerusenie pri zmene stavu. Staci aby som na LCD dal EN na Log.0 a mam istotu, ze LCD nebude sposobovat problemy na 1-wire komunikacnej, pripadne vstupnej linke? Teoreticky by to nemusel byt problem ak dam nejake pull-upy aj na obe komunikacne linky DB4,DB5.
Potom by zapojenie vyzeralo asi cca nejak ako na dalsom obrazku, cez vikend to skusim otestovat.
Ale cisto teoreticky keby sa vratim k povodnej otazke - odpajat Vcc + GND kombinaciou dvoch tranzistorov ako je uvedene na prvom obrazku je akceptovatelne riesenie, ci skor blbost?

LCD je HD44780

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 09:28
od používateľa pocitujlasku
a preco to takto riesis? mas nedostatok pinov? lebo zdielat jeden pin pre viac roznych zariadeni moze byt v buducnosti zdrojom dost problemov.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 10:24
od používateľa Dybuk
Presne ako pises, beznadejne som vycerpal pocet pinov a hladam moznosti kde by sa z toho dalo este vytazit aspon 1 chybajuci pin. Vlastne som sa rozhodol obetovat 1 pin na riadenie tranzistorov ktore vypnu LCD aby som tym ziskal 2 piny RB4, RRB5.
Su este moznosti hardwarovych uprav (tento LCD existuje aj v 2 vodicovej verzii I2C, pripadne sa datova linka da multiplexovat), ale to pripustam az ako emergency riesenie, kedze sa jedna u vymenu alebo pridavanie hardwaru.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 10:31
od používateľa dan21
Co tak pouzit port extender ? Nejaky I2C ?

https://www.ti.com/lit/ds/symlink/pcf85 ... e.com%252F
http://funduino.blogspot.com/2011/11/lc ... NjKHWR8RV1

Sam ho pouzivam k plnej spokojnosti :-)

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 11:00
od používateľa Dybuk
Ano to je to I2C prevedenie co som spominal v predoslom prispevku a pripustam aj toto riesenie, ak sa mi to nepodari obist takymto zdielanim pinov. Len to odkladam ako nudzove riesenie nakolko to vyzaduje pridavanie dalsieho HW plus na I2C (SMbus) linke uz mam EEPROM a to spojazdnit na C8051 bol boj, nechcem si tym znovu prejst s dalsim zariadenim, no vylucene to nie je.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 11:09
od používateľa dan21
Pokial mu spravne nastavis adresu, tak by nemal byt problem. Na I2C zbernici mam teraz 3 rozne zariadenia a bezia v pohode :-)

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 13:02
od používateľa pocitujlasku
ved na to je prave I2C idealna. ked potrebujes komunikovat s viacerymi zariadeniami. ked spominas C8051, tak lcd mas v 4bit riadeni? ja by som to fakt urobil na i2c alebo nechces pouzit nejaky novsi mcu? x51 uz maju peknych par rokov a to, co sa tam robilo zlozito sa v novsich da urobit jednoducho

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 21:30
od používateľa peterple
Dybuk napísal: Ale cisto teoreticky keby sa vratim k povodnej otazke - odpajat Vcc + GND kombinaciou dvoch tranzistorov ako je uvedene na prvom obrazku je akceptovatelne riesenie, ci skor blbost?
Podľa mňa je to skôr blbosť, lebo:
Dnes sa bežný digitálny pin chráni zapojením ako som nakreslil na obrázok (clamping diode)
Ak sekneš obe napájacie vodiče tak podme špekulovať ak na toto "čudo" pripojíš na jeden pin log 1 a na druhý log 0, čo sa stane?
Tou prvou diodou prelezú 4V na VCC vnútri toho LCD radiča. Takže tam kde má byť 5V je momentálne 3,6V. Potom to napája ten LCD
a vracia sa to cez tú dolnú diodu do pinu č.2. Tam máme úbytok dohromady 0,8V takže ten LCD radič funguje na nejaké divné malé napätie.
Čo to spôsobí nikto nevie, je to prasačina, ktorá sa nerobí. Ak odpojíš iba VCC tak to napájacie napätie pre LCD obvody sa zvýši o 0,8V a tu už pomaly ten LCD radič bude skoro funkčne napájaný.
Keď ty ale zmeníš napätie na tých dvoch pinoch na rovnaké. Tak to zostane v lufte (nemá sa to kade uzatvoriť), takže odber klesne na 0.
Ako sa na tie prúdové impulzné odbery bude tváriť to druhé zariadenie ktoré tam budeš mať zapojené je len vo hviezdach. V prípade 1Wire zbernice si dovolím tvrdiť že moc nadšená tým nebude.

Kedže si pustil trochu viac info o tom čo vlastne chceš, tak riešenie je úplne jednoduché:
  1. Kedže signál Enable iba deaktivuje komunikačné rozhranie tak treba displej vypnúť. To nie je žiadny problém. Radič má príkaz na zapnutie, takže bude mať ten istý príkaz aj na vypnutie.
  2. Po vypnutí displeja treba už len držať E na log 0. To zabezpečí že datové linky displeja budú v stave vysokej impedanie. Inak povedané ako by tam neboli. Teda odpoveď na tvoju otázku
    Dybuk napísal:Staci aby som na LCD dal EN na Log.0 a mam istotu, ze LCD nebude sposobovat problemy na 1-wire komunikacnej, pripadne vstupnej linke?
    je nebude.
  3. Týmto pádom môžeš používať tie datové piny na čo chceš. to máš 4 alebo 8 pinov podľa toho koľko bitovú komunikáciu máš urobenú.
Na záver len rypnutie, to naozaj používaš toho dinosaura 8051C? Nejaké ISP Ti v roku 2020 nechýba? Atmel už 20rokov robí 89S51 s ISP ako majú AVR procesory, samozrejme plne kompatibilný s 8051. V tom momente ako to dali na trh, tak u mňa intelácke I8051 putovali do múzea.

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 22:31
od používateľa Dybuk
peterple vpodstate sa deje to co hovoris
Tou prvou diodou prelezú 4V na VCC vnútri toho LCD radiča. Takže tam kde má byť 5V je momentálne 3,6V. Potom to napája ten LCD a vracia sa to cez tú dolnú diodu do pinu č.2. Tam máme úbytok dohromady 0,8V takže ten LCD radič funguje na nejaké divné malé napätie.
a na prilozenom obrazku posielam co som si myslel ze sa deje. To vlastne vysvetluje preco som chcel GND seknut. LCD sa aj po odpojeni VCC snazil inicializovat = bol napajany cez datove piny. Ale pokial sa nemylim dialo sa to aj ked som drzal "E" na log 0, ale to este overim (i ked tak premyslam, to mi bolo asi prd platne ze "E" som drzal na log 0 ked Vcc bolo odpojene).

A teraz este koment k C8051:
1. neviem ci sa tym nejak obhajim, ale bavime sa o C8051F350 od Silicon Laboratories, nie o Intel C8051. Nesledujem nejak extra trh a trend v oblasti mikropocitacov, ale pokial dane zariadenie splna pozadovane ocakavania, neriesim ci uz je nieco novsie, jednoduchsie na trhu, robim s tym co mam.
2. asi ani tymto sa moc neobhajim, ale skusim: bez ohladu na to ci je leader Intel, Atmel, Silicon, alebo ktokolvek, pre mna su stale aj tak na prvom mieste 8-bitove PIC, ktore mozno uz tiez patria do muzea, ale doma v garazi..? Uplne stacia a na nich pri 35 instrukciach sa da krasne vyblaznit aj v assembleri
3. jedine cim sa mozem obhajit je asi fakt, ze sa jedna o.. nazvime to "skolsky projekt" a nie je tu velmi moznost vyberat si

Re: PNP + NPN na odpojenie Vcc aj GND

Napísané: 11 Sep 2020, 22:43
od používateľa peterple
Tak to je úplne iná liga ako ten mnou spomínaný atmel. Mne nevadilo že 8051. Ale že C8051. Teda myslel som si že nejaký predpotopný Cmos bez ISP. Keby som vedel hned od začiatku o aký 8051 ide tak by som si samozrejme rypnutie odpustil. Vedieť presný typ je dôležité aj z pohľadu funkcie. Pôvodné 8051 mali tzv bidirectional porty, ktoré sa neprogramovali ako teraz. Ale fungovali aj ako vstup aj ako výstup. Tie sa naprázdno môžu chovať úplne inak. Takže to bola veľmi relevantná informácia k problému, ktorú si ale neposkytol.

Ako vidíš, seknutie GND nič nerieši. Prúd sa vie uzatvoriť cez ten druhý pin s opačnou log úrovňou. E môžeš držať v nule koľko chceš, to je fuk. Stačí jeden pin s log 1 a už to tečie.

-- Spojený príspevok 11 Sep 2020, 21:55 --

Pozerám že to má aj I2C prečo bolo potom problém pripojiť I2C EEPROM? Tým pádom ani ten I2C displej by nemal byť žiadny problém pripojiť. Aj keď si myslím že najlepšiu odpoveď si dostal hneď od Atlana. VCC a GND nevypínať, ale datové piny kludne použiť.
Prípadne teda vypnúť displej sw príkazom, ale nie cez tranzistory.