www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

štetje z tipko (bascom avr)
Pojdi na stran Prejšnja  1, 2, 3  Naslednja
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Jul 23, 2008 12:10 pm    Naslov sporočila:  štetje z tipko (bascom avr) Odgovori s citatom

kako pa to uporabim? kakšna je sintaxa
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 10.33
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sre Jul 23, 2008 12:11 pm    Naslov sporočila:   Odgovori s citatom

Katera? Samo prekopiraj v Bascom-AVR in zapeči na čip pa probaj. Kateri uC pa uporabljaš?
_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Jul 23, 2008 12:17 pm    Naslov sporočila:  štetje z tipko (bascom avr) Odgovori s citatom

int0 to naj prekopiram? kam? v program? uporabljam atmega16
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 10.33
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sre Jul 23, 2008 12:21 pm    Naslov sporočila:   Odgovori s citatom

Pa pusti zaj int0. Najprej probaj mojo kodo pa povej če deluje. Prekopiraš v Bascom pa naložiš v čip. Tisto kaj sem jaz napisal je cela koda.

Tu je še enkrat, z popravkom:
Koda:

$regfile = "m16def.dat"
$crystal = 1000000

Dim A As Byte

Config PINA.0 = Input

Cls
Cursor Off
Locate 1 , 1 : Lcd "Stetje s tipko"

A = 0

Do
 If PINA.0 = 0 Then
  Waitms 20
   If PINA.0 = 0 Then
    Gosub Stetje
   End If
 End If
Loop

Stetje:
 Incr A
 Locate 2 , 5 : Lcd A
Return

End

_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 10.33
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sre Jul 23, 2008 12:23 pm    Naslov sporočila:   Odgovori s citatom

Zgornja moja koda bi morala delovat.

Pa sem se malo igral pa ti naredil spodnjo nadgradnjo. Predvidevam da imaš LCD 2*16, zato sem tudi kodo naredil tako.

To pa je nadgradnja:
Koda:

'Definiranje mikrokontrolerja:
$regfile = "m16def.dat"
$crystal = 1000000 'Interni 1MHz oscilator

'Definiranje spremenljivk:
Dim A As Byte
Dim B As Eram Byte
Dim C As Byte

'Definiranje vhoda:
Config PINA.0 = Input

'UVOD:
Cls
Cursor Off
Locate 1 , 1 : Lcd " Stetje s tipko "
Locate 2 , 1 : Lcd "  by Linel :)  "
Wait 1
Cls

'Resetiraš spremenljivke:
A = 0
C = 0

'Glavni program:
Do
 If PINA.0 = 0 Then
  Waitms 20
   If PINA.0 = 0 Then
    Gosub Stetje
   End If
 End If
Loop

'Subrutina štetje:
Stetje:
 C = B 'B iz eeproma prekopiraš v C
 Incr A 'Zvišaš A za 1
 Incr C 'Zvišaš C za 1
  Locate 1 , 1 : Lcd "Skupaj: " : Lcd C
  Locate 2 , 1 : Lcd "Zdaj: " : Lcd A
 B = C
Return

End


Naloži kodo, pa nekajkrat pritisni na tipko. Obe spremenljivki se morata zviševat za 1 istočasno. Potem čip izključi, mu odvemi napetost. Potem ga spet ponovno prižgi. Zdaj more biti 0, Skupaj pa bi moralo ohraniti vrednost od prej.

_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.


Nazadnje urejal/a program_er Sre Jul 23, 2008 12:27 pm; skupaj popravljeno 1 krat
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
tiger
Član
Član



Pridružen-a: Čet 05 Feb 2004 0:22
Prispevkov: 1161
Aktiv.: 4.90

PrispevekObjavljeno: Sre Jul 23, 2008 12:26 pm    Naslov sporočila:   Odgovori s citatom

Hi

V FastAvrju zgleda takole

Interrupt Int0(), Save 2
Incr A
End Interrupt

Tipko pa moraš priklopit na pin D2 če uporabiš INT0 oziroma na D3 če uporabiš INT1.

LP
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Jul 23, 2008 12:36 pm    Naslov sporočila:  štetje z tipko (bascom avr) Odgovori s citatom

deluje, vendar sem moral dat namestu 0 tukaj 1, ko je bilo 0 so številke letele ko hudič same od sebe, ko je pa 1 pa ob pritisku na tipko. tnx ti

If PINA.0 = 1 Then
Waitms 20
If PINA.0 = 0 Then
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 10.33
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sre Jul 23, 2008 12:41 pm    Naslov sporočila:   Odgovori s citatom

