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   669 / 1210
(#) zenetom válasza t_ricsi hozzászólására (») Máj 14, 2015 /
 
ktamas66 hozzászólását érdemes megfogadni.
(#) horka001 hozzászólása Máj 16, 2015 /
 
Sziasztok

Elkezdtem megépíteni ezt:
http://picprojects.org.uk/projects/counter/counter.htm

De sajnos nem működik! (Pedig előtte működött!)
Tüntek bekapcsolom a számálót és nem reagál semmire! Nem reagál a nyomógombokra! De ha hozzáérek a 15-ös lábhoz, akkor elkezdi az az előre bállítható számot elöbbre vinni! Mi van most? Szerintem a belső oszcillátor a ludas, de hogyan lehetne stabilizálni vagy ilyesmi!

Üdv.
(#) eSDi válasza horka001 hozzászólására (») Máj 16, 2015 /
 
Üdv!

Rosszul állítottad be a Config biteket. Külső oszcira van beállítva és az ujjaddal bevitt zaj lépteti a programot.
(#) horka001 válasza eSDi hozzászólására (») Máj 17, 2015 /
 
Szia

Köszönöm, de nem ez volt a gond. Időközben sikerült letisztítanom az agyamat. A panelon volt egy olyan pici szakadás a vezetősávban (15-ös lábnál), hogy vagy okozott gondot vagy nem! Valószínüleg, ahogyan hordoztam panelt....
Kipótoltam a kritikus részt és láss csodát, működött!
Azért köszönöm!

Üdv.
(#) szucsistvan123 hozzászólása Máj 17, 2015 /
 
Sziasztok!
Szerretnék építeni egy PIC programozót. Találtam eggyet a Bss elektronikán, és a véleményetekre lennék kíváncsi. EZT
Mennyire megbízható?
Ebben a témában még nagyon kezdő vagyok!
(#) zenetom válasza szucsistvan123 hozzászólására (») Máj 17, 2015 /
 
Szia!
Nem nagyon ajánlatos, az egyes gépek eltérő feszültségszintjei miatt.
Igazából csak a PICkit2-t ajánlatos házilag megépíteni és használni. Az ördögi kör az, hogy abba is kell egy felprogramozott PIC (mint mikor a winrar telepítője van betömörítve ). De ha megkérsz valakit, biztosan beprogramozza.
(#) Bell válasza szucsistvan123 hozzászólására (») Máj 17, 2015 /
 
Ha nagyon régi géped van, amin nincs USB, de van párhuzamos port, ez lehet jó megoldás.
Ez esetben kell keresni hozzá egy megfelelő programot, mert az MPLAB erre nem alkalmas.
Ha szerencséd van, néhány régebbi PIC-et tudsz majd talán programozni vele.
(#) kitartás válasza szucsistvan123 hozzászólására (») Máj 17, 2015 / 1
 
Nem értem miért kell a bss en keresni. Itt is van elég sok. Sőt! Véleményeket, tapasztalatokat is olvashatsz a kapcsolásokról. A pic égetőkről meg szerintem annyit, hogy a gyári pickit2 (mostanában inkább a pickit3) sokkal jobb választás, mint egy soros, párhuzamos portos. Persze első látásra sokkal drágább, mint pár ellenállás, de sokkal biztosabb. Ha már építeni szeretnél inkább egy pickit2 klónt javaslok.
(#) szucsistvan123 hozzászólása Máj 17, 2015 /
 
Köszönöm a válaszokat!
A Pickit2 ön gondolkodtam én is, csak pont amiatt vetettem el, mert pic kell bele...
Zenetom ha szépen megkérnélek lehetne róla szó, hogy beprogramozd? (ha már így szóba hoztad )
Akkor ezt is elvetem maradok akkor a Pk2 nél!
(#) eSDi válasza szucsistvan123 hozzászólására (») Máj 17, 2015 /
 
A PICKit2 jó választás lesz, annyit fűnék hozzá, hogy a LPT portos égetőkkel nincs baj és nagyon egyszerű is építeni egyet. Bell hozzászólását nem értem igazán, a mai napig van a gépeken párhuzamos port és nem zárja ki az USB meglétét sem. A Microchip-nek van LPT portos referencia PIC égetője, szerintem ez is támogatott még az MPLAB-ban (MPLAB X-ben már nem biztos). A probléma a soros portra csatlakozókkal van (JDM és társai). Építsd meg a Watt féle égetőt, ezzel fel tudod programozni a PICKit2 agyát.
(#) Buvarruha válasza eSDi hozzászólására (») Máj 17, 2015 /
 
Nekem van mindkettőflébúl gyári is és kezdésnek a soros, párhuzamos posrtos megoldások tényleg nem nagyon jók, mert azt sem lehet eldönteni mindíg egyértelműen, hogy a programozás, vagy a program nem sikerült, tényleg sokkal egyszerűbb és biztosabb egy PK2-vel programozni.
(#) Pali79 hozzászólása Máj 17, 2015 /
 
Urak!
Szeretnék megerősítést vagy kijavítást kérni, mert egy picit elbizonytalanodtam.
Adott egy PIC12F675, belső 4 MHz-es órajellel. Timer megszakítást szeretnék adott időközönként. A Timer0 8 bites, max 256-os osztóval kb. 0,065 másodpercenként csordul túl és megszakít.
A Timer1 16 bites, max 8-as előosztóval kb. 0,52 másodpercenként csordul túl és megszakít.
A kérdés az, hogy jól számoltam ezeket az időket?
(#) kissi válasza Pali79 hozzászólására (») Máj 17, 2015 /
 
Szia!
Jól számoltad ( ha a lehetőségeket jól adtad meg, mert azt nem ellenőriztem !), mert 4 MHz-es órajelnél 1us-os lépéssel megy, így TMR0 256*256*1us, TMR1 a 16 bites üzemmód és ahhoz a 8-as előosztóval 8*256*256 us ! Ezek a maximális idők, ha a számlálók 0-ról indulnak !
Szimulátorban ezeket nagyon jól ki tudod próbálni egyébként !
(#) Pali79 válasza kissi hozzászólására (») Máj 17, 2015 /
 
Szia!
Köszönöm szépen! Tudom, hogy a szimulátor jó barát ilyenkor, de nem még nem áll úgy a program és nem tudtam merre induljak, melyik timert használjam, de így már világos, hogy a Timer1 kell nekem!
(#) Pali79 hozzászólása Máj 17, 2015 /
 
Újabb kérdés. PIC12F675, de lehet általánosságban is: "GOTO $-x" utasításban az "x" milyen érték lehet?
(#) mate_x válasza Pali79 hozzászólására (») Máj 17, 2015 /
 
A "$-x" csak a fordítónak szól. A fordító tudja, hogy az adott goto utasítás éppen a program memória hányadik "rekeszében" van, ezt jelenti a $. Ha például beírod, hogy "$-1", akkor a goto előtti utasításra ugrik vissza. 2k-nál nagyobb programmemóriájú PIC-eknél figyelni kell a PCLATH értékére is.
(#) Hp41C válasza Pali79 hozzászólására (») Máj 17, 2015 /
 
12F, 16F -eken akármilyen (csak az eredmény legyen >= 0 és kisebb, mint 2k), a 18F -eken (csak az eredmény legyen >= 0 és kisebb, mint a programtár kapacitása) és még páros is. Egyébként inkább használj címkéket.
A hozzászólás módosítva: Máj 17, 2015
(#) Pali79 hozzászólása Máj 17, 2015 /
 
Köszönöm! Ez akkor már világos!

De van új a nap alatt

  1. bcf             STATUS,RP0              ;Bank 0
  2.         clrf    GPIO
  3.         movlw   b'00000111'
  4.         movwf   CMCON                   ;komparátor kikapcsolva
  5.         movlw   b'11010000'
  6.         movwf   INTCON                  ;megszakítások engedélyezve
  7.         movlw   b'00111100'
  8.         movwf   T1CON                   ;TMR1 1:8, Fosc/4, Stop
  9.         bsf             STATUS,RP0              ;Bank 1
  10.         movlw   b'00010011'
  11.         movwf   ANSEL                   ;AN0, AN1 analóg bemenet, Fosc/8
  12.         movlw   b'00110111'
  13.         movwf   TRISIO                  ;GP3 kimenet, a többi bemenet
  14.         movlw   b'11000000'            
  15.         movwf   OPTION_REG              ;INT megszakítás engedélyezés
  16.         movlw   b'00000001'
  17.         movwf   PIE1                    ;TMR1 megszakítás engedélyezés
  18.         bcf             STATUS,RP0              ;Bank 0


Az össze sorra ezt a hibát írja: Overwriting previous address contents
Mit csinálok rosszul?
(#) kissi válasza Pali79 hozzászólására (») Máj 17, 2015 /
 
Ez azt jelenti, hogy felülírod az előzőleg már lefordított memóriatartalmakat... Van valami még ezelőtt a sorok előtt, amelyeket már lefordított, ráadásul utána jött valami direktíva, ami újra visszaállította a memóriacímet !
(#) Pali79 válasza kissi hozzászólására (») Máj 17, 2015 /
 
Rossz helyen volt az ORG 0x000. Köszi!
(#) kissi válasza Pali79 hozzászólására (») Máj 18, 2015 /
 
(#) Pali79 hozzászólása Máj 20, 2015 /
 
Építettem egy áramkört PIC12F675-tel. Az INT lábat felhúztam Vdd-re 10k-val, így szeretnék külső megszakítást. Az lenne a kérdésem, hogy ezt ki tudom úgy próbálni, hogy egy másik PIC-kel létrehozott négyszögjelet adok erre a bemenetre? A másik PIC le tudja húzni az ellenállással felhúzott bemenetet?
(#) kissi válasza Pali79 hozzászólására (») Máj 20, 2015 /
 
Persze...de próbálni egy nyomógombbal is kipróbálhatod először, PIC csak akkor kell, amikor például egy négyszögjelet ( pl. 1kHz-el ! ) akarsz ráadni! Ne a bonyolultabbal kezd, mert akkor a sok hibalehetőség közül nem tudod kiszűrni a valósat, ha nem működik !
A hozzászólás módosítva: Máj 20, 2015
(#) Pali79 válasza kissi hozzászólására (») Máj 20, 2015 /
 
Hát ha úgy működik ahogy szeretném, akkor a 8160. megszakítás után lesz az első kívűl is érzékelhető visszajelzés.
Ennyit nem nyomogatnék ha nem muszáj.
Szimulátorba egyébként működni látszik, de jobb lenne élőben is látni.
(#) kissi válasza Pali79 hozzászólására (») Máj 20, 2015 /
 
Honnan fogod tudni, hogy pont a 8160-ik váltotta ki a megszakítást, ha egy jelsorozatot kapcsolsz rá ?!
Állítsd át a számot, ha tudod és akkor pl. 5-nél okozzon megszakítást ( annyit már tudsz nyomkodni ! ) !
Milyen programozóval dolgozol ?
A hozzászólás módosítva: Máj 20, 2015
(#) Pali79 válasza kissi hozzászólására (») Máj 20, 2015 /
 
Az a baj, hogy a megszakítások száma az ADC-től függ. Nem is annyira az a lényeg, hogy pont hányadik jelre jött be a megszakítás, hanem, hogy egyáltalán bejön-e és változik-e az ADC-nek megfelelően.
PICKIT2-vel nyomom.
(#) kissi válasza Pali79 hozzászólására (») Máj 20, 2015 /
 
PK2-t tudod debugger módban használni, ugyanúgy ( nagyjából, max. 3 töréspont, időt nem tudsz mérni, stb. ), mintha a szimulátort használnád! Úgy már egész jó eséllyel elkaphatod és kipróbálhatod !
szerk.: Ja, bocs, most jut eszembe, hogy 12F675, azzal nem !
A hozzászólás módosítva: Máj 20, 2015
(#) Pali79 válasza kissi hozzászólására (») Máj 20, 2015 /
 
Ezt kifejtenéd picit bővebben? Hallottam már, hogy tud ilyet, de csak a Logic Tool-t használtam.
(#) kissi válasza Pali79 hozzászólására (») Máj 20, 2015 /
 
Debugger-ként ne a szimulátort válaszd, hanem a PK2-t ! akkor egy más ikonsort fogsz látni, fordítás és betöltés után lépésenként, törésponttal, watch-al tudod nézni, mint a szimulátorban!
Az a szépséghibája, hogy bizonyos PIC-eknél ( a 12F675 ilyen ! ) egy külön eszköz szükséges ehhez még , de sok PIC-et tudsz a külön eszköz nélkül is debuggolni ! A Configure --> Select Device menüpontban láthatod az ICE/ICD Headers részen, ha kell külön egység !
(#) Pali79 válasza kissi hozzászólására (») Máj 20, 2015 /
 
Egyenlőre semmit nem csinál, de nem értem miért.
  1. Setup
  2.         bcf             STATUS,5                ;Bank 0
  3.         clrf    GPIO
  4.         movlw   b'00000111'
  5.         movwf   CMCON                   ;komparátor kikapcsolva
  6. ;       movlw   b'11010000'
  7. ;       movwf   INTCON                  ;megszakítások engedélyezve
  8. ;       movlw   b'00111100'
  9. ;       movwf   T1CON                   ;TMR1 1:8, Fosc/4, Stop
  10.         bsf             STATUS,5                ;Bank 1
  11. ;       movlw   b'00010011'
  12. ;       movwf   ANSEL                   ;AN0, AN1 analóg bemenet, Fosc/8
  13.         clrf    ANSEL
  14. ;       movlw   b'00110111'
  15. ;       movwf   TRISIO                  ;GP3 kimenet, a többi bemenet
  16.         clrf    TRISIO
  17. ;       movlw   b'11000000'            
  18. ;       movwf   OPTION_REG              ;INT megszakítás engedélyezés
  19. ;       movlw   b'00000001'
  20. ;       movwf   PIE1                    ;TMR1 megszakítás engedélyezés
  21.         bcf             STATUS,RP0              ;Bank 0
  22.        
  23.         movlw   b'11111111'
  24.         movwf   GPIO
  25.         call    Kesleltet100
  26.         clrf    GPIO
  27.         call    Kesleltet100
  28.         goto    $-4
Következő: »»   669 / 1210
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