 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
herba Član


Pridružen-a: Pet 01 Avg 2008 20:05 Prispevkov: 39 Aktiv.: 0.19 Kraj: Ljubljana
|
Objavljeno: Čet Avg 16, 2012 3:56 pm Naslov sporočila: Simulacija pritiska tipke z PIC-em |
|
|
Delam na projektu, kjer uporabljam zunanji audio modul (predvajanje glasbe iz spominske kartice, usb priključka), ki bi ga želel krmiliti za glavnim-svojim mikroprocesorjem. Rad bi torej simuliral pritisk tipk, ki jih ima modul (4. tipke za nazaj, naprej, predvajaj in izbiro medija). No pri tem se zatekne. Ne morem uporabiti relejev, ker ne delujejo brezslišno; do sedaj sem pri starem sistemu delal z njimi, vendar se v tišini sveda sliši njihovo klikanje, kar je moteče. Zadeve sem se najprej lotil tako da sem na tipke namestil žičke, ki sem jih pripeljal do I/O portov mikrokrmilnika, ko bi nastavil I/O port na vhod, bi tako simuliral sklenjeno stikalo, priklop na maso. Način ne deluje, na kar ugotovim, da so vse tipke prek različnih upornosti vezane na skupno vodilo do glavnega procesorja modula, kar je seveda logično, ko nimaš na voljo zadostnega števila nogic (shema v priponki). Vendar z svojim mikročipom tako pokvarim razmere v modulskem vezju, da on več ne prepozna pritiskov tipk, jih meša med sabo itd. V glavnem moj mikrokontroler ima prevelik vpliv na modulskega. Poskušal sem z raznimi pull-up upori, spremembami tipov I/O portov, v glavnem nisem uspel.
Še to, napetost na uporih na shemi je enaka napajalni napetosti, kakšna je vezava od puščice naprej pa nevem, saj je tiskanina "skrita" pod ohišje za sd kartico. Naj še povem da če žičko vzameš fizično v roko in jo stakneš z maso, se obnaša normalno kot pritisk gumba. Nasvet kako simulirati pritisk tipke sem pobral iz microchip-ove strani, ga že uporabil pri nekem drugem projektu, samo tam je bila vsaka tipka vezana na svoj pin mikrokontrolerja.
Modul ima tudi ir sprejemnik in upravljanje z daljincem, toda temu načinu bi se res radi izognil, saj je potem težko narediti zaprti sistem, treba je ugotoviti protokol, kode itd.
Potrebujem kakšno idejo, kako še pristopiti k problemu.
Opis: |
Modre pike označujejo mesto priklopa zunanjih žic. |
|
Velikost datoteke: |
15.56 KB |
Pogledana: |
3815 krat |

|
_________________ lp.
Nazadnje urejal/a herba Čet Avg 16, 2012 4:16 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
 |
igo Član

Pridružen-a: Sre 11 Okt 2006 19:11 Prispevkov: 3641 Aktiv.: 16.01
|
Objavljeno: Čet Avg 16, 2012 4:07 pm Naslov sporočila: Re: Simulacija pritiska tipke z PIC-em |
|
|
herba je napisal/a: |
... Zadeve sem se najprej lotil tako da sem na tipke namestil žičke, ki sem jih pripeljal do I/O portov mikrokrmilnika, ko bi nastavil I/O port na vhod, bi tako simuliral sklenjeno stikalo, priklop na maso. Način ne deluje, na kar ugotovim, da so vse tipke prek različnih upornosti vezane na skupno vodilo do glavnega procesorja modula, kar je seveda logično, ko nimaš na voljo zadostnega števila nogic (shema v priponki). ... |
1. Napiši, kolikšne so tiste 4 upornosti.
2. "ko bi nastavil I/O port na vhod, bi tako simuliral sklenjeno stikalo, priklop na maso." Prav je ravno obratno !! Ko nastaviš MCU pin na vhod, bodo tiste 4 pike na potencialih, ki jih določa vezje. Ko pa boš MCU pin nastavil na izhod in ga zvlekel na "0", boš simuliral pritisk tipke.
Popravi torej program, da bodo tisti štirje pini ves čas vhodi. Za simulacijo pritiska na tipko pa bodo za "nekaj" časa postali izhodi z vrednostjo "0". Tisto "nekaj" časa je vsaj minimalen čas, ki ga vezje potrebuje, da "0" zazna kot pritisk na tipko, ne pa kot naključno motnjo - malo boš moral poskušati.
_________________ Teoretično je praksa posledica teorije, praktično je pa ravno obratno. (igo 2001)
LP, Igor |
|
Nazaj na vrh |
|
 |
