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   429 / 1210
(#) nedudgi válasza kiskata hozzászólására (») Júl 2, 2013 /
 
Még '11-ben telepítettem, azóta hozzá sem nyúltam. MPLab8 frissítgethette, de ez a dátumokból nem látszik.

PK3.jpg
    
(#) kiskata válasza nedudgi hozzászólására (») Júl 2, 2013 /
 
Esetleg tudnal egy telepítőt küldeni?
Egész mást látok ugyanitt.
A hozzászólás módosítva: Júl 2, 2013
(#) nedudgi válasza kiskata hozzászólására (») Júl 2, 2013 /
 
Megpróbálom.
(#) kiskata válasza nedudgi hozzászólására (») Júl 2, 2013 /
 
Köszönöm.
(#) nedudgi válasza kiskata hozzászólására (») Júl 2, 2013 /
 
Remélem, nézed az emiljeidet...
(#) kiskata válasza nedudgi hozzászólására (») Júl 2, 2013 /
 
A dat kiterjesztéssel nem tudok semmit csinalni... Zip lehetne? .-)
(#) nedudgi válasza kiskata hozzászólására (») Júl 2, 2013 /
 
Nálam a .zip fájlban egy .exe van.
(#) kiskata válasza nedudgi hozzászólására (») Júl 2, 2013 /
 
a mellékletben egy winmail.dat file van
(#) nedudgi válasza kiskata hozzászólására (») Júl 2, 2013 /
 
Azt hiszem, itt kell abbahagynunk. Van Skype alkalmazásod? Ott direktben át tudom küldeni, mert a levelezőprogramjaink úgy látszik, inkompatibilisek.
(#) Hilo hozzászólása Júl 2, 2013 /
 
Sziasztok, a lentebbi program második a sorban amit alkottam eddig, (elsőben egy kimenetet tettem digitálissá és egy ledet kapcsoltam be). Ki szeretem volna próbálni a Timer modult és a megszakítást hogy hogyan is működik. Ezt sikerül Assembly leírás + adatlapból alkotnom.
Hozzá értők rá tudnának nézni, és mondai valamit hogy mit kellene másként?
(Szimulátor szerint működik, élesben még nem mertem kipróbálni)
Előre is köszönöm!
  1. LIST P=12f683
  2.         #include <p12f683.inc>
  3.         __CONFIG H'3FD4'
  4.  
  5.         goto START
  6.        
  7.         org h'4'
  8.         goto MEGSZ
  9.  
  10.         org h'30'
  11.  
  12. START
  13.         banksel GPIO    ;Bank 0
  14.         clrf GPIO       ;GPIO mind 0
  15.  
  16.         movlw b'111'    ;Comparator OFF
  17.         movwf CMCON0    ;Comparator OFF
  18.        
  19.         banksel ANSEL   ;Bank 1
  20.         clrf ANSEL      ;minden port digitálisra
  21.  
  22.         movlw b'000000' ;(0 ki, 1 be)
  23.         movwf TRISIO    ;minden port kimenetre;
  24.  
  25.         banksel GPIO    ;Bank 0
  26.  
  27.         movlw b'00000100'       ;5 ös láb (GP2) (0-low 1-high)
  28.         movwf GPIO      ;led be
  29.  
  30.         movlw b'11110000'       ;Timer0 érték adás
  31.         movwf TMR0      ;Timer0 értékét beírja
  32.  
  33.         banksel OPTION_REG      ;Bank 1
  34.  
  35.         movlw b'11011010'       ;select Timer0
  36.         movwf OPTION_REG        ;Timer 0 on
  37.  
  38.         movlw b'10100000'       ;megszakítás beállítása
  39.         movwf INTCON    ;beír
  40.        
  41.         goto $
  42.  
  43. MEGSZ
  44.        
  45.         banksel TMR0    ;Bank 0
  46.         movlw b'11110000'       ;Timer0 érték adás
  47.         movwf TMR0      ;Timer0 értékét beírja
  48.  
  49.         movlw b'00000100'       ;5 ös láb bitje Work-be
  50.         xorwf GPIO,1    ;3-s bit csere
  51.        
  52.         banksel INTCON  ;Bank 1
  53.         bcf     INTCON,T0IF     ;Timer0 jelzőbit nullázása
  54.         bsf     INTCON,GIE      ;megszakítás engedélyezése
  55.        
  56.         RETFIE  ;megszakitás vége
  57.  
  58.         end; Teljes program lezáró
(#) sirály12 hozzászólása Júl 2, 2013 /
 
Egy kis segítséget kérnék. Egy pic12f629-et kellene munkára bírnom.
A vezérlő 20Mhz-ről jár.
Az egyik kimenetem 150Hz a másikon 150Khz lenne a cél.
Mit rontok el?
  1. #include <12F629.h>
  2. #fuses NOWDT, NOCPD, NOPROTECT, NOMCLR, PUT, BROWNOUT, HS
  3. #use delay(clock=20000000)
  4. #define KHZ PIN_A1
  5. #define HZ PIN_A0
  6.  
  7. #INT_TIMER0
  8. void timer0_isr()
  9. {
  10. output_toggle(KHZ);        
  11. set_timer0(222);                //~150khz    
  12. }  
  13.  
  14. #INT_TIMER1
  15. void timer1_isr()
  16. {
  17. output_toggle(HZ);  
  18. set_timer1(32202);              //~150hz
  19. }  
  20.  
  21.  
  22. void main(void)
  23. {
  24. set_tris_a(0);
  25. setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);   //
  26. setup_timer_1(T1_INTERNAL | T1_DIV_BY_1);   //
  27. setup_comparator(NC_NC_NC_NC);    
  28. enable_interrupts(INT_TIMER0);
  29. enable_interrupts(INT_TIMER1);
  30. //port_a_pullups(0x01);
  31. enable_interrupts(global);
  32. while (TRUE) {
  33.  
  34. }
  35. }
(#) Buvarruha válasza sirály12 hozzászólására (») Júl 2, 2013 /
 
Mit csinál?
(#) Kovabe válasza sirály12 hozzászólására (») Júl 2, 2013 /
 
Szia
C-hez tök hülye vagyok de ha jól látom 20MHz-es belső orajelet szeretnél kicsikarni, az nem fog menni mert ugyebár 4-et tud maximum.
Bocsi ha hülyeség de igy látom a programodat.
(#) vicsys válasza Kovabe hozzászólására (») Júl 2, 2013 /
 
Szerintem a HS jó oda...
(#) Kovabe válasza vicsys hozzászólására (») Júl 2, 2013 /
 
Erröl beszéltem, ott a pont.
Valoban többet kéne tanulnom mielött beleszolok bármibe is.
(#) vicsys válasza sirály12 hozzászólására (») Júl 2, 2013 /
 
Dobd fel a hex-et, leszimulálom.
(#) sirály12 válasza vicsys hozzászólására (») Júl 2, 2013 /
 
Köszönöm.

Próbapanelon összerakva az egyik kivezetésen semmi nincs, a másikon van jel, de nem jó a frekvenciája, nem tudom miért.

ISIS-el szimulálva mindkét lábon van jel, de a frekvencia itt sem jó, teljesen más mint a próbapanelon.

alap.hex
    
(#) vicsys válasza sirály12 hozzászólására (») Júl 2, 2013 /
 
Át kellene számolnod a timer-t mert stabilan ezt adja:

alap.jpg
    
(#) bocios válasza icserny hozzászólására (») Júl 3, 2013 /
 
Szia!

Köszönöm, tehát a 10F átalakítással, a 12F pedig átalakítás nélkül is programozható pickit2-vel. Úgy láttam még szintén nagyon kis méretű a PIC12LF1552 . De, ha jól értem ez megint eléggé más, ez is átalakítást igényel.

Köszönöm
(#) icserny válasza bocios hozzászólására (») Júl 3, 2013 /
 
Adatlapja szerint kompatibilis a kártyáddal, de új típus lévén, esetleg a PICkit2 nem ismeri.
(#) bocios válasza icserny hozzászólására (») Júl 3, 2013 /
 
Értem.
Kicsit összezavartak ezek a tokozások.
Kisméretű kontrollert keresek.
Több adatlapon említik a SOT-23 tokozást, de eddig én méretezést nem fedeztem fel mellette. Ellenben van a "2x3 DFN" aminél kis is van írva, hogy igen ez 2mm x 3mm -t jelent.
Bár nem ez a legfontosabb szempont, de ezek közül melyik megy bele a pickit2 -höz kapott board-ba?
Elvileg a PIC10F20x család a legkisebb, mondjuk ott is 2x3 DFN -t írnak, ahogy egy PIC12F -nél is, viszont utóbbi valamivel okosabb..
Most, akkor ki-kivel van? Melyik kisebb fizikailag? Illetve melyik a legkisebb amelyik még átalakítás nélkül belemehet egy pickit2 board-ba? (De ha nem is a board-ba legalább programozni tudjam, átalakítás után)
Bocs a sok kérdésért
(#) bocios válasza bocios hozzászólására (») Júl 3, 2013 /
 
Közbe azért sikerült még informálodnom.. (Látom a Microchip -nél az "RoHS Information" -t legördítve ott vannak az elérhető tokozások és azok méretei, minden chip-hez)
Most már talán csak az a kérdés marad, hogy:
- Legkisebb PIC12F ami még belemegy a pickit2 board-ba, tehát elérhető ilyen tokozás
- Legkisebb PIC12F amihez át kell alakítanom a board-ot, de programozható marad pickit2-vel
(#) Hilo válasza bocios hozzászólására (») Júl 3, 2013 /
 
PIC12Fxxx-et programozok PicKit2-vel, board nélkül.
Próba panelbe PIC bele, bedrotozom közvetlen a PicKit2-vel, és tökéletesen működik.
(#) icserny válasza bocios hozzászólására (») Júl 3, 2013 /
 
A DIP foglalattal szerelt kártyád nyilvánvalóan csak a DIP tokozású mikrovezérlőkkel lesz kompatibilis. A midrange típusok közül a 8-, 14-, és a 20 lábúak többsége a kártyával kompatibilis lábkiosztással rendelkezik. A többinél ügyeskedni kell.

- A felületszerelt tokozásúakkal ez a panel nem tud mit kezdeni.
- Az újabb típusokat a PICkit2 nem fogja tudni programozni.
(#) bocios válasza icserny hozzászólására (») Júl 3, 2013 /
 
Értem, köszönöm.
(#) bocios válasza Hilo hozzászólására (») Júl 3, 2013 /
 
Próbapaneles megoldás nekem is teljesen megfelelne.
Most már csak azt kéne látnom, hogy a PIC12F szériából, melyik a legkisebb, ami még programozható PICkit2 -vel (elég, ha próbapanellel)
(#) bocios válasza bocios hozzászólására (») Júl 3, 2013 /
 
És erre szerintem az a válasz, hogy: PIC12F508
Itt azt mondják van belőle 2x3x0.9mm -es tokozás: http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en020094
(az meg egy külön kérdés, hogy van-e belőle olyan tokozás, amit könnyű próbapanelben tesztelni)

A pickit2 device support list szerint pedig programozható.
(#) Hp41C válasza bocios hozzászólására (») Júl 3, 2013 /
 
Sziasztok!
Frissíteni kell a pickit2 eszközleírását a Microchip oldaláról a Pk2Devicefile2.62.14.dat -tal, és csodák csodája a 10F32x és sok 12F is programozhatóvá válik. Többek között a 12F1840 is.
Midrange / 1.8V Min
(#) Hilo hozzászólása Júl 3, 2013 /
 
Sziasztok, 12f683 adatlapjából néztem de nem tudtam megfejteni. 4 Mhz belső oszcillátort állítottam be. Timer0-nak nincs előosztó beállítva. Jól értem hogy alap esetben ilyenkor 1 mikrómásodpercenként lép egyet a számláló?
Valahol mintha olyat olvastam volna hogy a áramkör frekvenciájának negyede a számláló áramkör léptető jele.
Előre is köszönöm!
(#) icserny válasza Hilo hozzászólására (») Júl 3, 2013 /
 
Igen. Négy órajel-periódus egy utasításciklus.
Következő: »»   429 / 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