Fórum témák

» Több friss téma
Fórum » PIC kezdőknek
 
Témaindító: Placi84, idő: Okt 3, 2005
Témakörök:
- A PIC ÖSSZES Vdd és Vss (AVdd és AVss) (tápfeszültség) lábát be kell kötni!
- A táplábak mellé a lehető legközelebb 100nF-os KERÁMIA kondenzátorokat kell elhelyezni.
- Az MCLR lábat, 10kohm-mal fel kell húzni a Vdd tápfeszültségre.
- Külső kvarc használatakor 4MHz-ig XT, a fölött pedig HS konfigurációt kell beállítani.
- Stabilizált tápegységet kell használni, a kapcsoló üzemű "telefon töltő" adapterek okozhatnak hibákat.
- Programozáshoz, használj lehetőleg PICKIT2 vagy 3 programozót. Kerülendő a JDM (soros porti) programozó.
- A PIC adatlapja (PDF), tartalmazza a lábak kiosztását és a PIC minden paraméterét. Az adatlap ingyen letölthető!
- Egyes PIC típusoknál az RA4 nyitott nyelőelektródás (Csak lefelé húz L szintre, H szintet nem ad ki!)
- Ha a PGM lábat digitális ki-/bemenetnek használod, az alacsony feszültségű programozási lehetőséget le kell tiltani.
Lapozás: OK   1094 / 1097
(#) nedudgi válasza Zsombi13 hozzászólására (») Júl 1, 2019 1 /
 
A kérdés az, hogy ingadozó tápfeszültség esetén mit veszít a pontosságból, és az mi számít a projektben. Ezt nem tudom. Az USB táp terheléstől függően 4,5V..5,5V között adja a feszültséget, elméletileg.
(#) Zsombi13 hozzászólása Júl 1, 2019 /
 
Egyébként így jó lenne a kapcsolás? A táp IC ugyanaz, mert nem találtam meg az újat. (Kimaradt az előző hozzászólásomból, és mire rájöttem, már nem lehetett szerkeszteni.)

Összeadogattam a mA-eket az egyes komponensek adatlapjáról, és kb. 35-40 mA jött ki a végére. Az USB szabvány specifikációjában minimum 1,5 A van megadva minimális értékként. Így is ingadozni fog? Ha nem nagyon az szerintem nem akkora baj, mivel csak szobai hőmérőnek lesz, ha befolyásolja is a kiírt értéket, talán nem fogja a használhatatlanságig meghamisítani.
A hozzászólás módosítva: Júl 1, 2019
(#) icserny válasza Zsombi13 hozzászólására (») Júl 1, 2019 /
 
"van egy asztali lámpám, amin van egy USB-s töltőnek hely"
Mérd meg, hogy ez stabilizált feszültség (terheletlenül is 5 V), vagy sem.
Ha stabilizált, akkor nem kell utána még egy stabilizátor...
(#) kriszrap hozzászólása Júl 11, 2019 /
 
Sziasztok
Kicsit gondolkodtam a mai nap során vettem egy univerzális multikormány eszközt és mint kiderült nem jók az ellenállások amit beleraktam igy nem kezeli az autórádió . Működési elv:Bővebben: Link

Olyanon gondolkodtam hogy első pic indításnál feltanulná sorba ADC feszültséget így tudnánk hogy melyik gondbot nyomta meg vagy ha valaki tudja hogy ADC feszültségből hogy lehet az ellenállás értékét kiszámolni az is sokat segítene.(programba könnyebb).

És hogy melyik ellenállás csoportot adja ki azt pedig shiftregiszterrel oldanám meg. Fenti linkbe található kapcsolás tranzisztor helyére menne shift kimenete (ha így meg lehet oldani elszeretném hagyni a tranzisztort,oda egy diódára gondoltam ami csak a testet ereszti át shitft lábába. )

Milyen picet,shiftregisztert ajánlatok erre a célra?
Vagy ti hogy oldanátok meg?
Segítséget előre köszönöm.
(#) Lamprologus válasza kriszrap hozzászólására (») Júl 12, 2019 /
 
Rossz ellenállásokat forrasztottál be, ezért akarsz építeni (programozás, nyákgyártás stb...) egy pic-es áramkört?
Ha jól tudom akkor a vezérlés különböző feszültségszinteket vár a bemenetére.
Megvannak ezek a feszültségek?
Lehet egyszerűbb lenne újra számolni az ellenállásokat, és cserélni!
De, ha ragaszkodsz a PIC-hez, akkor én lehet megpróbálnák egy PWM kimenetes megoldást.
(#) kriszrap válasza Lamprologus hozzászólására (») Júl 12, 2019 /
 
Nem forrasztottam semmit se csak a vezérlőjébe az ellenállások teljesen eltérnek a fent említett kapcsolástól. Erről lenne szó:

Bővebben: Link

Amik a vezérlőbe van ellenállások nem jók a pioneerhez teljesen más . Sajnos a fejegység nem tanítható így a fent említett kapcsoláshoz kell ragaszkodnom.

PWM kimenetes megoldást azt hogy ???
Idézet:
„Ha jól tudom akkor a vezérlés különböző feszültségszinteket vár a bemenetére.”

Ezt leméregetem . Ebbe nem is gondoltam bele hogy feszültséget fiygeli nem pedig ellenállást értékét figyeli.
A hozzászólás módosítva: Júl 12, 2019
(#) kriszrap hozzászólása Júl 12, 2019 /
 
Ahogy jobban olvasom lent a dolgokat valaki digitális potenciométerrel oldotta meg oldotta meg.
A hozzászólás módosítva: Júl 12, 2019
(#) kriszrap hozzászólása Júl 18, 2019 /
 
Sikerült megoldani a beolvastatást stb.
Már csak a pwm es változtatható feszültség megoldásra lennék kíváncsi hogy azt hogy lehetne különböző feszültségeket előállítani.
Valaki elmagyarázná nekem azt nagyon megköszönném
(#) Kera_Will hozzászólása Júl 18, 2019 / 1
 
PWM - Pulse Widht Modulation - impulzusszélesség moduláció , avagy kitöltési tényező változtatása.
Négyszögjelek "átlag értéke" (több is van effektív, egyenáramú középérték stb. alaktényezőtől is függ sinus/háromszög/fűrész/négyszög ...stb. ) függ a kitöltéstől.
A kitöltés lehet 0-100% . ha 0 akkor mindig 0 szinten alacsonyan van , ha 100% akkor meg mindig magasan , tápfeszen van a port lába.
Ha 50% akkor azonos ideig van magasan és alacsonyan ... ekkor az "átlag" szintje a kitöltési tényező szorozva a tápfesszel ~ 2,5V lesz.(5 voltos PIC esetén )
Ha 10% akkor 1 egység ideig van magasan majd 9 egység ideig alacsonyan.
ekkor tápfesz*10% ~ fél volt lesz a mért "átlag" DC érték.
Fordítva 90% esetén pedig 9egység ideig magas , 1 egység ideig alacsony.Ekkor 4,5 V körül lesz az értéke.
Ezt a PICben jobb esetben külön hardveres PWM elvégzi, csak bele kell írni egyik regiszterébe azt a bináris értéket amitől függenie kell a kimenő szintnek. Rosszabb esetben nincs akkor pedig egy változót kell kezelni és proceszor időt feláldozva softveres PWMet kell megírni.
Másik lehetőség a számláló / komparátor áramkörökkel is lehet PWMet létre hozni,
a megszakítások figyelésével , mert a számlálók hardveresek órajel tekeri őket , ha adott értéket elér azt a komparátorba írt változó a megszakításán keresztül jelzi és akkor lehet a portot H/L helyzetbe rakni.
A kimenő PWM jelet illik simítani egy R C alul áteresztő tag megteszi.
Ennek értéke függ a PWM frekvenciájától.Méretezni kell.
Ha túl alacsony az RC tag időállandója akkor a négyszög "tüskéi" (on/off állapotai )átmennek a a DCvel vezérelt áramkörre , ha túl nagy(időállandó) akkor meg lassan követi PWM jel a változását a DC szint.
(lásd tápegység lüktető egyenárama és a puffer kondi működése ... az C tag ugyan ezt végzi el)

A PWM felbontásához 8 bit bőven elég az 256 db lépést testesítene meg a 0 és közel a tápfesz között. 5V / 256 a lépésköz Voltban ez kisebb mint 2mV-os egységek .
Neked ennél ennél durvább felbontású lesz a vezérelt áramköröd fogadó része.
Röviden ennyi lenne a PWM lényege.
PIC adatlapok tartalmazzák a használható PWM frekik és PIC órajelek közötti összefüggéseket.
A hozzászólás módosítva: Júl 18, 2019
(#) kriszrap válasza Kera_Will hozzászólására (») Júl 18, 2019 /
 
Nagyon szépen köszönöm a részletes leírást így már jutok valamire
Erre a műveletre elég lesz 15khz?
(#) Kera_Will válasza kriszrap hozzászólására (») Júl 18, 2019 / 1
 
Még sok is ... pár 100Hz is elég oda. Mint írtam PIC órajelfüggő a generálható PWM frekvenciája.
Olyan frekit és eljárást válasszál ki , amit kényelmesen meg tud oldani a uC és Te is átlátod.
A hozzászólás módosítva: Júl 18, 2019
(#) kriszrap hozzászólása Júl 19, 2019 /
 
Üdv
490hz es pwm jelem RC nél 3.2k 100nf jól számoltam az értékeket??
Segítségeteket előre köszönöm
(#) kissi válasza kriszrap hozzászólására (») Júl 19, 2019 /
 
Szia!

Jól számoltad az RC törésponti frekvenciáját, de a jó szűrőhöz legalább a 10-szeres viszony kell, azaz a frekvenciát a PWM freki tizedére ( vagy az alá !) méretezd !
Minél messzebb vagy a törésponttól, annál kevésbé fog "lüktetni" a DC szinted, de annál lassabban fog megváltozni is --> kompromisszum kell !
A hozzászólás módosítva: Júl 19, 2019
(#) kriszrap válasza kissi hozzászólására (») Júl 19, 2019 /
 
Ha jól értem akkor RC tagokat 49hz re méretezzem?
Köszönöm a segítségeteket.
(#) DJozso hozzászólása Júl 19, 2019 /
 
Sziasztok!
Nekem egy gyors elméleti kérdésem lenne. Autóban szeretnék egy áramkört tervezni, melynek a lelke egy PIC lenne. Ez egy olyan áramkör lenne, hogy egy külső megszakítás jelre elindul (bekapcsol alvó állapotból), elvégzi a dolgát, majd vissza áll sleep módba. A kérdésem, hogy a sleep mód áramfelvétele függ az órajeltől is, igaz? Tehát, induláskor fel kell venni a órajelet, alvó módba küldés előtt pedig vissza kell állítani 32kHz-re(mondjuk). Belső órajel (RC) esetén elég a regisztereket átállíttatni, vagy utána újra is kell indítani a PIC-et, hogy az új órajel beállítás érvénybe lépjen? Köszönöm a segítséget.
(#) kissi válasza kriszrap hozzászólására (») Júl 19, 2019 /
 
Igen.
(#) Pali79 válasza DJozso hozzászólására (») Júl 19, 2019 / 1
 
Nem mindegy melyik PIC. Egy autós használatnál nem sok értelme van szerintem.
(#) DJozso válasza Pali79 hozzászólására (») Júl 19, 2019 /
 
Köszi, hogy segítesz.16f88-ra gondoltam. Elektromos ablakot húzza fel, autó ajtó zárásnál, majd nyitásnál visszatekeri az ablakot a zárás előtti pozicióra. Illetve, nagyon meleg beltérnél, mind a négy ablakot lehúzza nyitásnál.
(#) Pali79 válasza DJozso hozzászólására (») Júl 19, 2019 / 1
 
Itt miért fontos a sleep módban való fogyasztás?
Egyébként a belső órajelet az OSCCON regiszter állítja. Adatlap 40. oldal, 4.6.3.
A hozzászólás módosítva: Júl 19, 2019
(#) kriszrap hozzászólása Júl 20, 2019 /
 
Sziasztok.
Összeraktam Steering wheel vezérlést .
Ez úgy müködik hogy a rádió swc lábán tip lábat xy ellenállással lehúzzuk testre és az lesz egy valamelyik funkció gomb.
Így néz ki : Bővebben: Link

Összeraktam mindent rendesen és valamiért és nem müködik PWM nél hibázik valami.
PWM lábnál van egy LOW RC mint fent olvasható 33kohm és 100nf értékel ami 49hz.
Tip lábon 3.3v ot mérek. (Nem tudom fontos tényező)
Lemértem TIP lábat lehúzom 1khom al testre kb 280mv ot mérek.
Ebből az értekből számolgattam a megfelelő feszültségeket pwmhez.
3 szám után lévő a pwm kitöltés.
  1. switch(gomb_megnyomva) {
  2.          case VOL_UP: analogWrite(3,100); break//
  3.          case VOL_DN: analogWrite(3,115); break//
  4.          case NEXT_TR: analogWrite(3,73); break//
  5.          case PREV_TR: analogWrite(3,87); break//
  6.          case MUTE: analogWrite(3,17); break//
  7.          case CALL_UP: analogWrite(3,73); break//
  8.          case CALL_D: analogWrite(3,87); break//
  9.          case MODE: analogWrite(3,42); break; //
  10.          default: analogWrite(3,0); break; // nothing
(#) DJozso válasza Pali79 hozzászólására (») Júl 21, 2019 /
 
Köszi a válaszod. Az tiszta, hogy a belső órajelet, hogyan állítjuk, csak az nem tiszta, hogy a pic futása közben megváltoztatható-e ez az érték, illetve ha megváltoztatod, az mikor lép életbe a változás. Rögtön, vagy csak újraindítás után. Másképp fogalmazva, folyamatosan olvassa az OSCCON regisztert, vagy csak indulásnál?
A hozzászólás módosítva: Júl 21, 2019
(#) Bakman válasza DJozso hozzászólására (») Júl 21, 2019 / 1
 
Igen, változtatható menet közben is az órajel sebessége az osccon regiszterrel. Ha jól tudom, 10-20 órajel ciklus alatt be is áll a választott frekvenciára.
(#) DJozso válasza Bakman hozzászólására (») Júl 21, 2019 /
 
Köszönöm szépen a választ!
(#) DJozso válasza Bakman hozzászólására (») Júl 21, 2019 /
 
Egy kicsit tovább gondolva akkor, órajel állításnál az OSCCON.IOFS bit is változik? Ez az a bit, ami azt mutatja, hogy stabil-e az órajel.
(#) Bakman válasza DJozso hozzászólására (») Júl 21, 2019 / 1
 
Elnézést, összekevertem. Az órajel váltás kb. 4 ms alatt megy végbe, ezen idő alatt az IOFS bit 1. Ha nullára vált, az órajel stabilnak tekinthető.
(#) nedudgi válasza DJozso hozzászólására (») Júl 21, 2019 / 1
 
Nem olvassa az OSCCON regisztereket, csak állítja. A oszcillátor beállított paraméterek alapján önállóan szabályozza magát.
(#) Pali79 válasza DJozso hozzászólására (») Júl 21, 2019 / 1
 
Nem olvassa, de átállítod és végrehajtja ahogy a többiek is írták. De még mindig nem értem, hogy jelen alkalmazás szempontjából mi értelme van ennek?
(#) kriszrap válasza kriszrap hozzászólására (») Júl 21, 2019 /
 
Senki?
(#) pipi válasza kriszrap hozzászólására (») Júl 21, 2019 /
 
Senki, mert a rajzod csak egy ellenállás osztót tartalmaz, a kérdéses pwm cuccról semmit, se hw, se sw. Azt sem írod miben programozol, milyen kontrollert. Azokat a számolt szinteket nem biztos hogy tudod emulálni, ismerni kell a fogadó áramkört, ha pl az további osztót, akármit tartalmaz, azok a szintek máris nem annyik mint amit számolsz. Ha nem igaz a rajzon TIP DC5V akkor a többi rész is simám lehet hibás/nem odavaló.
(#) Bakman válasza kriszrap hozzászólására (») Júl 21, 2019 /
 
Ha egyenfeszültség kell és nem túl nagy felbontással, használhatsz DAC-ot (van olyan kontroller, amelyikbe eleve van ilyen modul), digitális potenciométert is, nem fog hullámozni a kimenet, nem kell semmit számolgatni.
Következő: »»   1094 / 1097
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu