Fórum témák
» Több friss téma |
Jelenleg semmi!
Korábban írtam, hogy az USB HID bootloader programozási módba lépéséhez kell a nyomógomb, ha 18F2550-t használnátok bootloaderrel. Jelenleg azon gondlokodom, hogy emellett a három mérési mód között lehet majd vele lépkedni(impulzus, periódus, freki). A LED-ek hibakövetésre használtam, szépen villognak.
Szia! Erre nem számítottam, de végül is 83nsec a Timer1 egy lépése, így nem lehetetlen, csak azt nem tudtam pontosan, hogy milyen felesleges csömbörlékeket fordít be a fordító, ami a megszakításokban húzza az időt. Így már hangfrekis tartományra szépen használható és PWM jeleket is lehet vele mérni. pl. ki lehet mutatni, hogy az impulzusadóm felfutó éle 3msec-el hosszabb, mint a lefutó éle, de a periódus idő stimmel. Ez lehet valamelyik áramköri elem kapcsolási küszöbétől is, mert a PIC(16F628A) nem valószínű, hogy beleteszi.
A hozzászólás módosítva: Nov 9, 2012
Nagyszerű tervek. Remélem azt is megosztod velünk, akár cikként is.
Cikkre nem lesz idő, de megosztom természetesen. Egyébként nem akkora durranások ezek, hogy cikket érdemes írni róla. Pár blokk az egész összelógatva!
Persze! Persze. Pár blokk.
Mit a mesebeli TV szerelő. Az alkatrész ocó, de a tudás ami megfizethetetlen.
Akkor, hogy ne a levegőbe beszéljek, itt a freki, periódus, impulzusidő fel és lefutó él kiválaszthatósággal, mérő. Szerintem 1Hz és 99,999KHz között mér 1usec pontossággal.
Szeretném, ha nem értenétek félre, csak a FlowCode miatt szeretném mondani, hogy ez nagyon jó lett! Én nagyon szórakoztatónak tartottam a tanulását! Aki azt állítja, hogy nem ér semmit, az még nem próbálta használni! Pont azoknak ér valamit, akik ismerik a PIC-et, az Assemblert és a C-t is magas szinten! Így használva olyan, mint egy Visual Stúdió, ahol a melós részeket megírták helyettünk. Igaz, hogy egy bizonyos méret felett kicsit kezd áttekinthetetlen lenni és van néhány érdekes dolga, de ez a C-vel is így van, az ASM-t ne is említsük. Viszont percek alatt át lehet struktúrálni, ami más nyelveknél sokkal nehezebb! Szóval én kellemesen csalódtam és ajánlom minden fanyalgónak! Lehet, hogy aki régebben nézte meg, amikor még nem volt C módosítási lehetőség és akkor vonta le a következtetést, még igaza is volt, de most... Akkor a program... A hozzászólás módosítva: Nov 9, 2012
Szívesen! Igen ebből érdemes kiindulni, de a PIC és a bekötés lehet más is, csak akkor a megfelelő blokkokban át kell konifigolni a lábakat. Nem nagy ügy...
A hozzászólás módosítva: Nov 9, 2012
Sziasztok!
Újra egy kis PWM kérdéssel fordulok hozzátok ; Eddig már jól megy a CCP1 és CCP2 PWM jel kiadása, most a kérdésem az lenne (villmosd fórumtárs ajánlotta a PIC18f4431 PIC-et) hogy ezen ugyebár van 8 PWM kimenet, ezeket flowcodeban hogy tudom a legegyszerűbben vezérelni? Köszi! A hozzászólás módosítva: Nov 9, 2012
A másik kettőt a flowcode PWM -jével vezéreltem, de ott csak 2 van, vagy lehet ezt bővíteni, mert nem találtam ilyen beállítást ?
És azt nem tudom megoldani, valahogy hogy ne keljen programoznom hozzá (mert akkor gondolom úgy kéne) ?
Szegény program, 1usec alatt ki sem ér a megszakítából! Csoda, hogy mér valamit! Valószínű több periódust észre sem vesz. De 4usec megmérése több mint amit kívánhatunk. Köszi a méréseket!
Ha nincs blokk, akkor programoznod kell! Nézd meg a CCP1 C forrását a blokkra jobb gombbal való kattintás után a C forrás kiválasztásánál és annak megfelelően konfigold a többi CCP modult. A PIC adatlapja kelleni fog!
A hozzászólás módosítva: Nov 9, 2012
A Timer1 külső bemenetére kell vezetni a jelet, és egy másik Timer megszakításaiban kell kiértékelni a Timer1 növekményét a mintavételi idő alatt. Van egy ilyen frekimérőm 628A-val, de az nem Flowcode-os. Nem tudom, hogy átírom-e, most más dolgom lesz. Esetleg próbáld meg te!
Persze. Ez egy számláló, ami 65536 impulzusonként egyszer átfordul, ha még van előosztás is beállítva, akkor az még hozzá adódik. De hogyan állapítottad meg, hogy leosztotta? Min látod?
A hozzászólás módosítva: Nov 9, 2012
Nem. A ccpr1h és l a CCP1 Capture módjában töltődik fel a CCP1 megszakításakor. Neked a tmr1h és l kell kiolvasnod a timer2 INT-ben.
Csinálsz egy Timer2 megszakítást, beállítod, hogy milyen időközönként szakítson meg, ha túl gyors, akkor teszel bele még egy számlálós elágazást, hogy pl. minden másodpercben, vagy minden tized, vagy század másodperben kerüljön bele a futás és ott kiolvasod a Timer1 regisztereit azaz a tmr1h-t és a tmr1l-t, összerakod(tmr1h*256+tmr1l) és eltárolod, majd a következő megszakításkor kivonod a jelenlegit az előzőből és megkapod a frekivel arányos számot.
Látom te se szoktál aludni!
Bővebben? Tedd fel mit sikerült...
Oké köszi, csak azért kérdeztem, mert ha végképp nem lehet elkerülni a programozást, akkor átmegyek MpLab ra, úgyis kellene gyakorolnom a C nyelvet
Köszi!
Szia , ez érdekesen hangzik, tudsz adni rá példaprogit, vagy linkelni valamit, mert én szoftwerest nem találtam :S
A C-t itt is tanulhatod, sőt. Bármelyik modulba belenézhetsz, valamint a teljes C forrast is meg lehet nézni. Igaz a beépített függvényeket nem, illetve még nem kerestem, hogy a fájlok közöttt meg lehet-e. Ettől függetlenül az MPLAB-ot is használhatod, csak ott nem lesz példa az orrod előtt, csak ha keresel a neten...
Nézted az RGB makrót? A hozzászólás módosítva: Nov 10, 2012
Őszintén szólva vegyíteni akartam a kettőt (flowcodebol Ctrl+c Mplabba Ctrl+v) flowcode c részében az nem tetszik, hogy például nem tudok fájlokat létrehozni, én meg szeretem a szépen átláthatóan felépített 'fákat' És nem akarok például mindent belepakolni, egy main fájlba a main függvény alá, inkább legyen egy main, ahol a már más fájlba megírt függvényeket hívom meg, és ha kifagy a program pl a LED flasher függvénynél, csak megnyitom azt a fájlt, és tudok javítani.
Ez tapasztalat, nem 1 nem 2 Windows platformos programot írtam jó 4000-6000 sorosakat, és ott már nehéz a hibakeresés (Tudom, persze ott vannak az olyan programok amik könnyítik) A hozzászólás módosítva: Nov 10, 2012
Jó lett. Én nem szoktam a tmr1-et nullázni, de így is jól működik. Majd írd meg a mérési eredményeket!
Használtad már a makró blokkot? Az pont egy szubrutinnak felel meg, azaz a te elnevezésed szerint egy fájlnak.
A hozzászólás módosítva: Nov 10, 2012
Igen, használtam, de most ilyen öreguras leszek (tisztelet a kivételnek) hogy ragaszkodok a sima 'fa' nézethez De majd elszórakozok velük, hátha hozzájuk szokom
Szerintem az impulzusok beérkeznek, csak a számolásnál túlcsordul valami(detektáld egy LED-el osztással!). Próbáld több sorba elvégezni a freki számításokat, mert az egy sorban lévő byte változók miatt a típuskonverió miatt hibás végeredmény jöhet ki.
Nem minden esetben kell erőltetni, kisebb programokhoz jó, talán közepesekhez is és olyanokhoz, ahol nem kell sok C-t, mert akkor inkább C...
Upsz! Bekapcsolt külső oszcira nyomtad a jeleket! Nem semmi, de akkor most mit tud?
|
Bejelentkezés
Hirdetés |