Znegovanie vstupu 89c2051

Problémy s návrhem, konstrukcí, zapojením, realizací elektronických zařízení

Moderátor: Moderátoři

Zpráva
Autor
PabloX
Příspěvky: 983
Registrován: 16 kvě 2005, 00:00
Bydliště: Ruzomberok
Kontaktovat uživatele:

Znegovanie vstupu 89c2051

#1 Příspěvek od PabloX »

Zdravim staviam alarm s PR22 riadeny AT89C2051, ale dneska som prisiel na problem - program pre procesor je urobeny tak, ze poplach sa spusti pri privedeni +5V na vstup procesora, cize zopnutim spinaca. Ja som to potreboval znegovat - aby sa poplach spustil pri rozpojeni spinaca (otvorenie dveri). Pouzil som toto jednoduche zapojenie
Obrázek
R7 - 4k7 - pri vacssom nefungovalo
R9 - 10k
T11- BC547
Avsak pri testoch som zistil, ze ked je tlacitko zopnute (baza skratovana) tak je odber na 5V vetvi kde je len procesor 100mA (!!!) Po preruseni spoja na procesor klesol odber tak ako mal. Problem je teraz s tou negaciou, neviete poradit ako to urobit tak aby mi to nerobilo haluze ako teraz? Ked dam bazovy odpor cez 4k7 tak to nefunguje.
Vdaka za rady.
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#2 Příspěvek od nekmil »

89C2051 má po resetu zapnutý "pull-up" čili na portech je úroveň H.
Nestačilo by tedy připojit tlačítko přímo na daný pin ?
Uživatelský avatar
Masob
Příspěvky: 194
Registrován: 27 čer 2007, 00:00
Kontaktovat uživatele:

#3 Příspěvek od Masob »

Přesně tak, připoj rozpínací tlačítko mezi zem a pin procesoru.
Uživatelský avatar
Kado
Příspěvky: 44
Registrován: 27 říj 2007, 00:00
Bydliště: PB, SVK

#4 Příspěvek od Kado »

2051 sice maju po resete log.1 na vsetkych v/v pinoch avsak jeho problem je, ze alarm sa spusta privedenim log.1 na dany pin procesoru a zrejme ma len rozpinacie "tlacidlo" takze je treba negovat vstupny signal...skus nasledujucu schemu
EDIT: alebo ako pisu kolegovia pripojit tlacidlo na pin procesora a zem a mozno by to chcelo este posilnit rezistorom na Vcc...
Přílohy
tlac.png
(11.52 KiB) Staženo 109 x
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#5 Příspěvek od nekmil »

Tlačítko zcela postačuje, žádného tranzistora netřeba.

Po startu program zřejmě zjišťuje stav daného pinu a najde na něm úroveň L tedy alarm nespustí, rozepne-li se tlačítko objeví se tam úroveň H a dále se děje to co je dále v programu.
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#6 Příspěvek od nekmil »

Ještě k tomu původnímu dotazu:
pokud tam teče 100mA tak by bylo vhodné zjistit jestli na tom pinu "16" není úroveň L "nastavená programem" potom by ten proud tekl přímo na zem a odpor R9 se neuplatní.
Uživatelský avatar
nekmil
Příspěvky: 787
Registrován: 06 bře 2005, 00:00
Bydliště: Havířov

#7 Příspěvek od nekmil »

to Kado: tvoje schéma je samozřejmě správné, ale musíš vést ke spínači 2 dráty.

My, kteří za svou nejlepší povahovou vlastnost považujeme "lenivost",(což je údajně smrtelný hřích) :)
jeden kontakt spínače uzemníme přímo a do řídící jednotky vedeme jen 1 drát. :lol:
Uživatelský avatar
Kado
Příspěvky: 44
Registrován: 27 říj 2007, 00:00
Bydliště: PB, SVK

#8 Příspěvek od Kado »

nekmil píše:Ještě k tomu původnímu dotazu:
pokud tam teče 100mA tak by bylo vhodné zjistit jestli na tom pinu "16" není úroveň L "nastavená programem" potom by ten proud tekl přímo na zem a odpor R9 se neuplatní.

