Re: PIC memóriabank->portláb

Ágó István istvan3 at gmail.com
Fri Nov 16 11:50:10 CET 2007


Tóth Péter <tope1 at freemail.hu> írta, 2007.11.16.:
>
> Tényleg valami olyasmit ír, hogy közös, de már hogy lenne mind a 16
> közös?

Lehet, hogy rosszul értelmezed, hogy mit jelent az, hogy memóriaterület
felső vége?. A felső jelenti a legnagyobb címmel jelzett végét, esetünkben a
felső 16 a 70h-7Fh tartományt jelenti.



> Hmm. Asszem  2.8V-ot mértem rajta, mert 1K húzza fel és 1K-n keresztül
> hajom vele a tranyót.

Eleve nem értem, miért így van megoldva. Akkor már inkább 2k-val húznád fel,
és a pin direktben menne a tranzisztor bázisára. Még a tranzisztor
kikapcsolása is gyorsabb lesz.

Schmitt Triggeres ez a láb, 2.8V már magasnak kéne lenni...
> Kipróbálok, a tranyó bázinán a egy 4.7K-t, azzal is ki fog nyitni, a
> porton meg feljebb megy majd a fesz.

Ismét azt kell hogy mondjam, benne van az adatlapban, mit jelent az, hogy
Schmitt triggeres egy láb. Ne keverd a TTL-es lábbal, a kettő közel sem
ugyanaz. A 16F737 adatlap 18.4 fejezetében megtalálod, hogy ST láb esetén
mekkora a minimális feszültség, amit logikai 1-nek érez: min 0.8Vdd, vagyis
5V-os táp esetén minimum 4V. A 4k7-el működni fog, bár én nem így oldanám
meg. Mit kapcsol az a tranzisztor?

> Egyik lehetőség a megoldásra, hogy a port lábait nem birizgálod BCF/BSF
> > utasításokkal, hanem csinálsz egy árnyékregisztert, pl. PORT_A néven, és
> > ebben állítod a biteket BCF/BSF utasítással, és utána az egész PORT_A-t
> > kimásolod a PORTA-ra.
> >
> Ez jó lehet, kipróbálom. ... micsoda programozástechnikai finomságok...
> Az autómban is szar a váltó, de ha agresszívan váltok akkor jó :)


Működni fog, így hogy már tudjuk, mi a helyzet a lábbal kívülről, de
bármilyen, a PORTA-ra irányuló BCF/BSF utasítás hatására ismét be fog állni
nullára az RA4, tehát az egész programban vigyázni kell rá.

> Másik lehetőség, hogy kisebb felhúzóellenállást használsz, illetve az RA4
> > láb felhúzása utána vársz néhány utasításnyit (beszúrsz néhány NOP-ot,
> > illetve ha lehet, akkor átrendezed az utasítások sorrendjét egy kicsit),
> > mielőtt a PORTA valamelyik másik lábához hozzányúlsz.
> >
> A várakozást kipróbáltam kb. 500ms-mal, nem jött be.


Persze, mert a feszültség sosem ment  4V fölé. Tökéletesen úgy működött,
ahogy kellett neki, csak az nem egyezik azzal, amit vártál.

Kössz a tippet, hétvégén rázuhanok!
>
> ToPe
>
> -----------------------------------------
>           elektro[-flame|-etc]
>


More information about the Elektro mailing list