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   1037 / 1203
(#) Hp41C válasza jdani hozzászólására (») Júl 16, 2018 /
 
Ha tudod garantálni, hogy a fogadó PIC esetében az a láb mindig bemenet, nyugodtan összekötheted.
(#) superuser válasza Hp41C hozzászólására (») Júl 16, 2018 /
 
Idézet:
„További probléma lehet a tápfeszültség eltérő értéke.”


Abszolúte.

pl. ha a két PIC külön panelen van, az egyik panel a másikról kapja a tápot, testet, csatlakozón keresztül.
Egy ilyen hot-plug simán kinyírhatja a PIC I/O lábát.

Szóval azon az 1k-n nem spórolnék. Ha meg komolyabb védelmet akarsz akkor dióda a táp és test felé.
(#) Bakman válasza superuser hozzászólására (») Júl 16, 2018 /
 
Optocsatolós leválasztás a dolog netovábbja, már ha egyirányú kapcsolatról van szó.
(#) abacs hozzászólása Júl 17, 2018 /
 
Sziasztok! Van valakinek PIC-el kapcsolatos C nylevű könyve ami viszonylag az alapoktól kezdi? Előre is köszönöm
(#) Topika válasza abacs hozzászólására (») Júl 17, 2018 /
 
Szia! Nézd meg ezt az oldalt. Piccolo
(#) icserny válasza abacs hozzászólására (») Júl 17, 2018 /
 
(#) abacs hozzászólása Júl 17, 2018 /
 
Köszönöm szépen a segítségeket. Végül megtaláltam amit kerstem...itt van egy link amiről letudja tölteni akinek még szüksége van rá: e-book
(#) vilmosd válasza abacs hozzászólására (») Júl 18, 2018 /
 
Itt egy C-konyv. Igaz nem PIC specifikus. C-programozas.. Ja regelni kell a doksi.hu-ra. Azutan talalsz meg egy par konyvet.
A hozzászólás módosítva: Júl 18, 2018
(#) kszabi hozzászólása Júl 20, 2018 /
 
Sziasztok!
Pic és egy szoftver közti uart alapú protokollal vesződök.
Létezik olyan terminál progi amivel más szoftver adatforgalmába bele lehet nézni, esetleg változtatni?
Köszi Szabolcs.
(#) Bakman válasza kszabi hozzászólására (») Júl 20, 2018 /
 
Ha van egy aktív UART kapcsolatod, akkor arra rá tudsz nézni logikai analizátorral, USB-UART átalakítóval (másik porton).
(#) kszabi hozzászólása Júl 20, 2018 /
 
Jelenleg is úgy működik hogy a pic a vett adatot visszatükrözi egy másik porta,

Viszont ha a válaszon módosítani akarok akkor mindig újra kell programoznom a picet.
(#) Bakman válasza kszabi hozzászólására (») Júl 20, 2018 /
 
A válasz módosításához valamilyen eszközt fel kell készíteni a feladatra, amit a kettő közé tudsz rakni. Pl. egy másik kontroller, másik számítógép. Viszont, a közbenső eszközt programozni kell valamilyen úton módon mégpedig úgy, hogy X vett adat esetén Y-ra módosítson és azt küldje tovább.

Erre az egyszerű Terminal programok általában nem alkalmasak, nem arra lettek kitalálva hanem elsősorban az adatok fogadására és küldésére. Bár, mintha ez (Script és Macro kapacitással): Bővebben: Link tudná a kérdéses funkciót. Bővebben ilyen irányban nem foglalkoztam ezzel, megírom magam a feladatra szerintem legalkalmasabb programot.
(#) kszabi hozzászólása Júl 20, 2018 /
 
köszi, akkor marad a jelenlegi megoldás.
(#) icserny válasza kszabi hozzászólására (») Júl 21, 2018 /
 
Ilyesmire gondoltál: Serial Port Monitor?
(#) kszabi hozzászólása Júl 21, 2018 /
 
Kipróbálom, köszi.
(#) nagym6 hozzászólása Júl 22, 2018 /
 
Üdv. A PIC16F648A TMR1 16 bites osztója TMR1L, TMR1H hogy törölhető? Beírható oda 0 érték? Köszönöm.
(#) Hp41C válasza nagym6 hozzászólására (») Júl 22, 2018 / 1
 
Beírható. PIC Timer1 errata
(#) nagym6 válasza Hp41C hozzászólására (») Júl 22, 2018 /
 
Köszönöm.
(#) kszabi hozzászólása Júl 30, 2018 /
 
Sziasztok!
Van egy tömböm pl:
unsigned char temp[]={"rFFFFFFFF,FFFFFFFF}
Két hex-ban felírt változó.
Ezt régebben valahogy így olvastam be:
float a,b;
sscanf(temp,"%X %X",&a, &b);
Az a program sajnos elveszett, most meg sehogy se akar jó lenni.

Mindig 0 lessz az eredmény.
Valami tipp hogy mi hiányzik belőle?

Köszi Szabolcs
(#) Hp41C válasza kszabi hozzászólására (») Júl 30, 2018 /
 
A kis r -nek ott kell lennie?
(#) Auf hozzászólása Júl 30, 2018 /
 
Sziasztok!

PIC24F08KA101 (illetve a kód mérete miatt már: 24F16KA101)
PIC adatlap

Ezzel a chip-pel készítek egy kütyüt. Lábtakarékosság miatt belső oszcit használok. (kép: 01_oszci)
Sajnos az MCC -ben a kódgenerálásnál ( , hogy csak úgy pikk pakk meglegyenek az alap dolgok) nem voltam kellőképpen figyelmes és átsiklottam egy hibaüzenet felett. (kép: 02_hiba)
Az oszcit az egyes kép alaján állítottam be. Azután a bemeneti lábakat levettem, hogy másra használjam. Érdekes módon működött a pic. Kivéve a perifériák sebességei nem mentek rendesen. Ezeket megoldottam, gondolván, hogy rossz az MCC....

Később, amikor már minden egyes perifériával gond volt, kerestem, a hiba okát.
Akkor jöttem rá, hogy az órajel forrással van a baj. 8MHz-en ment, külső forrásról a külvilágtól leválasztva.
Nos új projekbe átraktam mindent, ahol már az órajelforrást a 03_oszci_FRC kép alapján állítottam be. PLL-t használva megnövelve 32MHz-re az órajelet.
Érdekes módon minden kódrész működik a perifériák baud-jainak átírása után, kivéve az I2C.

És most itt vagyok.
Ez a kis sztori az utóbbi 3 hónapomat emésztette fel esténként és hétvégén. Szeretném a segítségeteket kérni, hogy kicsit előbb készen legyek vele.
Szóval a fő kérdés, az I2C baud lenne. Ha egyáltalán ezzel az órajel beállítással működhet az I2C. A két kép (04_I2C_TCY és 05_I2C1BRG) az adatlapból van, aminél most ez a megjegyzés zavart meg.:
Idézet:
„Note 1: Based on FCY = FOSC/2; Doze mode and PLL are disabled;”

Szóval szerintetek a periféria nem tud működni, ha a PLL megy? Ha mégis megy, akkor mi lehet a baj?

Otthonról fel tudom tölteni az aktuális kódrészleteket, ha szükséges.
Bocsánat a regény hossz miatt.

Előre is köszi!
A hozzászólás módosítva: Júl 30, 2018
(#) Hp41C válasza Auf hozzászólására (») Júl 30, 2018 /
 
100kHz -es I2C -t valóban nem tudsz beállítani, de 126kHz -est már igen: I2C1BRG=255.
(#) Auf válasza Hp41C hozzászólására (») Júl 30, 2018 /
 
A külső órajelről, ami valójában szerintem belső volt, az 8MHz-en ment, így be tudtam állítani az I2C baudját 400kHz-re.
MPU6050
és ő tudja a 400 kHz-t.
Idézet:
„400kHz Fast Mode I2C for communicating with all registers”

18-adik oldalon írja az átviteli tartományt, de csak a max 400kHz-et írja.
Nem úgy van,hogy vagy 100 vagy 400?
(#) Zsora válasza Auf hozzászólására (») Júl 30, 2018 /
 
8MHz FRC és 4xPLL mellett a Fosc=32MHz és Fcy=16MHz. (Ha DOZE = 1:1)
A perifériák elvileg függetlenek a DOZE beállítástól, tehát Fosc/2, azaz 16MHz-es órajelet kapnak.
Így BRG=157 az 100Khz-es I2C frekvenciát kell hogy adjon.
Nem tudok olyan kitételről hogy az I2C nem működhet PLL mellett.
(#) superuser válasza Auf hozzászólására (») Júl 30, 2018 /
 
Egyébként ha az i2c-t arra használod ami, akkor csak az számít, hogy ne lépd túl azt az órajelet amit a perifériák, az átviteled és a szoftver elbír.
Mivel az i2c szinkron kommunikáció és kb. a kutyát nem érdekli az órajel. Nagyjából...
(#) superuser válasza superuser hozzászólására (») Júl 30, 2018 /
 
Egyébként meg sok alkalmazásban használnak szoftveresen megírt i2c-t is, mert rövid és egyszerű kód. Nem vagy hozzákötve a PIC hw blokkjához.
(#) Auf válasza Zsora hozzászólására (») Júl 30, 2018 /
 
Próbáltam a korábban 8MHz-ről működő kódot (clk_2 képen a piros vonallal jelölt órajel beállítás) minden beállításával a 32MHz-s új projektbe (ami a zöld vonalas jelölés a képen) áthelyezve, de sajnos nem olvas i2c-n. 16MHz-cel számolva Fcy-t, de még 32-vel se kb már mindenfélével számoltam, de nem akar menni.

DOZEN most 0. Szóval a kép szerintem magáért beszél,de mégsem akar menni. Biztosan valami bagatel kis hiba, ami elkerüli a figyelmemet.
(#) Hp41C válasza Auf hozzászólására (») Júl 30, 2018 /
 
Van-e felhúzó ellenállás az I2C SCL és SDA vonalán (a PIC Vcc -hez)?
(#) usane válasza Hp41C hozzászólására (») Júl 30, 2018 /
 
Épp ezt akartam kérdezni én is
MC 2,2k-t szokott ajánlani.
(#) Auf válasza Hp41C hozzászólására (») Júl 30, 2018 /
 
Igen van. 4,7K mind a kettő vonalon.
Ja és van két külön áramköröm, az egyikben PIC24K08KA101 a másikban pedig ..24K16.. van, persze mind a kettőnél ugyan ez a helyzet. A két áramkör csak a pic -ben tér el egymástól.
Következő: »»   1037 / 1203
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.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