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



Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3362 Aktiv.: 14.19 Kraj: Dragomer
|
Objavljeno: Ned Apr 08, 2012 8:07 pm Naslov sporočila: |
|
|
Pobesneli je napisal/a: |
Tudi jaz neki ustvarjam z bascom danes, muči me pa timer. [slovenščina je zame španska vas] z senzorjem merim temperaturo, program pa se mi osvežuje prehitro. Želel bi da se mi zadeva osvežuje na par sekund. Po branju literature naj bi mi s tem pomagal Timer, vendar ga ne morem razumeti. a mi lahko kdo pomaga?
A mi timer pomagal tudi pri utripanju besedila na grafičnem lcdju?
Drugi problem z utripanjem besedila mi ni sedaj pomembem, rad bi razumel timer |
Če te prav razumem, bereš in prikazuješ temperaturo na LCD-u v zanki, ki se ti prehitro vrti. Vrtenje v zanki lahko najenostavneje, (ne pa tudi najbolj elegantno) zavreš tako, da daš v zanko ukaz wait
če daš recimo wait 5
potem bo program stal na tem mestu 5 sekund
Za razlago timerja, tako razlago, po kateri bi lahko timer tudi sprogramiral, bi potreboval več besed. _________________ Nihče ni za vojno in vsi so za mir,
vsi so za bratstvo, nihče za prepir.
Od same ljubezni vsak čas na granatah
bo vtisnjeno geslo: "Darilo za brata"
Janez Menart |
|
Nazaj na vrh |
|
 |
Pobesneli Član

Pridružen-a: Sre 02 Jan 2008 1:24 Prispevkov: 1070 Aktiv.: 5.03 Kraj: Ajdovščina
|
Objavljeno: Ned Apr 08, 2012 8:35 pm Naslov sporočila: |
|
|
Ker mi program nadzoruje tudi touchscreen, ne bi rad uporabljal wait, ker potem ne morem nič klikat po njemu.
Verjetno sem si tudi kaj narobe predstavljal oziroma razlagal iz bascom publikacije.
Osnovna ideja je narediti termometer, ki bi preveril temperaturo vsakih 5 sekund, vmes pa bi delovale rutine za touchscreen.
Moram povedati da se na primerih učim, torej širim svoje znanje od prižiganja ledic naprej.... |
|
Nazaj na vrh |
|
 |
mucek Član


 
Pridružen-a: Tor 01 Avg 2006 10:47 Prispevkov: 5530 Aktiv.: 24.05 Kraj: Domzale
|
Objavljeno: Ned Apr 08, 2012 8:43 pm Naslov sporočila: |
|
|
Če imaš timerje še neuporabljene (očitno ja ), potem je zadeva v osnovi preprosta. Timer interrupt pomeni, da ti v ozadju teče neka ura in vsakič, ko števec preseže neko vrednost, program skoči v preddefiniran podprogram.
V tvojem primeru bi moral narediti naslednje:
- Zdefiniraš timer, npr. na 1 s
- V podprogram, ki se bo nato izvedel vsako sekundo daš izpisovanje na LCD (in tega umakneš iz glavnega programa).
Tako bo, ne glede na izvajanje glavnega programa, vsako sekundo procesor skočil v podprogram in osvežil izpis na LCDju.
PAZI: to se ti lahko zgodi npr. tudi medtem, ko se ti računa temperatura in boš dobil lahko neko čudno vrednost (če računaš samo z eno spremenljivko).
Lp, g _________________ ...lahko pa se tudi motim ... |
|
Nazaj na vrh |
|
 |
protoncek Član

Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 42.77 Kraj: Mengeš
|
Objavljeno: Ned Apr 08, 2012 8:46 pm Naslov sporočila: |
|
|
glede utripanja besedila -ali pred vsakim novim pisanjem uporabljaš ukaz CLS? Če ja je to vzrok... |
|
Nazaj na vrh |
|
 |
tiger Član

Pridružen-a: Čet 05 Feb 2004 0:22 Prispevkov: 1161 Aktiv.: 4.90
|
Objavljeno: Ned Apr 08, 2012 8:51 pm Naslov sporočila: |
|
|
Pozdravljen
Napisal sem en program, ki vsako sekundo prišteje stevec za 1, vpiše vrednost na LCD in prižiga in ugaša LEDico.
Upam, da boš razumel program, če ne, vprašaj.
LP
$regfile = "m162def.dat" ' specify the used micro
$crystal = 7372800 ' oscilator in Hz
'$crystal = 8000000
$hwstack = 42 ' default use 42 for the hardware stack
$swstack = 40 ' default use 40 for the SW stack
$framesize = 40 ' default use 40 for the frame space
Config Lcdpin = Pin , Db4 = Porta.0 , Db5 = Porta.1 , Db6 = Porta.2 , Db7 = Porta.3 , E = Porta.4 , Rs = Porta.5
Config Lcd = 20 * 4 '20 x 4 LCD display
Config Timer1 = Timer , Prescale = 1024
Led Alias Portc.0 'Led
Config Pinc.0 = Output
Cls
Lcd "Timer 1"
Dim Stevec As Byte
Dim Prehod As Bit
'/////////////////////////////////////////////////////////////////////
On Ovf1 Prek1
Enable Ovf1
Enable Interrupts
Timer1 = &HE3E0
Stevec = 0
'///////////////////////////////////////////////////////////////////////
Do
If Prehod = 1 Then 'če je prehod setiran vpiši vrednost spremenljivke stevec na LCD
Locate 2 , 1
Lcd "stevec=" ; Stevec ; " "
Reset Prehod
End If
Loop
'///////////////////////////////////////////////////////////////////////////
Prek1:
Timer1 = &HE3E0 'reload timer1
Incr Stevec
Toggle Led 'prižigaj in ugašaj LED
Set Prehod 'setiraj prehod
Return |
|
Nazaj na vrh |
|
 |
zmazek Neznanec

Pridružen-a: Tor 17 Apr 2012 20:28 Prispevkov: 6 Aktiv.: 0.04 Kraj: Novo mesto
|
Objavljeno: Tor Apr 17, 2012 9:55 pm Naslov sporočila: |
|
|
Zdravo
Tudi jaz sem se odločil, da bi začel malo programirati avr- je. Imam atmega16 ter programatorsko ploščo na kateri je displej in pa matrična tipkovnica 3*3. Naredil bi rad elektronsko ključavnico. Ampak ustavilo se mi je skoraj pri začetku. Za tipke sem se naučil kako naredit, da jih pravilno prebere.
Za začetek bi vas prosil če mi lahko kdo pove kako se naredi, da ti program shrani nekam številke, ki si jih prej s tipkami vtipkal, ko pa pritisneš drugo tipko se ti to zaporedje, ki si ga ti vpisal izpiše. |
|
Nazaj na vrh |
|
 |
vilko Član



