|
Svet elektronike Revija za prave elektronike
|
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
marko11 Profesionalec
Pridružen/-a: Ned Jan 2004 18:00 Prispevkov: 112 Kraj: Ponikve
|
Objavljeno: Pon Jan 28, 2013 7:48 pm Naslov sporočila: Ena tipka več spremenljivk |
|
|
Hi
Sploh mi ne kapne kako začeti.
Bascom AVR, Mega8, LCD 2x16, tipkovnica.
Imel bi tri spremenljivke N1, N2, N3. Ko bi pritisnil Tipko_1 naj se na LCD Locate 1,1 izpiše "N1= " Preko tipkovnice vpišem število npr. 123. To naj bi bila spremenljivka N1.
Po vnosu spremenljivke bi zopet pritisnil Tipko_1, na LCD Locate 1,1 se izpiše "N2= " Preko tipkovnice vpišem število npr. 456. To pa bi bila spremenljivka N2.
Enako tudi za spremenljivko N3.
Lepo prosim za kakršen koli namig, nasvet.
Mogoče je kaj podobnega kje na netu, pa ne znam postaviti povpraševanja.
LP,marko |
|
Nazaj na vrh |
|
|
vilko Profesionalec
Pridružen/-a: Pon Jan 2004 11:54 Prispevkov: 807 Kraj: Ljubljana
|
Objavljeno: Tor Jan 29, 2013 8:51 pm Naslov sporočila: |
|
|
Kakšna tipkonica?
Vsaka tipka na svojem pinu, ali so tipke vezane v matriko, kjer lahko za manj pini odtipaš števila?
Lahko ti dam program, ki ima (poleg drugih stvari ) tudi branje matrične tipkovnice in spravljanje odtipkanega števila v spremenljivko. |
|
Nazaj na vrh |
|
|
marko11 Profesionalec
Pridružen/-a: Ned Jan 2004 18:00 Prispevkov: 112 Kraj: Ponikve
|
Objavljeno: Čet Jan 31, 2013 5:07 pm Naslov sporočila: |
|
|
vilko je napisal/a: | Kakšna tipkonica?
|
Tipkovnico čitam preko ADC.
Še dodatno vprašanje. LCD osvetlitev kam priklopite? kar na isto 5V napajanje kot je kontroler ali ima svoje napajanje?
Lp, _________________ Kdor visoko leta, daleč vidi. |
|
Nazaj na vrh |
|
|
vilko Profesionalec
Pridružen/-a: Pon Jan 2004 11:54 Prispevkov: 807 Kraj: Ljubljana
|
Objavljeno: Čet Jan 31, 2013 10:41 pm Naslov sporočila: |
|
|
marko11 je napisal/a: | Tipkovnico čitam preko ADC.
|
Tako še nisem čital tipkovnice z več tipkami. |
|
Nazaj na vrh |
|
|
JUG Mojster
Pridružen/-a: Čet Nov 2011 15:49 Prispevkov: 38
|
Objavljeno: Pon Feb 04, 2013 7:01 pm Naslov sporočila: |
|
|
Živjo,
Najprej potrebuješ program za AD pretvorbo enega ADC pina. Predvidevam da ADC že znaš konfigurirati. Vsaka tipka ima verjetno svoj različen napetostni nivo, tako boš bral različne napetostne nivoje kot različne tipke. ADC je verjetno 8 ali 10 bit-en. Izberi si naprimer 1 tipko 0V, drugo 1.5V, tretjo pa 3V naprimer. Vsak Do-Loop poglej potem stanje na ADC pinu in primerjaj vredosti (IF stavki), če je ADC manjši kot 50 je stisnjena tipka 0, če je ADC med 51-110 potem je stisnjena tipka 1, če je med 111 in 170 pa tipka 3. Če je nivo večji od 170 ni stisnjeno nič (pull-up upor).
In DA LCD se lahko priklopi na isto napajanje kot je mikroprocesor priklopljen (5V).
LP Jakob |
|
Nazaj na vrh |
|
|
vilko Profesionalec
Pridružen/-a: Pon Jan 2004 11:54 Prispevkov: 807 Kraj: Ljubljana
|
Objavljeno: Pon Feb 04, 2013 7:54 pm Naslov sporočila: |
|
|
Sem si mislil, da je kaj takega, a kot rečeno, tega še nisem delal in tipke berem rajši z več pini.. |
|
Nazaj na vrh |
|
|
marko11 Profesionalec
Pridružen/-a: Ned Jan 2004 18:00 Prispevkov: 112 Kraj: Ponikve
|
Objavljeno: Pon Feb 04, 2013 8:49 pm Naslov sporočila: |
|
|
JUG je napisal/a: | Živjo,
Najprej potrebuješ program za AD pretvorbo enega ADC pina. Predvidevam da ADC že znaš konfigurirati. Vsaka tipka ima verjetno svoj različen napetostni nivo, tako boš bral različne napetostne nivoje kot različne tipke. ADC je verjetno 8 ali 10 bit-en. Izberi si naprimer 1 tipko 0V, drugo 1.5V, tretjo pa 3V naprimer. Vsak Do-Loop poglej potem stanje na ADC pinu in primerjaj vredosti (IF stavki), če je ADC manjši kot 50 je stisnjena tipka 0, če je ADC med 51-110 potem je stisnjena tipka 1, če je med 111 in 170 pa tipka 3. Če je nivo večji od 170 ni stisnjeno nič (pull-up upor).
In DA LCD se lahko priklopi na isto napajanje kot je mikroprocesor priklopljen (5V).
LP Jakob |
Ja, fantje to mi je vse jasno kako sečita ADC pretvorbo, to imam rešeno in deluje OK.
Jaz sprašujem čisto nekaj drugega, prosim če še enkrat preberete prvi post.
LP, _________________ Kdor visoko leta, daleč vidi. |
|
Nazaj na vrh |
|
|
stursc Profesionalec
Pridružen/-a: Pet Feb 2005 14:50 Prispevkov: 109 Kraj: Ravne
|
Objavljeno: Pon Feb 04, 2013 9:01 pm Naslov sporočila: |
|
|
JUG je napisal/a: | Živjo,
Najprej potrebuješ program za AD pretvorbo enega ADC pina. Predvidevam da ADC že znaš konfigurirati. Vsaka tipka ima verjetno svoj različen napetostni nivo, tako boš bral različne napetostne nivoje kot različne tipke. ADC je verjetno 8 ali 10 bit-en. Izberi si naprimer 1 tipko 0V, drugo 1.5V, tretjo pa 3V naprimer. Vsak Do-Loop poglej potem stanje na ADC pinu in primerjaj vredosti (IF stavki), če je ADC manjši kot 50 je stisnjena tipka 0, če je ADC med 51-110 potem je stisnjena tipka 1, če je med 111 in 170 pa tipka 3. Če je nivo večji od 170 ni stisnjeno nič (pull-up upor).
In DA LCD se lahko priklopi na isto napajanje kot je mikroprocesor priklopljen (5V).
LP Jakob |
Nisi dobro razumel kake zahteve postavlja v prvem postu
To je možno le s števcem za N1....Nx in ukazom INPUT
If stevec=1
Gosun Input1
Input "Vpisi vrednost N1 :"
LCD " N1 ="; N1
Tako jaz razumem prvi post.
LP, stursc |
|
Nazaj na vrh |
|
|
JUG Mojster
Pridružen/-a: Čet Nov 2011 15:49 Prispevkov: 38
|
Objavljeno: Pon Feb 04, 2013 10:37 pm Naslov sporočila: |
|
|
Ok če ADC ni problem potem pa ti manjka le še par stavkov. Naredi spremenljivko "stevec" as byte. In pa šest byte spremenljivk "St1", "St2" in St3 ter "St1a", "St2a" in "St3a". "Stevec" postavi na 0
Ok skonfiguriral si adc, vsakemu ADC nivoju priredil svojo vrednost (1-9). Nato ob vsakem Do-loop pogledaš, če je tipka stisnjena. Če je, pogledaš če je vrednost "stevec"=0, če je vpišeš vrednost tipke v spremenljivko "St1" ter povečaš "stevec" za 1. Nadaljuješ z branjem ADC, ko spet dobiš neko vrednost pogledaš kje je "stevec", ok prej si ga postavil na 1 ("stevec"=1) torej boš vpisal vrednost tipke v "St2" ter povečal "stevec" za 1. Naslednja popolnoma isto, If "stevec"=2 then naslednjo vrednost vpises v spremenljivko "St3" in povečaš "stevec".
Tako sedaj si dobil na vhod 3 števila. Za vsako Do loop zanko pa spremljaš tudi vrednost "stevec". If "stevec"=3 potem:
-napišeš "St1a"="St1", "St2a"="St2a" in "St3a"="St3",
-napišeš ukaz za LCD: locate 1,1 in lcd "N1=", St1a, St2a, St3a
-"stevec" zopet postaviš na 0
Pa si končal z programom. Torej kaj si naredil. Z "stevec" si čakal dokler nisi vtipkal treh številk. Ko si natipkal vse 3 cifre si dobil vrednost "stevec=3" (saj si ob vsaki pritisnjeni tipki povečal vrednost "stevec = stevec+1"). Ker imaš stavek If stevec=3, ki ga ponoviš ob vsaki Do-loop zanki lahko za vsake tri vpisane številke postaviš 3 nove spremenljivke (St1a, St2a in St3a), ki jih spreminjaš le na vsake vpisane tri števila. Tako lahko izpisuješ te tri (St1a, St2a in St3a) spremenljivke ne glede na to kar tipkaš preko številčnice. Osveži se le takrat ko na ADC vhod ponovno vtipkaš 3 števila.
Če hočeš vpisovati še niz N2, potem le povečaj število spremenljivk od St1 do St6 in od St1a do St6a, in napišeš dva If stavka za stevec. Ko bo stevec enak 3 postaviš prve tri spremenljivke in jih izpisuješ in števec postaviš na 4. Nato gledaš naslednje spremenljivke St4 do St6. Ko bo stevec enak 7 vpises zadnje spremenljivke St4a=St4 St5a=... izpišeš locate 2,1 in lcd "N2=", St4a... in stevec postaviš na 0.
Če hočeš točno določeno kombinacijo števil (ključavnica) boš pa moral ob vsaki pritisnjeni tipki še gledati če se stisnjena številka ujema z mestom kode ki ga določa "stevec".
Nisem rojen "predavatelj", tako da upam, da sem dokaj razumljivo napisal.
LP Jakob |
|
Nazaj na vrh |
|
|
marko11 Profesionalec
Pridružen/-a: Ned Jan 2004 18:00 Prispevkov: 112 Kraj: Ponikve
|
Objavljeno: Tor Feb 05, 2013 7:19 pm Naslov sporočila: |
|
|
Hvala, bom poizkusil tole s števcem, samo da si najdem čas.
Lp, |
|
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 You cannot attach files in this forum You cannot download files in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|