Fórum témák
» Több friss téma |
Fórum » PIC - Miértek, hogyanok haladóknak
Sziasztok!
A PIC18F család (per pillanat 46K80) ADC offset hibája (ami az errata szerint eléggé nagy is lehet +-30 lsb) minden mérésről mérésre lehet más? Azaz _minden_ AD konverzió előtt mérjek egy pontosnak ismert feszültséghez tartozó értéket és azzal kompenzáljam a mérést? (Bár itt most lehet ellentnondásba estem, mert ha minden konverzióban van eltérő offset, akkor a fix fesz értékhez tartozója is más offset lesz, mint a mérendő adat offsetje...) Köszönöm, Roland A hozzászólás módosítva: Jan 22, 2015
Szerintem kicsit félreértelmezed az offset hibát. "Offset Error (Unipolar)" címszó:
Bővebben: Link Tehát ez mérésről mérésre nem változik, ez egy állandó eltolódást jelent (hőmérsékletre, bekapcsolásról bekapcsolásra viszont változhat), de javítsatok ki, ha rosszul értelmezem a problémád. Amúgy én azt csinálnám, hogy a feléledéskor megmérnék egy jól ismert feszültséget (pl ref.fesz IC-t), mint ahogy írtad is , aminek tudom, hogy milyen bináris felel meg, majd az elvárt és a mért különbsége megadja az offset hibát. Ezt a kompenzáló feszültséget persze többször meg kell mérni, hogy legyen egy szűrt értéked rá, majd utána ezt az offset-et a méréseimből levonogatnám.
Szia!
Köszönöm a választ. Per pillanat azt látom, hogy az a jelenség, ami offset hibára sejtet, működés közben is előjön. Ezért indult a kérdés. Amit írtál offset "kompenzációt" pont így csinálom, induláskor ez lefut. Viszont menet közben 1-2 mV-os eltérésre is, az ADC 30-40 érték eltérést ad. Ráadásul "véletlenszerűen", ahogy tudom debug-golni, figyelni az értékeket.
Szerintem csinálj egy logolást UART-on, mert a debug nézet az nem túl beszédes, de ha egyszer-egyszer kiugró adataid vannak, akkor ott a mintavételezéssel lesz a gond, legalábbis nekem ezek az eddigi tapasztalataim. A forrás ellenállásod megfelel az adatlapi értékeknek? Azaz fel tud töltődni a PIC mintavévő kondija a mintavételi idő alatt rendesen? Illetve a másik hibát még a túl magad AD órajel szokta adni. Kb. 2 éve nem nyúltam már PIC-hez, így nem emlékszem már rájuk, hogy mit lehet állítani az AD-nál, de ha van valami, ami a mintavételi időt vagy az AD órajelét birizkálja, akkor azzal lehet, hogy érdemes eljátszani. Persze azért előtte nem árt kizárni, hogy nem a mérendő jelen van-e a zajod.
A hozzászólás módosítva: Jan 23, 2015
Sziasztok!
Segítségeteket szeretném kérni az Oldalon található eszközben. Beégetem a Picbe az adott hex filet, Androidra letöltöttem az applikációt, majd összeraktam az áramkört csatlakoztattam routerhez. Sajnos nem vagyok jártas a hálózat építésben ezért segítségeteket szeretném kérni hogy hogy is tudnám működésre bírni. Milyen konfiguráció szükséges a routernél illetve az android oldalon lévő MCU URL hol található? Hogy is biztosítom hogy csak az én telefonom férjen hozzá az eszközhöz? Köszönöm a segítségeteket!
Sziasztok!
Az lehetséges, hogy a PIC24E család InputCapture modulját nem lehet úgy konfigurálni, hogy a capture eseményt követően automatikusan törölje a saját (ICxTMR) számlálóját? Mert én csak az a megoldást látnám erre, hogy a SYNCSEL<4:0> bitekkel saját magát választom sync forrásnak, de azt mondja hogy: "Do not use the ICx module as its own sync or trigger source." PIC24 IC FRM Valaki bele nézne, hogy lát-e más megoldás? Köszönöm!
Nos akkor folytatom...
Mérni szeretném egy négyszögjel periódus idejét, és a magas szinten töltött "fél"periódus idejét, megszakítás nélkül, két input capture modul felhasználásával. Mindkét modul órajele ugyan az, és PPS -el ugyan arra a lábra vannak konfigurálva.
A probléma az, hogy IC5TMR és IC6TMR nem jár együtt, pedig PIC24 IC FRM Figure 9-2 szerint próbálkozom. A hozzászólás módosítva: Jan 28, 2015
Sziasztok!
Ismertek olyan PIC-et, amiben 12 bites felbontásban is minimum 2 S&H blokk/kapacitás használható? Hiába kerestem, eddig csak olyant láttam, ahol 10 bitesnél van több, de 12 biten már csak egy. Van olyan parametrikus kereső, amiben van ilyen paraméter? Válaszotokat köszönöm!
PIC16LF1554, PIC16LF1559, PIC18F86J72, PIC18F87J72.
Ha jól értelmeztem azt a krix-kraxot a hozzászólásodban. Kifejtenéd, mit jelent?
PIC18F86J72, PIC18F87J72, mindkettő 2 db 16bites ADC-t tartalmaz. Bővebben: Link "#of A/D Converters" mező
A hozzászólás módosítva: Jan 30, 2015
Elsősorban arra gondoltam, hogy például a 33F szériában az ADC maximum 12 bites, 10 bites módban használva lehet akár 4 vagy 8 Sample&Hold kapacitása, vagyis mérni nem, de mintát venni egy időben tud a mérni kívánt jelekből, viszont 12 bites módban használva csak 1db S&H használható ha jól értelmeztem az adatlapokat. Van olyan amiben 2 S&H mérhető 12 bites felbontás mellett?
De a több AD is hasznos információ, pgabor2, nedudgi kösz. A hozzászólás módosítva: Jan 30, 2015
Idézet: „csak 1db S&H használható ha jól értelmeztem az adatlapokat.” Sajnos, jól értelmezted. Pl. PIC24HJ128GP502 esetében: A 12 bites módban csak a CH0 mintavevő csatorna használható, tehát több csatorna szimultán mintavételezése nem lehetséges. dsPIC33FJ128GP802-nél is ugyanez a helyzet.
Sziasztok!
PIC18F14K50-en akarok 16 bites számlálót használni Az alábbit állítottam be: MOVLW B'00011000' MOVWF T0CON Futtatásnál csak a TMR0L számol, de a TMR0H-ba nem kerül adat. Tudnátok segíteni, hogy mit nem csináltam jól? Esetleg kell még valami beállítás?
Ez idáig jónak látszik (ha külső jel lefutó éleit akarod számlálni), de a számláló engedélyezését hol/hogyan csinálod? Nem ott írod felül a 8/16 bites módot véletlenül?
MPLAB IDE V8.92 - Debugger - MPLAB SIM- Watch ablak
A Watch ablakban ne a TMR0L és TMR0H regisztereket nézd, hanem a TMR0_Internal regisztert.
A hozzászólás módosítva: Feb 18, 2015
Igen, én is a HP41C kolléga által javasoltra akartam felhívni a figyelmet !
Magyarázat : a TMR0H csak mint átmeneti regiszter működik, a számlálás nem ebben történik ( nézd meg a hozzátartozó ábrát!): icserny kollégával ellentétben én úgy látom, hogy a belső órajeleket számolod ( és valószínűleg azt is akartad!)!
Sziasztok!
Szeretnék egy kis segitséget kérni. Eddig mikroc-ben programoztam pic-re, de most nézegetem az Mplabx és Xc8 felállást. Próbáltam az xlcd lib-et használva lcdre írni, de sehogy sem jártam sikerrel. Ha valaki tudna adni egy működő mintát azt nagyon megköszönném. Pic18f45k22-t használnék 32 MHz órajellel, 8 MHz krtistály és 4xPLL. A hozzászólás módosítva: Márc 11, 2015
Ez mehetett volna a kezdő topicba is, de mindegy. Az xlcd elég pocsék, hogy finom legyek. Ajánlom figyelmedbe icserny fórumtárs oldalát.
A hozzászólás módosítva: Márc 11, 2015
Idézet: Ahhoz viszont MPLAB 8 és C18 ajánlott... „Ajánlom figyelmedbe icserny fórumtárs oldalát.”
Valóban. Az xc8 felett átsiklottam.
De ha még csak nézegeti a felállást, akkor nézegethetné inkább a C18-at.
Sziasztok!
A régi PIC16C sorozatú vezérlőkkel kapcsolatban kérdezném, hogy a /JW végződésű ablakos vezérlőknek mekkora a maximális üzemi frekvenciájuk? Igazából PIC16C73B-20/SP vezérlőre volna szükségem, de elérhető olcsóbban PIC16C73B/JW. Ezen a processzoron nincs sebesség jelölés, ezért érdeklődöm, hogy jó lesz-e? Bővebben: Link
Ha nincs jelölve akkor általában az adatlap a meghatározó ami ezt a típust 20MHz-re írja. Egyéb oldalakon is 20MHz-esnek titulálják.
Üdv!
Egy digitális frekvencia mérőt szeretnék készíteni egy 16f887 kontroller segítségével, ami a gitárból érkezett jel frekvenciáját mérné meg. Elvi megoldásnak egy bizonyos előre beállított kapuidő alatt beérkező impulzusok számlálását vettem alapul, ezt próbáltam megvalósítani. Tesztelésként építettem egy négyszögjel generátort cd 4060 számláló segítségével és ennek a frekijét jól meg is tugya mérni a kapcsolásom. Sajnos a gitár jelét már nem tugya megmérni rendesen. A gitárból vett jelet előerősítővel felerősítettem majd komparátorral azt négyszögesítettem és ennek a négyszögjel sorozatnak kéne elvileg léptetnie a belső T0 számlálót a mikrokontrollerba. Sajnos minden esetben csak 1-2 lép a számláló. Elvileg egy 200 Hz es jelnél 1 másodperc alatt 200-szor ismétlődik a jel, szóval 200 db pozitív értékű négyszögjelet kéne kapnom. Ez a négyszögjel sorozat lépteti a számlálót, esetünkben 200-at kéne lépnie viszont állandóan csak 1-2 őt lép a számláló. Esetleg valakinek valamilyen tipp? Esetleg a komparátor túl lassú és nemtugya négyszögesíteni a jeleket? Sajnos nincs oszcilloszkópom amivel megtudnám nézni. Előre is kösz a segítséget.
Ha nincs szkópod és nem bízol a komparátor sebességében, akkor tegyél a kimenetére egy erősítőt és hallgasd meg !
Lehet a bemenő jel nem megfelelő szintű. Egy CD sorozatú kaput (esetleg smittriggert) utána kötve, annak a kimenetén nagy impedanciás fejhallgatóval ellenőrizni tudod a jelet . Ha azon a kimeneten hallod a gitár hangját, akkor azt a PIC bemenetére kötve már működnie kell. Egyébként milyen komparátorral próbáltad? egyszerű műveleti erősítő lehet nem jó, mert 5V táp esetén nem tudja a kimenetén a CMOS szinteket produkálni.
|
Bejelentkezés
Hirdetés |