No, lepo, če ti deluje. Kaj pa druga koda, oziroma "nadgradnja"?
_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Jul 23, 2008 12:52 pm    Naslov sporočila:  štetje z tipko (bascom avr) Odgovori s citatom

ta zadnji program ne deluje. na lcd-ju kjer bi se morala prikazati številka se ne prikaže nič.

pri tistem programu zgoraj pa številke samo letijo.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
jjakob
Član
Član



Pridružen-a: Pet 19 Nov 2004 14:12
Prispevkov: 1348
Aktiv.: 5.69

PrispevekObjavljeno: Sre Jul 23, 2008 12:53 pm    Naslov sporočila:   Odgovori s citatom

Ti imaš tipko vezano z pina na Vcc? Shocked
Tipke se vedno vežejo na maso, z pullup uporom. Ti so večinoma že vgrajeni v mikrokontroler, ter jih lahko vključiš ali izključiš programsko. Se mi pa zdi čudno, da imaš v Do ... Loop zanki Sub ... ponavadi se da Sub zunaj glavne programske zanke.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Jul 23, 2008 1:08 pm    Naslov sporočila:  štetje z tipko (bascom avr) Odgovori s citatom

pri "nadgradnji" številke letijo same od sebe brez da bi kaj pritiskal.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 10.33
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sre Jul 23, 2008 1:15 pm    Naslov sporočila:  Re: štetje z tipko (bascom avr) Odgovori s citatom

linel je napisal/a:
pri "nadgradnji" številke letijo same od sebe brez da bi kaj pritiskal.


Pozabil si dati tam namesto 0 na 1, tak ko pri prejšnji kodi...

_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Jul 23, 2008 1:26 pm    Naslov sporočila:  štetje z tipko (bascom avr) Odgovori s citatom

zdaj pa dela:)
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
linel
Član
Član



Pridružen-a: Čet 06 Mar 2008 21:14
Prispevkov: 178
Aktiv.: 0.85
Kraj: prekmurje

PrispevekObjavljeno: Sre Jul 23, 2008 2:49 pm    Naslov sporočila:  štetje z tipko (bascom avr) Odgovori s citatom

spet jaz:)

nekja sprobavam pa hočem da tisti prejšnji program ki šteje z tipko, bi rad naredil tako da bi z drugo tipko odšteval. pa sem malo prebekslal tisti prejšnji program pa nedela. ziher ni neke velke napake, samo nevem zakaj noče delat.

to je pa program :

Dim A As Byte

Config Pina.0 = Input
Config Pina.1 = Input
Cls
Cursor Off
Locate 1 , 1 : Lcd "Stetje s tipko"

A = 0

Do
If Pina.0 = 1 Then
Waitms 20
If Pina.0 = 0 Then
Gosub Stetje
If Pina.1 = 1 Then
Waitms 20
If Pina.0 = 1 Then
Gosub Stetje1
End If
End If
End If
End If
Loop

Stetje:
Incr A
Locate 2 , 5 : Lcd A
Return


Stetje1:
Decr A
Locate 2 , 5 : Lcd A
Return
End
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
program_er
Član
Član



Pridružen-a: Sob 08 Mar 2008 13:47
Prispevkov: 2173
Aktiv.: 10.33
Kraj: Maribor (Pohorje)

PrispevekObjavljeno: Sre Jul 23, 2008 2:57 pm    Naslov sporočila:   Odgovori s citatom

Pri If stavkih si malo zakompliciral...

Mogoče bo to delovalo:
Koda:

$regfile = "m16def.dat"
$crystal = 1000000

Dim A As Byte

Config Pina.0 = Input
Config Pina.1 = Input

Cls
Cursor Off
Locate 1 , 1 : Lcd " Stetje s tipko "

A = 0

Do
 Porta.0 = 1
 Porta.1 = 1

  If Pina.0 = 0 Then
   Waitms 20
     If Pina.0 = 0 Then
      Gosub Stetje
     End If
  End If

  If Pina.1 = 0 Then
   Waitms 20
    If Pina.0 = 0 Then
     Gosub Odstetje
    End If
  End If
 
Loop

Stetje:
Incr A
Locate 2 , 5 : Lcd A
Return


Odstetje:
Decr A
Locate 2 , 5 : Lcd A
Return
End


Ne smeš vseh If stavkov stlačit v enega!

_________________
Upanje ni del naše projektne strategije.
Member of Trisat - 1. Slovenian satellite running new fault tolerant aerospace processor.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo MSN Messenger - naslov
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran Prejšnja  1, 2, 3  Naslednja
Stran 2 od 3

 
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
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