keby tam bola programom zapisana log.0 tak by sa prislusny pin choval ako vystupny (je zopnuty integrovany tranzistor v IO) pricom tento pin sa ma "spravat" ako vstupny tj. tranzistor musi byt zavrety tj. musi byt na pin programom zapisana log.1...ale mozne je vsetko...najlepsie by bolo pristupit k meraniu napatia na spominanom bite...
PabloX
Příspěvky: 983
Registrován: 16 kvě 2005, 00:00
Bydliště: Ruzomberok
Kontaktovat uživatele:

#9 Příspěvek od PabloX »

Tak som skusil zapojenie od Kada, predtym ma nenapadlo pouzit PNP tranzistor. Stav sa obratil ale spravne - pri zopnutom tlacitku (zavrete dvere) to zere cca 20mA, pri otvoreni dveri prud stupol na tych 100mA a vyvolal poplach. Este skusim zmerat napatie na tom pine, mozno nebude fakt treba ten tranzistor, uvidime, pisnem zajtra vysledok.

Ide o to ze ten pin reaguje na +5V, cize na zopnutie tlacitka ale mne treba aby sa na pine objavilo tych 5V po rozopnuti tlacitka a program konal co ma.
Uživatelský avatar
FERYACT
Příspěvky: 2285
Registrován: 20 dub 2005, 00:00
Bydliště: Krnov

#10 Příspěvek od FERYACT »

PABLO X: pin 16 musí být nakonfigurován jako vstupní ne jako výstup "1"
Uživatelský avatar
Masob
Příspěvky: 194
Registrován: 27 čer 2007, 00:00
Kontaktovat uživatele:

#11 Příspěvek od Masob »

Já nevím, co pořád vymýšlíš s tím tranzistorem. Normálně připoj tlačítko mezi zem a pin procesoru a máš po starostech. To zapojení s tranzistorem od "Kado" je pěkně hazardní, protože se klidně může stát, že sepne procesor k zemi a můžeš si ten vstup odpálit..

Najdi si zapojení pinu 2051- zjednodušeně je tam otevřený kolektor a zvedací odpor myslím kolem 20kOhm, takže když se tlačítko rozepne, tak se tam objeví 5V i bez vnějšího přivedení.
PabloX
Příspěvky: 983
Registrován: 16 kvě 2005, 00:00
Bydliště: Ruzomberok
Kontaktovat uživatele:

#12 Příspěvek od PabloX »

To tlacitko proti zemi som skusal, procak nan nereaguje, reaguje az po privedeni +5V. Na pine je stale 0V takze to vysvetluje preco to odobera taky velky prud, z +5V tecie cez procak na zem.

Takze jedine uprava vo SW ze?
Uživatelský avatar
Masob
Příspěvky: 194
Registrován: 27 čer 2007, 00:00
Kontaktovat uživatele:

#13 Příspěvek od Masob »

No tak jestli máš na pinu bez ničeho 0V, tak je chyba uvnitř a nepomůže ti ani tranzistor. Máš to na správném pinu? Ten program si píšeš sám, nebo je od někoho jiného?
Uživatelský avatar
Kado
Příspěvky: 44
Registrován: 27 říj 2007, 00:00
Bydliště: PB, SVK

#14 Příspěvek od Kado »

Skus spominany pin procesora "posilnit" rezistorom 10k na +Vcc a pripoj tvoje rozpinacie tlacidlo na pin a zem...a skusaj
PabloX
Příspěvky: 983
Registrován: 16 kvě 2005, 00:00
Bydliště: Ruzomberok
Kontaktovat uživatele:

#15 Příspěvek od PabloX »

Proti zemi tam je fakt tych 0V. Takto to fungovalo od zaciatku, uz mam novy procak (stary som spalil) takze o chybe vnutri pochybujem. Program mi napisal kamarat, je v ASM tu:
http://www.pablox.cq.sk/prog21.asm

To s tym rezistorom na VCC som skusal, nepomaha to, siel som od hodnoty 10k po 220R. Po zapnuti sa rozsvieti cervena LED a poplach sa vyvola az ked pustim 5V na ten vstup.
Odpovědět

Zpět na „Řešení problémů s různými konstrukcemi“