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 

branje vhoda in postavitev izhodov v bascomu

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


Pridružen/-a: Pon Jan 2004 9:40
Prispevkov: 187
Kraj: Bled

PrispevekObjavljeno: Sob Mar 05, 2005 2:58 pm    Naslov sporočila: branje vhoda in postavitev izhodov v bascomu Odgovori s citatom

V bascomu sem začel pisati en preprost programček, služil pa mi bo za polnjenje in ciklanje baterij

Naletel pa sem na en problemček. Če za branje vhodov napišem:

Citiram:
Do

Bat = P3.6
Cikel = Not P3.7


stanje vhodov berem takoj na začetku do / loop zanke, tako da vpišem spremenljivko. Prva spremenljivka je P3.6 ki je pri 89C2051 izhod analognega komparatorja in jo normalno bere in vpiše, druga spremenljivka pa se noče vpisati če je uporabljena negacija not, brez negacijo not pa vhod normalno prebere in vpiše spremenljivko. Če je uporabljen not potem mi spremenljivko vpiše vedno 0 (vsaj kaže tako ko program teče) ne glede na stanje vhoda. Brez not deluje normalno, le v programu kjer berem spremenljivko, uporabim kontra stanje.

Ali je tako branje vhodov in vpis spremenljivke z uporabo not sploh pravilna???

vpis izhodov na ta način deluje normalno z not ali brez not, kar pač rabim.

PS: sem popoln začetnik, ki zna nekako uporabljati if stavke in te preproste zadeve in uspelo mi je celo skonfigurirati timer da imam generiran 1 sekundni takt da bom lahko meril čas polnjenja baterije za konkretno aplikacijo
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Vlado
Profesionalec


Pridružen/-a: Ned Jan 2004 16:11
Prispevkov: 556
Kraj: Ljubljana

PrispevekObjavljeno: Sob Mar 05, 2005 4:01 pm    Naslov sporočila: branje vhodov Odgovori s citatom

Tole pa ne bo prav:
Bat = P3.6
Cikel = Not P3.7
V help-u poglej ukaz "ALIAS" in bos resil problem.
Vlado
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo
reber
Profesionalec


Pridružen/-a: Pon Jan 2004 9:40
Prispevkov: 187
Kraj: Bled

PrispevekObjavljeno: Sob Mar 05, 2005 8:26 pm    Naslov sporočila: Odgovori s citatom

Tisto v helpu mi bolj malo pomaga.
Če zamenjam enačaj z besedo alias, mi pri kompajlanju vrže dva errorja ven, pri syntax check pa nič errorjev.
ko pa sem brisal vrstico Dim Cikel As Bit pa je bilo v redu. Torej pri alias ne rabim vpisovat dim as bit , ali kaj? ali to pomeni da je že samoumevno pri alias da je spremenljivka bit in to ni potrebno posebej povedati programu?

Sem poskusil namesto enačaja z alias in deluje, seveda pa sem moral pobrisati še zgoraj omenjeno vrstico dim cikel as bit

Ko pa sem poskusil cikel alias not p3.7 pa je isto kot z enačajem. Enostavno ne deluje.
Zakaj pa bi rad negiral, pa je zato, ker se pač porti ponavadi vežejo na 0 in to pomeni logično nič in je ravno obratno, zato malo čudno zgleda v programu, sploh če sem navajen pozitivne logike in ne negativne kot je tole tukaj.

Pri izhodih delam ravno tako, npr za prižiganje ledice postavljam izhod npr P1.5 = not ledpoln ker v programu pišem tako, da je 1 prižgana ledica, izhod pa v bistvu mora dati 0 za prižgano ledico iz vsem znanega vzroka, ker se ledice priključijo med +5v in izhod.
Ravno tako bi rad naredil pri branju vhodov da bi zadevo negiral. Saj vem, lahko negiram tako, da dodam še eno spremenljivko in to negiram, vhod pa berem brez negiranja, ampak v tem primeru imam eno spremenljivko več samo zato. In če se ne da drugače, bom dodal spremenljivko samo zaradi tega.
Ali obstaja enostaven način negiranja pri branju vhodov?
Pri postavljanju izhodov negiranje ne predstavlja nobene ovire.

Če napišem takole
Citiram:

...

Do

Bat = P3.6
Cikel1 = P3.7
Cikel = Not Cikel1

...

potem deluje tako kot želim. Zato pa sem moral uporabiti dodatno spremenljivko.

V programu imam samo dva vhoda, en je izhod komparatorja ki mi pove če je baterija izpraznjena, z drugim pa povem programu ali naj po končanem polnjenju spet prazni baterijo in jo potem spet polni, torej cikla, če pa cikel ni vklopljen pa baterijo samo izprazni in jo napolni, potem se ustavi.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
strobos
Mojster


Pridružen/-a: Tor Jan 2004 17:26
Prispevkov: 32
Kraj: LJ

PrispevekObjavljeno: Sob Mar 05, 2005 10:26 pm    Naslov sporočila: Odgovori s citatom

Pozdrav,

tam ne rabiš nove spremenljivke Cikel, lahko kar napišeš:
Cikel1=Not Cikel1

Lp
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
reber
Profesionalec


Pridružen/-a: Pon Jan 2004 9:40
Prispevkov: 187
Kraj: Bled

PrispevekObjavljeno: Sob Mar 05, 2005 10:31 pm    Naslov sporočila: Odgovori s citatom

Shocked Uh, pa res, tako preprosto, pa mi ni prišlo na misel, čeprav točno to finto uporabljam v tem programu za utripanje led diode Embarassed

No, polnilec že deluje, program sem preveril tako, da sem mu spremenil nekaj števil ki so v števcih za deljenje, da je čas hitro minil.
Imam pa za ciklat cel kup baterij od mobitelov ericsson ga 628 to so baterije AAA 650mAh ki so v glavnem še dobre, le malce zaspane, pa so telefoni slabo delovali. Polnim jih s cca 105mA 7ur, pustil pa bom nekaj dni da se cikla, potem zamenjam baterije.

Da se vrnemo k temi, no, zvedel sem točno to kar sem želel, le ena zadeva je, če bo nekdo potrdil, da tista moja teorija o branju vhoda in negiranju z not ni pravilna v nobenem primeru.
No, negirati jo je preprosto s še eno vrstico brez nove spremenljivke.
Nazaj na vrh
Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
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