RGorazd Član


Pridružen-a: Čet 20 Maj 2004 15:57 Prispevkov: 1714 Aktiv.: 7.24 Kraj: Ig
|
Objavljeno: Čet Avg 16, 2012 4:21 pm Naslov sporočila: |
|
|
Uporabi REED.
Tega ne boš slišal.
LP G
_________________ .
._. _ _ ._. _.__. _|
[ (_](_)[ (_] /_(_]
._| |
|
Nazaj na vrh |
|
 |
herba Član


Pridružen-a: Pet 01 Avg 2008 20:05 Prispevkov: 39 Aktiv.: 0.19 Kraj: Ljubljana
|
Objavljeno: Čet Avg 16, 2012 4:24 pm Naslov sporočila: |
|
|
Citiram: |
1. Napiši, kolikšne so tiste 4 upornosti. |
Popravil na priloženi priponki.
Citiram: |
2.Prav je ravno obratno !! Ko nastaviš MCU pin na vhod, bodo tiste 4 pike na potencialih, ki jih določa vezje. Ko pa boš MCU pin nastavil na izhod in ga zvlekel na "0", boš simuliral pritisk tipke. |
Moja napaka pri tipkanju, pardon. Vem da napisan način nebi deloval.
Program je opravljal simulacijo pritiska ene tipke, ki ga je tuti modul zaznal, ampak to ni bila želena tipka (tipka play) ampak neka 8. ki je samo na daljincu in v fizični obliki sploh ne obstaja. Nato sem ugotovil, da se tako priključene tipke (ko so vsi pini na stanju vhoda) ne odzivajo več na pritisk. Tudi če priključiš samo eno tipko na mikrokontroler in pustiš ostale nepriključene, se pač zmešajo funkcije tipk. Ena dela, druga ne, tretja ima spet neko novo funkcijo ...
_________________ lp. |
|
Nazaj na vrh |
|
 |
herba Član


Pridružen-a: Pet 01 Avg 2008 20:05 Prispevkov: 39 Aktiv.: 0.19 Kraj: Ljubljana
|
Objavljeno: Čet Avg 16, 2012 4:27 pm Naslov sporočila: |
|
|
RGorazd je napisal/a: |
Uporabi REED.
|
Sem že razmišljal, je pa res, da je bi cena samih reed-ov presegla ceno kitajskega modula (ki mimogrede deluje odlično)
_________________ lp. |
|
Nazaj na vrh |
|
 |
Highlag Član


Pridružen-a: Pet 23 Jan 2004 20:42 Prispevkov: 4034 Aktiv.: 17.03 Kraj: Črnuče
|
Objavljeno: Čet Avg 16, 2012 5:59 pm Naslov sporočila: |
|
|
Lahko te tvoje upore preko NPN tranzistorjev vežeš na maso (C na upor, E na maso) bazo pa preko 1K uporov na izhod iz poljubnega procesorčka. 1 na izhodu iz procesorja bo upor sklenila na maso.
_________________ If at first you don't succeed, destroy all evidence that you tried. |
|
Nazaj na vrh |
|
 |
herba Član


Pridružen-a: Pet 01 Avg 2008 20:05 Prispevkov: 39 Aktiv.: 0.19 Kraj: Ljubljana
|
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 492 dni
Powered by phpBB © 2001, 2005 phpBB Group
|