Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
JuRiii Član
Pridružen-a: Sob 06 Mar 2010 18:29 Prispevkov: 117 Aktiv.: 0.68 Kraj: Leskovec-Slov. Bistrica
|
Objavljeno: Sre Dec 07, 2011 10:10 pm Naslov sporočila: Spreminjanje pavze z potenciometrom |
|
|
Uporabljam PIC 16F648A in me zanima kako bi preko analognega vhoda kjer bi bil priključen pot. spreminjal vrednost pavze?? Začetek bi bil tam okoli 2 sec pa do nekje 10sec. Uporablejn je pa 4MHz notranji oscilator.
|
|
Nazaj na vrh |
|
|
LinuxFuter Član
Pridružen-a: Pon 18 Jun 2007 14:40 Prispevkov: 386 Aktiv.: 1.89 Kraj: Novo mesto
|
Objavljeno: Sre Dec 07, 2011 10:14 pm Naslov sporočila: |
|
|
Prvo bi moral prebrat vrednost na analognem vhodu, ter to z neko matematično funkcijo preslikat v dolžino pavze ki jo ti hočeš.
Pavzo bi pa lahko generiral z enim izmed vgrajenih časovnikov, najbolje z kakim 16 bitinim, seveda bi moral iti čez pavzo parkrat, odvisno od tega kake korake hočeš med nastavitvami (0.1 sekunde, 0.5 sekunde, itd.. )
Nazadnje urejal/a LinuxFuter Sre Dec 07, 2011 10:27 pm; skupaj popravljeno 1 krat |
|
Nazaj na vrh |
|
|
Silvo Moderator
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14551 Aktiv.: 65.53 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Sre Dec 07, 2011 10:18 pm Naslov sporočila: |
|
|
Čisto zavisi, kako je pavza izvedena. V koliko program zankaš, ter v času pavze ne delaš nič drugega, pač pred pričetkom procedure, ki izvaja pavzo prebereš vrednost na ad vhodu. Rezultat shraniš v nek register katerega potem recimo v pavzi odštevaš po določenih fiksnih intervalih. Ko je vrednost "0" proceduro zaključiš.
lahko uporabiš tudi kako prekinitev enega iz med timerjev ter šteješ prekinitve... skratka rešitev je veliko.
_________________ lp
Silvo |
|
Nazaj na vrh |
|
|
JuRiii Član
Pridružen-a: Sob 06 Mar 2010 18:29 Prispevkov: 117 Aktiv.: 0.68 Kraj: Leskovec-Slov. Bistrica
|
Objavljeno: Sre Dec 07, 2011 10:21 pm Naslov sporočila: |
|
|
Hvala za hiter odgovor.
Ja zdaj resolucija ravno ni tako pomembna 0.5s je že kar fino za to. Vklaplajl bi namreč rele kateri bi bil odprt pač kako dolgo nastaviš.
Bom probal kot si napisal in bom objavil ker verjento mi nebo kar takoj uspelo .
LP
|
|
Nazaj na vrh |
|
|
JuRiii Član
Pridružen-a: Sob 06 Mar 2010 18:29 Prispevkov: 117 Aktiv.: 0.68 Kraj: Leskovec-Slov. Bistrica
|
Objavljeno: Sre Dec 07, 2011 10:23 pm Naslov sporočila: |
|
|
No namreč sem čisti začetnik še v programiranju in če imate mogoče kake podobne primere?
|
|
Nazaj na vrh |
|
|
PZUFIC Vseved
Pridružen-a: Sob 17 Nov 2007 19:06 Prispevkov: 6987 Aktiv.: 35.08 Kraj: Rakek
|
Objavljeno: Sre Dec 07, 2011 10:25 pm Naslov sporočila: |
|
|
Drugače lahko to rešiš tudi s časovnim relejem.
_________________ Ne čakaj, da se bo nekaj premaknilo pojdi in nekaj premakni.
Lp Primož |
|
Nazaj na vrh |
|
|
JuRiii Član
Pridružen-a: Sob 06 Mar 2010 18:29 Prispevkov: 117 Aktiv.: 0.68 Kraj: Leskovec-Slov. Bistrica
|
Objavljeno: Sre Dec 07, 2011 10:26 pm Naslov sporočila: |
|
|
ja to vem ampak bi rad osvojil znanje PIC mikroprocesorjev.
|
|
Nazaj na vrh |
|
|
lojzek Član
Pridružen-a: Pet 25 Jan 2008 8:00 Prispevkov: 3352 Aktiv.: 17.02
|
Objavljeno: Čet Dec 08, 2011 7:19 am Naslov sporočila: |
|
|
Jaz sem takšen "problem" v mojem trenutno še nedokončanem projektu rešil še malce enostavneje, brez preračunavanja. Je pa v mojem primeru res, da ne potrebujem zelo točne vrednosti pavze.
Najprej z ADCjem pomerim neko napetost nastavljeno s potenciometrom. tu dobim neko cifro med 0 in 1024.
Timer v ozadju mikrota teče in ko pride do časovne prekinitve, poveča nek števec. Na koliko časa pride do prekinitve, je odvisno od nastavitev timerja.
Ko je števec timerja večji od napetosti, je pavze konec.
S tem imam obseg od 0 do skoraj 15 minut. Kot že rečeno, pa je to odvisno predvsem od nastavitev timerja.
|
|
Nazaj na vrh |
|
|
mirkatmir Član
Pridružen-a: Pet 25 Jul 2003 9:14 Prispevkov: 1876 Aktiv.: 8.45 Kraj: Ribnica (JN75IR)
|
Objavljeno: Čet Dec 08, 2011 9:15 pm Naslov sporočila: |
|
|
Ena od opcij: če želiš nastavljati fiksne pavze glede na prebrano vrednost poglej spodnjo sliko. Seveda dolžino pavze priredi za svojo potrebo.
Opis: |
|
Velikost datoteke: |
702.28 KB |
Pogledana: |
58 krat |
|
_________________ lp, Miran (Miro - S51SK) |
|
Nazaj na vrh |
|
|
Pyr0Beast Član
Pridružen-a: Pon 16 Jun 2008 14:11 Prispevkov: 4969 Aktiv.: 25.86
|
Objavljeno: Pet Dec 09, 2011 1:23 am Naslov sporočila: |
|
|
mirkatmir kaj maš pa ti to zaeno orodje ?
|
|
Nazaj na vrh |
|
|
mirkatmir Član
Pridružen-a: Pet 25 Jul 2003 9:14 Prispevkov: 1876 Aktiv.: 8.45 Kraj: Ribnica (JN75IR)
|
Objavljeno: Pet Dec 09, 2011 10:31 am Naslov sporočila: |
|
|
Na hitro sem spacal en program v Flowcode-u.
_________________ lp, Miran (Miro - S51SK) |
|
Nazaj na vrh |
|
|
red_mamba Član
Pridružen-a: Ned 20 Feb 2005 17:56 Prispevkov: 1486 Aktiv.: 6.69 Kraj: Yogyakarta
|
Objavljeno: Pet Dec 09, 2011 11:01 am Naslov sporočila: |
|
|
sej zgleda lepo ampak se ti ne zdi da bi bil t=ADC*4 (ali pa x3.8) v ms boljsa vajranta pa na koncu 2 if stavka za korekcijo kot pa 300 if stavkov?
_________________ Bad things happen to good people all the time for no reason!
Blog |
|
Nazaj na vrh |
|
|
mirkatmir Član
Pridružen-a: Pet 25 Jul 2003 9:14 Prispevkov: 1876 Aktiv.: 8.45 Kraj: Ribnica (JN75IR)
|
Objavljeno: Pet Dec 09, 2011 12:36 pm Naslov sporočila: |
|
|
mirkatmir je napisal/a: |
Na hitro sem spacal en program v Flowcode-u. |
poudarek je na besedi "hitro" in moj namen je bil samo še ena od možnosti izvedbe avtorjevega problema.
_________________ lp, Miran (Miro - S51SK) |
|
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
|