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 

UZ senzorji - zbiram mnenja iz izkušenj
Pojdi na stran Prejšnja  1, 2
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Merilna tehnika in senzorji
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Minimal
Član
Član



Pridružen-a: Pet 31 Avg 2012 10:03
Prispevkov: 66
Aktiv.: 0.42
Kraj: Obala

PrispevekObjavljeno: Tor Okt 09, 2012 3:22 pm    Naslov sporočila:   Odgovori s citatom

Branez: kako pošljem text programa tako kot si ga ti dodal gor? Jaz sem namreč nameraval poslati sliko =P

ssdzkrez: Res najlepša hvala! Moj testni program je dolg komaj 20 vrstic in bi res ogromno časa porabil pri pisanju ter iskanju napak. Ob priliki pošljem svoj izdelek!

_________________
Vsak začetek najde svojo pot
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
MadMax
Član
Član



Pridružen-a: Pet 09 Sep 2005 22:16
Prispevkov: 4743
Aktiv.: 19.97

PrispevekObjavljeno: Tor Okt 09, 2012 3:26 pm    Naslov sporočila:   Odgovori s citatom

Uporabi forumsko funkcijo "Code". Na voljo imaš pa seveda tudi "Predogled", da vidiš kaj nameravaš poslati v javnost.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
Minimal
Član
Član



Pridružen-a: Pet 31 Avg 2012 10:03
Prispevkov: 66
Aktiv.: 0.42
Kraj: Obala

PrispevekObjavljeno: Tor Okt 09, 2012 5:16 pm    Naslov sporočila:   Odgovori s citatom

Tako, uspelo mi je dokončati osnutek programa po ogledu Vilkovega programa in najti funkcijo na forumu code :D
Če vas bilokaj zanima lahko razlozim kaj zakaj in kako.


Koda:
$regfile "m8def.dat"
$crystal = 4000000                                          'v članku svet elektronike sem zaseldil
                                                             'da ta senzornajbolje deluje (najlažnje izračunamo razdaljo)

Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.7 , Db7 = Portb.6 , E = Portb.3 , Rs = Portb.2
Config Lcd = 16 * 2
Cursor Off Noblink
Enable Interrupts

Config Portb.3 = Output
Config Portb.4 = Input

Declare Sub 5m+

Dim A As Integer

   Cls
   Locate 1 , 1 : Lcd "Merjenje" ;
   Locate 2 , 1 : Lcd "razdalje." ;
   Wait 5
   Cls

Do

   Pulseout Portb , 3 , 38                                  'lahko razložim zakaj 38
   Disable Interrupts
   Pulsein A , Pinb , 4 , 1
   Enable Interrupts

   If Err = 0 Then
         A = A * 10
         A = A / 58

         Locate 1 , 1 : Lcd "Razdalja:"
         Locate 2 , 1 : Lcd A ; "__cm___" ;

      Else

        Gosub 5m+

   End If


Loop
End


 Sub 5m+
   Cls
   Locate 1 , 1 : Lcd "Prevelika"
   Locate 2 , 1 : Lcd "razdalja!"
   Waitms 500
   Locate 1 , 1 : Lcd "_________"
   Locate 2 , 1 : Lcd "_________"
   Waitms 500
 End Sub 5m+

_________________
Vsak začetek najde svojo pot
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Minimal
Član
Član



Pridružen-a: Pet 31 Avg 2012 10:03
Prispevkov: 66
Aktiv.: 0.42
Kraj: Obala

PrispevekObjavljeno: Čet Okt 11, 2012 11:44 pm    Naslov sporočila:  Popravek =P Odgovori s citatom

Popravek: V podprogramu sem dodal pred prvo vrstico podprograma Disable interrupts, pred koncem pa enable, saj se bo brez tega na vsake 38mikrosekund ponovno err postavil na 1 in znova zagnal podprogram, čeprav se ta še zdaleč nebo končal.
Koda:
Sub 5m+
   Cls
   Disable Interrupts
   Locate 1 , 1 : Lcd "Prevelika"
   Locate 2 , 1 : Lcd "razdalja!"
   Waitms 500
   Locate 1 , 1 : Lcd "_________"
   Locate 2 , 1 : Lcd "_________"
   Waitms 400
   Enable Interrupts
 End Sub 5m+

_________________
Vsak začetek najde svojo pot
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
rudiP
Član
Član



Pridružen-a: Tor 07 Avg 2007 15:30
Prispevkov: 1235
Aktiv.: 5.66
Kraj: KOPER

PrispevekObjavljeno: Pet Okt 12, 2012 7:05 am    Naslov sporočila:   Odgovori s citatom

ZA začetek daj ti vse skupaj v do loop zanko. Tako ti bo merilo vsako sekundo ne pa non stop kot imaš v tvojem primeru. Interval lahko zmanjšaš. V danem primeru ne rabiš Interruptov.


Koda:

Do
  Wait 1
   Pulseout Portb , 3 , 38                                  'lahko razložim zakaj 38
 '  Disable Interrupts
   Pulsein A , Pinb , 4 , 1
  ' Enable Interrupts

   If Err = 0 Then
         A = A * 10
         A = A / 58
         Locate 1 , 1 : Lcd "Razdalja:"
         Locate 2 , 1 : Lcd A ; "__cm___" ;
      Else
         Locate 1 , 1 : Lcd "Prevelika"
         Locate 2 , 1 : Lcd "razdalja!"
   End If
Loop


_________________
Lep pozdrav iz Kopra Rudi
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Minimal
Član
Član



Pridružen-a: Pet 31 Avg 2012 10:03
Prispevkov: 66
Aktiv.: 0.42
Kraj: Obala

PrispevekObjavljeno: Pet Okt 12, 2012 10:57 am    Naslov sporočila:   Odgovori s citatom

Rudi: Imaš prav, vendar sem hotel uporabit podprogram, saj je to naloga za maturo in sem jo hotel malo zakomplicirat, da bi dobil več točk =P
Ko sestavim vezje do konca bom program priredil za 2 senzorja in poslal novo verzijo. See you until then!

_________________
Vsak začetek najde svojo pot
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Merilna tehnika in senzorji Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran Prejšnja  1, 2
Stran 2 od 2

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


Powered by phpBB © 2001, 2005 phpBB Group