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 
Sponsored by SiOL

programator

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Linux, unix razprave
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
sirjost
Član
Član



Pridružen-a: Sob 20 Feb 2016 16:30
Prispevkov: 95
Aktiv.: 2.17
Kraj: pescenk bliz Cerknce

PrispevekObjavljeno: Čet Apr 27, 2017 9:05 pm    Naslov sporočila:  programator Odgovori s citatom

Pozdravljeni.
V šoli programiramo z programatorjem v programu LDmicro.
Za nalaganje programov pa uporabljamo program
MikroC Pro for PIC.

Dobili smo vajo.
Ko potenciometer zavrtimo, da preide preko 900 bitov, začne ledica utripati. Ob pritisku na eno tipko ledica neha utripati.

Ali je mogoče kdo že kaj od tega delal, če mi lahko svetuje.

V programu sem že napisal, da ko preseže 900 bitov, ledica sveti vendar pa ne vem kako naj zdraven vrinem še, da bo ledica utripala.

_________________
lp jerc
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
int47
Član
Član



Pridružen-a: Pon 15 Dec 2003 0:10
Prispevkov: 1943
Aktiv.: 11.63
Kraj: Ljubljana

PrispevekObjavljeno: Pet Apr 28, 2017 7:55 am    Naslov sporočila:   Odgovori s citatom

OK. LED znaš prižgat. Verjetno jo znaš tudi ugasnit.

LED bo utripala, če je nekaj časa prižganma in nato nekaj časa ugasnjena.

v zanki utripanje LED:

pogoj za izhod iz zanke = 0;
zanka:
prižgeš LED.
malo_počakaš();
ugasneš LED.
malo_počakaš();
preveriš pogoj za izhod iz zanke.
povratek na zanka

zanka obesi_se:
povratek na zanka obesi se


Na ta način bo pri počasnejšem utripanju tipka precej neodzivna.
To lahko rešiš tako, da v podprogramu malo_počakaš() preverjaš pogoj za izhod iz zanke in ga v primeru izpolnjenega pogoja zaključiš predčasno.

malo_počakaš:
cakaj=10;
zanka:
res malo pocakaj (cca malo pocakaj/10)
če je pritisnjena tipka, postavi po pogoj za izhod iz zanke in zakljuci podprogram
cakaj--
če je cakaj == 0 izhod iz zanke (podprograma)
povratek na zanka


To ni edina možna rešitev.
Če naj uC razen utripanja LED počne še kaj drugega bi bilo bolje uporabiti prekinitve za utripanje LED in preverjanje tipke.

_________________
Ko bom velik trol, bom moderator.
Kdor ni skregan, ni Slovenc !
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 -> Linux, unix razprave Časovni pas GMT + 2 uri, srednjeevropski - poletni č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
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 146 dni


Powered by phpBB © 2001, 2005 phpBB Group