Kazalo po Svet elektronike forumu Svet elektronike
Revija za prave elektronike
 
AlbumAlbum   Pomoč pogostih vprašanjPomoč pogostih vprašanj   IščiIšči   Seznam članovSeznam članov   Skupine uporabnikovSkupine uporabnikov   Registriraj seRegistriraj se 
 Tvoj profilTvoj profil   Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil   PrijavaPrijava 

Ena tipka več spremenljivk

 
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
marko11
Profesionalec


Pridružen/-a: Ned Jan 2004 18:00
Prispevkov: 112
Kraj: Ponikve

PrispevekObjavljeno: Pon Jan 28, 2013 7:48 pm    Naslov sporočila: Ena tipka več spremenljivk Odgovori s citatom

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
Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
vilko
Profesionalec


Pridružen/-a: Pon Jan 2004 11:54
Prispevkov: 805
Kraj: Ljubljana

PrispevekObjavljeno: Tor Jan 29, 2013 8:51 pm    Naslov sporočila: Odgovori s citatom

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
Poglej uporabnikov profil Pošlji zasebno sporočilo
marko11
Profesionalec


Pridružen/-a: Ned Jan 2004 18:00
Prispevkov: 112
Kraj: Ponikve

PrispevekObjavljeno: Čet Jan 31, 2013 5:07 pm    Naslov sporočila: Odgovori s citatom

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
Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
vilko
Profesionalec


Pridružen/-a: Pon Jan 2004 11:54
Prispevkov: 805
Kraj: Ljubljana

PrispevekObjavljeno: Čet Jan 31, 2013 10:41 pm    Naslov sporočila: Odgovori s citatom

marko11 je napisal/a:
Tipkovnico čitam preko ADC.


Tako še nisem čital tipkovnice z več tipkami.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
JUG
Mojster


Pridružen/-a: Čet Nov 2011 15:49
Prispevkov: 38

PrispevekObjavljeno: Pon Feb 04, 2013 7:01 pm    Naslov sporočila: Odgovori s citatom

Ž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
Poglej uporabnikov profil Pošlji zasebno sporočilo
vilko
Profesionalec


Pridružen/-a: Pon Jan 2004 11:54
Prispevkov: 805
Kraj: Ljubljana

PrispevekObjavljeno: Pon Feb 04, 2013 7:54 pm    Naslov sporočila: Odgovori s citatom

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
Poglej uporabnikov profil Pošlji zasebno sporočilo
marko11
Profesionalec


Pridružen/-a: Ned Jan 2004 18:00
Prispevkov: 112
Kraj: Ponikve

PrispevekObjavljeno: Pon Feb 04, 2013 8:49 pm    Naslov sporočila: Odgovori s citatom

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
Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
stursc
Profesionalec


Pridružen/-a: Pet Feb 2005 14:50
Prispevkov: 109
Kraj: Ravne

PrispevekObjavljeno: Pon Feb 04, 2013 9:01 pm    Naslov sporočila: Odgovori s citatom

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
Poglej uporabnikov profil Pošlji zasebno sporočilo
JUG
Mojster


Pridružen/-a: Čet Nov 2011 15:49
Prispevkov: 38

PrispevekObjavljeno: Pon Feb 04, 2013 10:37 pm    Naslov sporočila: Odgovori s citatom

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
Poglej uporabnikov profil Pošlji zasebno sporočilo
marko11
Profesionalec


Pridružen/-a: Ned Jan 2004 18:00
Prispevkov: 112
Kraj: Ponikve

PrispevekObjavljeno: Tor Feb 05, 2013 7:19 pm    Naslov sporočila: Odgovori s citatom

Hvala, bom poizkusil tole s števcem, samo da si najdem čas.

Lp,
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo    Kazalo po Svet elektronike forumu -> Digitalna elektronika Časovni pas GMT + 1 ura, srednjeevropski - zimski čas
Stran 1 od 1

 
Pojdi na:  
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