Fórum témák

» Több friss téma
Fórum » Folyamatábrás mikrokontroller programozás Flowcode-dal
Lapozás: OK   68 / 360
(#) niedziela válasza djadji hozzászólására (») Aug 23, 2012 /
 
Belső oszcillátornál általában a programban a belső órajelet definiálni kell egy C blokkban. Azt, hogy hogyan az adatlapból kiderül.
(#) pjg válasza (Felhasználó 15355) hozzászólására (») Aug 23, 2012 /
 
Melyik "Totyikba"?
(#) foxi63 válasza djadji hozzászólására (») Aug 23, 2012 /
 
A config bitek között kell beállítani az int osc. üzemmódot, valamint a PCON regiszter 3. bitje állítja (ez már szoftverből) a frekvenciát:
1 = 4 MHz typical(1)
0 = 37 KHz typical

Alapból az 1-esre áll be elvileg.
(#) pjg válasza (Felhasználó 15355) hozzászólására (») Aug 23, 2012 /
 
Keresem!
(#) djadji válasza (Felhasználó 15355) hozzászólására (») Aug 23, 2012 /
 
Köszönöm a linket. Sose találtam volna meg.
(#) baloghzoli1 hozzászólása Aug 23, 2012 /
 
Sziasztok
Egy multitaskos példát feltudna tenni valaki,amiben adc,pwm led villogtatás megy párhuzamossan egyszerre. A példák kötött sajna nem találtam ilyet
(#) djadji válasza (Felhasználó 15355) hozzászólására (») Aug 23, 2012 /
 
ÉS a kód. Remélem olyan filet rakok fel amit lehet is használni.

Szóval az én elméletem szerint ennek a kódnak a ledeket a kapcsol eljárással nagyon gyorsan kellene villogtatni. Ehhez képest a szimulációban irgalmatlanul lassan villog, a PICben meg mondjuk Úgy 1/4 másodpercenként.
Ha valaki tudja mit rontottam, megköszönném a segítséget...
(közben túrom a példaprogramokat is, aza legjobb tanulás)
UI2: A PWM-et ne figyeljétek.. az benne maradt az előzőekből és később valszeg kelleni fog
(#) Gsmzolika hozzászólása Aug 23, 2012 /
 
Sziasztok!
V5-ben hol találok leírást az adcről?
adc raw average chanel stb. mit jelent pontosan? Hogyan kell használni? Köszi
(#) djadji válasza (Felhasználó 15355) hozzászólására (») Aug 23, 2012 /
 
Megnéztem a timer.fcf-et. Jól értelmezem:
Az egyik gombbal be, a másikkal kikapcsolom az össezs ledet. Ha nem kapcsolom ki, akkor 5 percenként eggyel kevesebb led világít (egyesével kapcsolgatja ki).
Jól értem?

Ha megtalálta valaki a hibát a kódomban nagyon várom a leszúrást.. mert akkor mennék tovább.. .
(#) djadji válasza djadji hozzászólására (») Aug 23, 2012 /
 
A szimulációnak mennyire lehet hinni? Mert futtatom ezt a timer programot, és 9 perce megy, de egy ledet sem kapcsolt ki. Szóval ez is lassabb a gépemen, mint (gondolnám) a valóságban... vagy ez nem megbízható? Vagy a 64 bites WIN miatt nem "pontos"?
(#) mrobi válasza djadji hozzászólására (») Aug 23, 2012 /
 
Ha timer megszakítást használsz akkor égesd be és úgy próbáld ki mert a gépen sokkal lassabb.
(#) djadji válasza mrobi hozzászólására (») Aug 23, 2012 /
 
A példaprogramban a Chip config-ban az van az oscillátornél, hogy XT.
Valaki tudna segíteni, hogy mit kell ott beállítanom, ha a BELSŐ oscillátort akarom használni? Beállítottam én is az XTt, de nem csinál semmit (külső nincs rajta).
(#) kokozo válasza djadji hozzászólására (») Aug 23, 2012 /
 
XT=xtal azaz külső kvarc.. Ha belső kell akkor ott nem kell semminek lennie mivel ha átállítod intosc i/o-ra az a beállítás eltünik. Mellesleg ennek a picnek 4 megás a belső órája nálad meg 10-re van állítva, lehet azért lassú minden!
Nálam még olyankor volt ilyen ha a timerben initben késleltetést használtam, próbáld meg kivenni az 1s-es késleltetéseket és más módon old meg.
(#) djadji válasza kokozo hozzászólására (») Aug 23, 2012 /
 
Megpróbálom a késleltetéseket kivenni.
De ezt az oscillátor beállítást nem értem (sztem itt lehet a kutya elásva). intosc i/o-ra van állítva, most ha 100 Hz-et lövök be a timernél (3276800, 32es osztóval) , és a számlálót 99re állítom (0ról indul) akkor kb másodpercenként villog, de kb 5-7 villogás után megfordul, vagyis késik annyit, hogy már fordítva villog. Úgy teszteltem, hogy a fülemhez tettem az órát és hallás alapján (tudom primitív, de nincs jobb ötletem). Szóval piszokul nem egy sec a villogás. Olvastam hogy a belső óra nem túl pontos.. de ennyire nem?
Sztem az Osci beállításnál szúrtam el valamit. Mert ha a 3276800 helyett 4 millióra rakom, akkro is ugyanúgy villog (majdnem egy másodprecenként). Szóval ez így nem ok,.... Csak nem értem miért...
(#) mrobi válasza djadji hozzászólására (») Aug 23, 2012 /
 
Szimulátorral nem is fogod tudni leszimulálni olyan gyorsasággal mint a valóságban. Ahhoz hogy lásd a timer pontos működését be kell égetned. Égesd be és próbáld ki úgy.
(#) kokozo válasza djadji hozzászólására (») Aug 23, 2012 /
 
3276800-et belső órával sose fogsz tudni csinálni csak beállítani lehet de mivel 4 megával megy akkor is, ezért siet bármit is állitassz. 4 megával meg nem lehet pontos másodpercet előállítani csak trükközve. Ha pontos kell akkor 3276800-es kvarcot kell venned és azt beállítani. bár még az sem atomóra pontosságú.
(#) mrobi válasza kokozo hozzászólására (») Aug 23, 2012 /
 
"Atomórát" még nem építettem, de akkor milyen kvarcot javasolsz?
(#) kokozo válasza mrobi hozzászólására (») Aug 23, 2012 /
 
3,2768 megás kvarcal elég pontosat lehet építeni ha a kondikkal kikompenzálod, de ha tényleg pontos kell akkor külső óra ic.
(#) djadji válasza kokozo hozzászólására (») Aug 23, 2012 /
 
Igazad lesz. Most már csak a kérdés, hogy erre miért nem jöttem rá magamtól...? Ezek szerint ez belső Órajellel csak 4 Mhz-en működik és slussz. No mindegy egyenlőr nem a pontos idő a cél, csak hogy azért az 1 sec ne legyen 6.
Köszi a segítséget.
Most a következő, hogy egy "autóra" teszem, hogy mozog e..
(#) Gsmzolika válasza Gsmzolika hozzászólására (») Aug 24, 2012 /
 
Megtaláltam.
(#) pjg válasza (Felhasználó 15355) hozzászólására (») Aug 24, 2012 /
 
Köszönöm
(#) baloghzoli1 hozzászólása Aug 24, 2012 /
 
Sziasztok
Egy multitaskos példát feltudna tenni valaki,amiben adc,pwm, led villogtatás megy párhuzamossan egyszerre. A példák kötött sajna nem találtam ilyet
(#) kokozo válasza baloghzoli1 hozzászólására (») Aug 25, 2012 /
 
adc mit csináljon? Mert attól hogy megméri a bemenetet nem látsz semmit. Vagy az villogtassa a ledet pwm-el?
(#) baloghzoli1 válasza kokozo hozzászólására (») Aug 25, 2012 /
 
Igazábol az érdekelne hogy egyszerre több dolgot hogy lehet a flowcoddal megcsinálni.Mondjuk ADC olvas lcd-re közben egy porton pl.5 sec-ként villognak ledek de ez egyszerre
(#) kokozo válasza baloghzoli1 hozzászólására (») Aug 25, 2012 /
 
Szinte minden példában találsz ilyet.. Csak nem tudtad, hogy mit keresel..

lrdadc.fcf
    
(#) baloghzoli1 válasza kokozo hozzászólására (») Aug 25, 2012 /
 
Igen ilyenre gondoltam ,köszönöm
(#) Kovabe hozzászólása Aug 27, 2012 /
 
Sziasztok hogy tudom beállitani hogy a késleltetés idözitöm pontos legyen belsö orajellel nem kell hü de pontos de az 1s ne 20s legyen (PIC12F675) köszönöm és bocs ha baromságot kérdezek.
Üdv Kovács
(#) kkrisz75 válasza Kovabe hozzászólására (») Aug 28, 2012 /
 
Én tmr0 megszakítást használok erre.

megadom a megszakítás beállításaiban az osztót és az órajelet.

Pl 1220hz es órajel legyen

Majd bele teszek egy számlálót.

Pl Timer = Timer +1

Majd feltételes elágazás ami ha elér 1220-ig akkor az igen ág egy másik változónak pl "frisités" ad valami értéket. Pl "Frissites = 1"

Így ha lényegében eltelik 1 mp akkor a frissítés értéke = 1 el.

A fő függvényben meg ezt használom. Így van egy stabil 1mp es alapom. Csak a fő függvény végén a "Timer = 0" számítást bele kell tenni, hogy újra induljon a számlálás ha lefutott a program.

Ha 122ig számol akkor 100ms, ha 244ig akkor 200ms.. ha 2440 ig akkor 2mp.

Ha késleltetni akarsz akkor a "Frissités" változót is számlálóvá tenném és a fő függvényben ennek az értéknek a változását figyelném.

Vagyis ha 1 mp-es a számlálóm és a frissítés 2vel egyenlő akkor az 2mp-es késleltetés. Ha a frissítés 5el egyenlő akkor 5mp a késleltetés.

Nincs most fent a gépemen a flowcode, így nem tudok példát írni neked. Remélem érthető voltam.

Valaki biztos tud egyszerűbbet, de nekem ez bevált.
(#) Kovabe válasza kkrisz75 hozzászólására (») Aug 28, 2012 /
 
Köszönöm és lényegében érthetö volt csak sajna kezdö létemre nem tudom felépiteni de küzdök és majd lessz valami.
(#) kiskata hozzászólása Aug 29, 2012 /
 
Kedves Hozzáértők...
Szeretnék grafikai elemeket megjeleníteni a karakteres LCD-n.
(Visszamenőleg szeretném sávokkal megjeleníteni a hőmérséklet változást a saját-készítésű szobahőmérőmön )
Arra gondoltam hogy feltöltögetem a 4*20-as LCD romjába a karakterként létrehozott vízszintes sávokat.
ezen az oldalon láttam sávokat
Valahogy majd arányítom (egy kis matek) a hőértéket a 4*7magas pixelsorhoz, egy óra lesz egy oszlop, majd kiíratom.
Eddig megoldom (ha van egyszerűbb megoldás áruljátok el)
De így csak ugye 20 óra fér ki a képernyőre...
Lehet valahogy egy pixelt bekapcsolni?
Akkor lehetne egy óra egy pixeloszlop... negyedórás lehetne a kijelzés... finomabban látszódna a változás.
Nőcisebb lehetne !
Következő: »»   68 / 360
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem