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   93 / 1207
(#) Balázs 1.3 JTD válasza zenetom hozzászólására (») Feb 13, 2011 /
 
Ilyenkor utálom az elektronikát.

movlw B'00000000'
movwf TRISA

És bemenetként működik.....
(#) zenetom válasza Balázs 1.3 JTD hozzászólására (») Feb 13, 2011 /
 
Ha van sok időd, olvasd el az adatlapban a 10. fejezetet. Azért leírhatták volna hogyan lehet használni ilyenkor I/O-ként.
(#) Balázs 1.3 JTD válasza zenetom hozzászólására (») Feb 13, 2011 /
 
Olvasgatom egyébként. (csak úgy lehet ezekkel a cuccokkal bármit is kezdeni szerintem )
Van is ott rögtön a fejezet elején egy ábra (10-1) ott látszik az SS láb, és valami SS Control enable is van a rajzon, de egy regiszterben sem találtam még meg. Mindegy, nem fontos... csak az A portot akartam az LCD Data lábaihoz rendelni... de meg is tettem csak így az 5 láb máshova kerül, ami a programban is plusz bit test-tel jár. De azért mégis dühít. Semmi szükség Master módban arra a lábra...
(#) zenetom válasza Balázs 1.3 JTD hozzászólására (») Feb 13, 2011 /
 
Az "SSPCON" 0-3 bit kombinációkkal lehet az SS lábat I/O-vá állítani, de csak Slave üzemmódnál.
Idézet:

bit 3-0 SSPM3:SSPM0: Synchronous Serial Port Mode Select bits
0101 = SPI Slave mode, clock = SCK pin. SS pin control disabled. SS can be used as I/O pin.
0100 = SPI Slave mode, clock = SCK pin. SS pin control enabled.
0011 = SPI Master mode, clock = TMR2 output/2
0010 = SPI Master mode, clock = FOSC/64
0001 = SPI Master mode, clock = FOSC/16
0000 = SPI Master mode, clock = FOSC/4
(#) Balázs 1.3 JTD válasza zenetom hozzászólására (») Feb 13, 2011 /
 
Igen, én is láttam... ezért azt hittem, hogy alapból masternél I/O.... végülis az de csak inputban megy.... sajnos...
(#) tomat5 hozzászólása Feb 13, 2011 /
 
Sziasztok

Egy érdekes dologba futottam bele. 16F628a PIC-el csináltam egy kapcsolást. Bizonyos adatokat eepromba kell menteni. MPLAB-bal csináltam a programot és MPLABSIM-mel debuggoltam Teljesen jól működik viszont:
1.: a debugger-ben sohasem változik az eeprom tartalma
2.: Ha beolvasom a pic eepromjának tartalmát, akkor csak minden 3. 4. alkalommal kapom a helyes értékeket. Nem változtatok semmit, csak az egérrel kattintok a beolvasás ikonra többször egymás után. Két egyforma beolvasás ritkán van. Az eeprom tartalma biztosan jó, mert bekapcsoláskor a megfelelő értékek töltődnek be amiket látok is egy kijelzőn. Az áramkör (látszólag) jól működik. Ötlet?
Köszi.
(#) Hp41C válasza tomat5 hozzászólására (») Feb 13, 2011 /
 
Szia!
Láthatnánk az EEProm író és olvasó eljárásokat?
(#) tomat5 válasza Hp41C hozzászólására (») Feb 13, 2011 /
 
  1. movf            eecounter,0
  2.         movwf           EEADR
  3.         movf                   INDF,0
  4.         movwf           EEDATA
  5.         bcf                     INTCON,7
  6.         bsf                     EECON1,2        
  7.         movlw           0x55           
  8.         movwf           EECON2         
  9.         movlw           0xaa           
  10.         movwf           EECON2
  11.         bsf                     EECON1,1
  12.         btfsc                   EECON1,1                 ;
  13.         goto            $ - 1
  14.         goto                    STORECYC


  1. movf            eecounter,0
  2.         movwf           EEADR
  3.         bsf                     EECON1,0
  4.         movf                    EEDATA,0
  5.         movwf           INDF   
  6.         goto                    RESTORECYC


Az írás és az olvasás is ciklusban történik. eecounter körönként növekszik, megadja az írni/olvasni kívánt címet.
Köszi[i]
(#) tomat5 válasza tomat5 hozzászólására (») Feb 13, 2011 /
 
Nem tudom miért ilyen kajla a kód , nálam nem ilyen
(#) Prome válasza tomat5 hozzászólására (») Feb 13, 2011 /
 
Ez két B betű. Tehát nem a ValóVilághoz van köze.
(#) tomat5 válasza Prome hozzászólására (») Feb 13, 2011 /
 
Bocs ezt nem értem.
(#) Prome válasza tomat5 hozzászólására (») Feb 13, 2011 /
 
Brig Bráner? Vagy hogy is kell kiejteni helyesen?
(#) tomat5 válasza Prome hozzászólására (») Feb 14, 2011 /
 
Ja értem
(#) tomat5 válasza tomat5 hozzászólására (») Feb 14, 2011 /
 
A probléma az MPLAB újraindításával megszűnt.
Fura.
(#) Balázs 1.3 JTD hozzászólása Feb 14, 2011 /
 
Hagy legyek kicsit pofátlan: Nem tud valaki megszánni egy MŰKÖDŐ 16bit bin --> 5BCD dekóderrel?

Találtam egyet a neten, de az nem működik. 768-1023ig hülyeséget csinál.
(#) trudnai válasza tomat5 hozzászólására (») Feb 14, 2011 /
 
Idézet:
„Nem tudom miért ilyen kajla a kód , nálam nem ilyen”


TAB-ok helyett hasznalj mindig SPACE-eket a program kodjaidban (legyen az assembly vagy C vagy barmi mas) es akkor nem lesz ilyen gondod tobbet...
(#) tomat5 válasza trudnai hozzászólására (») Feb 14, 2011 /
 
Ok Köszi.
(#) vilmosd válasza Balázs 1.3 JTD hozzászólására (») Feb 14, 2011 / 1
 
(#) Hp41C válasza Balázs 1.3 JTD hozzászólására (») Feb 14, 2011 / 1
 
Szia!

Válassz...
(#) Balázs 1.3 JTD válasza vilmosd hozzászólására (») Feb 14, 2011 /
 
Köszönöm! Találtam is egyet, ami eddig működik. Még nem tudtam teljes tartományban tesztelni de remélem nem lesz gond!

(már kaptam linket erről az oldalról de olyan kesze kuszák ezek a rutinok, hogy nem nagyon akartam belevágni)
(#) Hp41C válasza Balázs 1.3 JTD hozzászólására (») Feb 14, 2011 /
 
Szia!
Ezt a 24 bit - 8 digit rutint 16F és 18F szériára is adaptáltam, teljes sikerrel. Nagyon hatékony, a szó hosszúságát lehet növelni és csökkenteni is...
(#) Tices hozzászólása Feb 15, 2011 /
 
Sziasztok!

Ez alapján megépítettem a Josephino féle fordulatszámmérőt. (a kijelző vezérlése tranzisztorokkal, reset láb földre húzva 10K-val, pic táplábak között kondi, így módosítva).
Úgy néz ki, hogy egy asztali 12V-os lámpa áramát egyenirányítom, majd az megy a 7805-be. A lámpáról közvetlen veszem a jelet 100K, 5.1 ZPD, 2,2K ellenállás és BC182 (2x10k föld felé) adja a pic-nek a bemenő jelet. Ha indításnál nincs jel, "-" jeleket mutat, amikor hozzáértetem a lámpa egyik pólusát, akkor mér, de amikor elveszem a vezetéket, akkor megbolondul. Össze-vissza számokat ír ki, néha kifagy, ha újra oda értetem, akkor általában megint mér újra (tehát nem fagy le). Többféle módszerrel próbáltam megírni a programot, hogy ha nincs jel, akkor "-" jel legyen, de egyikkel sem működött rendesen (a mérés attól működött, de a "-" jel nem. A zpd dióda jelenleg levegőben lóg, mert ha bármelyik testre értetem, nem mér rendesen vagy nincs befolyása. Illesztés lehet, itt nem működik rendesen, de autóban igen? Mellékletben a jelenlegi forráskód, remélhetőleg érthetően kommentezve. A válaszokat előre is köszönöm! Üdv Tices
(#) Hp41C válasza Tices hozzászólására (») Feb 15, 2011 /
 
Szia!

A megszakítási rutinban ne állítds az INTCON GIE és PEIE bitjeit, a kontroller belső egysége nem fogad el több megszakítási kérést, ha egyet már elfogadott. A bsf INTCON,GIE azonnal érvényre jut, a regiszterek visszaállítása előtt...
Neked is ajánlom a fentebb belinkelt léptetős bináris - bcd átalalkító rutint - sokkal rövidebb, áttekinthetőbb, egyszerűbb...
A MCLR lábat inkább a Vdd -re kellene húzni.
(#) szilva válasza Hp41C hozzászólására (») Feb 15, 2011 /
 
Emellett találkoztunk már olyan, magyar nyelvű pdf-fel (talán pont 16F84-ről), amiben a PIC bekötésénél "csak" a Vss és Vdd lábak voltak felcserélve...
(#) watt válasza szilva hozzászólására (») Feb 15, 2011 /
 
Remélem nem az, amit az oldalamon keresztül is el lehet érni!
szerk: Nem az, megnéztem!
(#) Tices válasza Hp41C hozzászólására (») Feb 15, 2011 /
 
Az MCLR Vdd-re van húzva, csak elírtam .
Tehát a megszakítás rutinban nem kaphat még egy megszakítást, hanem csak akkor veszi figyelembe a másik megszakítást, hogy ha visszatért a főprogramba, tehát teljesen felesleges ott piszkálgatnom! (hangosan értelmezek)
Az osztó és a bcd átalakító rutinokat le fogom cserélni, csak így jelenleg működik és addig nem akarom "elrontani", amíg a többi rész is nem működik rendesen! Köszönöm az eddigieket, ki fogom próbálni!
(#) Balázs 1.3 JTD hozzászólása Feb 15, 2011 /
 
Sziasztok! Van valakinek tapasztalata 16F884-el? PICkit2 bizonytalanul égeti (5ből 1szer) nem ismeri be, nem olvassa ki csak minden 5. alkalommal. Mitől lehet? Úgyonazzal a kábellel használom, mint eddig! Sok PIC-kel jó volt már. Minden VDD és VSS láb be van kötve. Bekötést átnéztem mégegyszer, nincs hiba
(#) patexati válasza Balázs 1.3 JTD hozzászólására (») Feb 15, 2011 /
 
Szia! Feszültség 5 Volton van?? A GND szálat nézd meg rendesen érintkezik e mert nekem volt hasonló gondom érintkezési GND szakad ás miatt..
(#) Balázs 1.3 JTD válasza patexati hozzászólására (») Feb 15, 2011 /
 
Feszültség 5V, kábelek többször is ellenőrizve (most is ahogy írtad, rá is dupláztam így sem jó)
(#) Balázs 1.3 JTD hozzászólása Feb 15, 2011 /
 
Lemértem a VDD és VPP lábakat, feszültségek rendben vannak....
Következő: »»   93 / 1207
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