Pridružen-a: Pet 13 Feb 2004 10:26 Prispevkov: 3362 Aktiv.: 14.19 Kraj: Dragomer
|
Objavljeno: Tor Apr 17, 2012 11:06 pm Naslov sporočila: |
|
|
zmazek je napisal/a: |
Tudi jaz sem se odločil, da bi začel malo programirati avr- je. Imam atmega16 ter programatorsko ploščo na kateri je displej in pa matrična tipkovnica 3*3. Naredil bi rad elektronsko ključavnico. Ampak ustavilo se mi je skoraj pri začetku. Za tipke sem se naučil kako naredit, da jih pravilno prebere.
Za začetek bi vas prosil če mi lahko kdo pove kako se naredi, da ti program shrani nekam številke, ki si jih prej s tipkami vtipkal, ko pa pritisneš drugo tipko se ti to zaporedje, ki si ga ti vpisal izpiše. |
Za začetnike v Bascomu je v paketu biblioteka vzorčnih programov, ki so kot nalašč za učenje. Tudi vzorec programa za branje matrične tipkovnice je tam.
Glej C:\Program Files\MCS Electronics\BASCOM-AVR9.8\SAMPLES
Nadaljno pomoč si oglej v Help-u, kjer so posamezni ukazi razloženi tudi s primeri.
Cel niz zanimivih projektov pa je na uradni MCS-ovi strani
http://www.mcselec.com/index.php?option=com_content&task=category§ionid=7&id=79&Itemid=57 _________________ Nihče ni za vojno in vsi so za mir,
vsi so za bratstvo, nihče za prepir.
Od same ljubezni vsak čas na granatah
bo vtisnjeno geslo: "Darilo za brata"
Janez Menart |
|
Nazaj na vrh |
|
 |
zmazek Neznanec

Pridružen-a: Tor 17 Apr 2012 20:28 Prispevkov: 6 Aktiv.: 0.04 Kraj: Novo mesto
|
Objavljeno: Sre Apr 18, 2012 9:55 pm Naslov sporočila: |
|
|
Zdravo
Hvala vinko za nasvet in pa za spletno stran, ki je zelo zanimiva. Če pa še vedno ne bom razumel ali pa bom imel še kakšno vprašanje se bom pa spet oglasil.
Lep pozdrav |
|
Nazaj na vrh |
|
 |
zmazek Neznanec

Pridružen-a: Tor 17 Apr 2012 20:28 Prispevkov: 6 Aktiv.: 0.04 Kraj: Novo mesto
|
Objavljeno: Pet Apr 20, 2012 7:42 pm Naslov sporočila: |
|
|
zdravo
Vinko jaz sem tisto, kar si dal gledal samo mi ni še čisto jasno. Bi se ti dalo napisati program. Imel bi tri tipke prva tipka bi bila 1 druga 2 tretja pa izpis tipke. Ko bi pritisnil ketero koli tipko se pravi 1 ali 2 bi se to nekam shranilo in ko bi pritisnil tretjo tipko bi ti izpisalo na zadnje pritinjeno tipko.
Lep pozdrav |
|
Nazaj na vrh |
|
 |
rudiP Član

Pridružen-a: Tor 07 Avg 2007 15:30 Prispevkov: 1234 Aktiv.: 5.67 Kraj: KOPER
|
Objavljeno: Pet Apr 20, 2012 7:48 pm Naslov sporočila: |
|
|
zmazek !
Član foruma kateri ti je odgovoril je VILKO in ne vinko. Če ima rad vino pa ne vem.
Lahko bi si popravil kraj ! _________________ Lep pozdrav iz Kopra Rudi |
|
Nazaj na vrh |
|
 |
protoncek Član

Pridružen-a: Sre 31 Jan 2007 9:41 Prispevkov: 9573 Aktiv.: 42.77 Kraj: Mengeš
|
Objavljeno: Pet Apr 20, 2012 8:32 pm Naslov sporočila: |
|
|
Če ti bo nekdo drug napisal program se ne boš nikoli naučil. V Bascomu je za vsak ukaz v HELP meniju natančna razlaga, na netu je tudi dovolj razlag, tako da malce pobrskaj in bo. Le če boš razumel, bo to nekaj vredno in trajno. |
|
Nazaj na vrh |
|
 |
zmazek Neznanec

Pridružen-a: Tor 17 Apr 2012 20:28 Prispevkov: 6 Aktiv.: 0.04 Kraj: Novo mesto
|
Objavljeno: Sob Apr 21, 2012 2:31 pm Naslov sporočila: |
|
|
zdravo
Se opravičujem, ker sem se za tipkal.
lep dan še naprej. |
|
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: 496 dni
Powered by phpBB © 2001, 2005 phpBB Group
|