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   339 / 1210
(#) yankoo hozzászólása Dec 10, 2012 /
 
Sziasztok!
Csináltam egy akvárium vezérlést a program és a PIC 16f877a meg van fel is van programozva a program tesztelve is lett LED-el viszont LED szalaghoz szeretném használni a PWM részét. Egy kisebb LED szalaggal és egy BC547B-vel ki is próbáltam próbáltam tökéletesen működik, de a "nagy" LED szalaghoz (~2A) FET-el probáltam Topi cikke (LINK) alapján, de a FET meg se mukkan . Milyen kapcsolást javasoltok? Vagy maradjak a tranyónál és egy nagyobb NPN TO220-as tokozásúval próbálkozzak? (A FET-et kipróbáltam egy másik kimeneten ami nem PWM ott sem működött)
(#) vicsys válasza yankoo hozzászólására (») Dec 10, 2012 /
 
Milyen FETet raktál rá? Ha nem Logic Level -es a gateje nem fog 5V-nál kinyitni...
Nekem a PIC-es kapcsolásokhoz ez szokott menni: Bővebben: Link
A hozzászólás módosítva: Dec 10, 2012
(#) yankoo válasza vicsys hozzászólására (») Dec 10, 2012 /
 
IRFZ34N és IRF3205-el próbáltam!
(#) Hp41C válasza yankoo hozzászólására (») Dec 10, 2012 /
 
IRFZ34N 4.5 Ugs melett min.4A -t, az IRF3205 min. 7A drain áramot tudna vinni. Inkább az a kérdés, hogy mekkora a PIC kimenete és a Gate közötti ellenállás és a PWM frekvencia, ugyani a Gate nF nagyságrendű kapacsitással rendelkezik...
IRFZ34N -et használok, 200 ohm gate ellenállásal, 16F886 PWM kimenetéről 20 .. 50 kHz -en.
(#) yankoo válasza Hp41C hozzászólására (») Dec 10, 2012 /
 
100Ω-al próbáltam 10Khz-es PWMel.
(#) szaffo555 hozzászólása Dec 10, 2012 /
 
PORTA -n szeretnék digitális bemenetet kialakítani.
  1. clrf    LATA
  2. movlw   h'FF'
  3. movwf   ANCON0,F        ;minden AN0_AN7 port digitális I/O
  4. setf    TRISA           ;PORTA bemenet
  5. .
  6. .
  7. .
  8. .
  9. .
  10. movf    PORTA,W


Sajnos WREG ben nem kerül át a PORTA állapota.
A doksi említi, hogy CMxCON regisztert is be kell állítani a korrekt beállításhoz, de nem értem hogyan. Az egy komparátor modulhoz tartozó regiszter így elegendő csak kikapcsolni azt? Egyébként reset után ki van kapcsolva, tehát elvileg nem zavar. A doksi példakódja így néz ki, hát elég nagy zagyvaság , de a azért bemásolom:
  1. CLRF PORTA ; Initialize PORTA by
  2. ; clearing output
  3. ; data latches
  4. CLRF LATA ; Alternate method
  5. ; to clear output
  6. ; data latches
  7. MOVLW 07h ; Configure A/D
  8. MOVWF ADCON1 ; for digital inputs
  9. MOVWF 07h ; Configure comparators
  10. MOVWF CMCON ; for digital input
  11. MOVLW 0CFh ; Value used to
  12. ; initialize data
  13. ; direction
  14. MOVWF TRISA ; Set RA<3:0> as inputs
  15. ; RA<5:4> as outputs


Ja és ez nem Read/Modify/write probléma, mert egy fix beálláítású kapcsolósor állapotát szeretném kiolvasni.
A hozzászólás módosítva: Dec 10, 2012
(#) potyo válasza szaffo555 hozzászólására (») Dec 10, 2012 /
 
Melyik PIC ez?
(#) szaffo555 válasza potyo hozzászólására (») Dec 10, 2012 /
 
18F26J11
Na azért én is elszúrtam, a saját kódomban a 3. sor helyesen:
  1. movwf   ANCON0  ;minden AN0_AN7 port digitális I/O

A fentivel hibásan fordulna le.
(#) potyo válasza szaffo555 hozzászólására (») Dec 10, 2012 /
 
Nemtudom, te melyik doksit nézed, de ebben ez szerepel:

  1. CLRF   LATA     ; Initialize LATA to clear output data latches
  2. MOVLB  0x0F     ; ANCONx register not in Access Bank
  3. MOVLW  0x0F     ; Configure A/D
  4. MOVWF  ANCON0   ; for digital inputs
  5. MOVLW  0xCF     ; Value used to initialize data direction
  6. MOVWF  TRISA    ; Set RA<3:0> as inputs RA<5:4> as outputs


Szóval szerintem a MOVLB-s sor hiányzik a tiédből. Ez azért kell, mert az ANCON0 nem az SFR zónában van, ezért csak banked módban érhető el
A hozzászólás módosítva: Dec 10, 2012
(#) szaffo555 válasza potyo hozzászólására (») Dec 10, 2012 /
 
Feltölteném, mert már nemtudom hol találtam, viszont nem engedi, mert nagyobb mint 2 MB. Megkeresem remélem tudok adni webcímet.


(#) szaffo555 válasza potyo hozzászólására (») Dec 10, 2012 /
 
na megvan:
129. oldal. EXAMPLE 9-2: INITIALIZING PORTA.

Na ez lesz az.

igaz ez már a DS39932D, míg én a DS39932C alapján dolgoztam, de a fentiek ebben nem változtak.
A hozzászólás módosítva: Dec 10, 2012
(#) potyo válasza szaffo555 hozzászólására (») Dec 10, 2012 /
 
Én be szoktam írni a google-be a pic teljes típusát (pl. pic18f26j11) és az első találat vagy maga az adatlapja, vagy pedig a microchip arra a típusra vonatkozó oldala, amin ott van az adatlapra a link, az meg az utolsó verziós adatlap mindig. A te linkeden levő az egyel régebbi verziójú.
(#) szaffo555 válasza potyo hozzászólására (») Dec 10, 2012 /
 
Idézet:
„igaz ez már a DS39932D, míg én a DS39932C alapján dolgoztam, de a fentiek ebben nem változtak”


De igen. Csak rosszul néztem.
(#) szaffo555 válasza potyo hozzászólására (») Dec 10, 2012 /
 
Egyébként köszi, tényleg banked dolog volt.
(#) paltamas92 hozzászólása Dec 11, 2012 /
 
Sziasztok!!!
feladatot kaptam az iskolába amit nagyon nem tudok megoldani
A feladatom az lenne , hogy van egy vasmagom illetve egy elektromágnesem. a kettő közötti távolságot kell pickit 2 vel szabályoznom . ehhez kellene nekem valami okosság, esetleg valakitől valami megoldást ha tudnátok.
válaszokat előre is köszönöm
(#) icserny válasza paltamas92 hozzászólására (») Dec 11, 2012 / 2
 
PICkit2-vel??? Ha ez vicc, akkor lapjára, széltében, vagy hosszában teheted közéjük...

pickit2.jpg
    
(#) Hp41C válasza paltamas92 hozzászólására (») Dec 11, 2012 / 1
 
Ha úgy nézed, akkor van 3 általános célú digitális be- / kimeneted, amin lehet még feszültséget is mérni (RA2..RA4 - re megy a PGD, PGC és az AUX), a Vdd feszültség beállítható 2.5V .. 5V között, a kimenő feszöltség visszamérhető.
Az elekromágnes árama vezérelhető pl. a Vdd feszültséggel vagy akár PWM módban is valamelyik kimenettel. Az inkább a kérdés, hogyan méred a pozíciót?
A firmware lehetőségeit kell használnod vagy saját programot letölteni bele?
(#) vicsys válasza Hp41C hozzászólására (») Dec 11, 2012 /
 
Na jól van már! Ez már tényleg mindennek a teteje!
(#) icserny válasza Hp41C hozzászólására (») Dec 11, 2012 /
 
Nem lehetséges, hogy valamelyik PICkit2 starter kit-re gondolt a kérdező?
(#) trudnai válasza icserny hozzászólására (») Dec 11, 2012 /
 
Idézet:
„Nem lehetséges, hogy valamelyik PICkit2 starter kit-re gondolt a kérdező?”


Egeszen biztosan, de nem tudom miert talalgatunk, majd megmondja az illeto mirol is van szo pontosan...
(#) glaci hozzászólása Dec 12, 2012 /
 
Segítséget szeretnék kérni!
2 db ds18b20 hőmérőt szeretnék1 vezetéken használni, a következő kóddal szeretném az azonosító adatokat a pic eeprom-jában tárolni, hogy ne kelljen minden pic induláskor a hőmérőket azonosítani. A baj az, hogy az eeprom-ba az azonosítók helyett csupa '00' van. segítsetek megjavítani a programot. Mikropaskalban van a kód, de a magyarázat lehet más nyelven is.
  1. //--------------------szenzorok élesztése----------
  2.         For i:=1 to 2 do                         //2 szenzor miatt 2 ciklus
  3.                                                  //(Inicializáló rutin)
  4.         begin
  5.              ByteToStr(i, lcd);                  //Az LCD függvény csak stringet
  6.                                                  //tud kiírni
  7.              Lcd_Out(1,1, 'Kerem a szenzort:');
  8.              Lcd_Out(2,7, lcd);
  9.  
  10.              For j:=6 to 7 do
  11.              begin
  12.                   repeat                         //Figyeljük a PORTB
  13.                   until TestBit(PORTB, j) = 0;   //Nála van a nyomógomb
  14.                   repeat
  15.                   until TestBit(PORTB, j) = 1;   //Azért van 2*, mert a Delay
  16.              end;                                //parancs nagyon eszi a
  17.                                                  //wordöket, így viszont delay
  18.                                                  //nélkül is pergésmentes...
  19.  
  20.              Ow_Reset(PORTC, 0);                 //A szenzorok azonosításához
  21.              Ow_Write(PORTC, 0, $33);            //szükséges egyenként kiolvasni
  22.                                                  //az egyedi azonosítót...
  23.  
  24.              For j := 1 to 8 do                  //Az azonosítók beolvasása
  25.              begin
  26.                   sensor[8 * i - 8 + j]:=Ow_Read(PORTC, 0);
  27.                   eeprom_write((8 * i - 8 + j),sensor[8 * i - 8 + j]);
  28.              end;
  29.         end;
  30.  //-----------------szenzorok élesztése eddig
(#) DJozso hozzászólása Dec 12, 2012 /
 
Csak egy gyors kérdésem lenne. PIC-et szeretnék programozni. Kérdésem, hogy ez Windows 7 op. redszer alul lehetgéges-e, vagy csak Xp, vagy előbbi op. redszerekből lehet. Létezik-e (vagy a windows alapból kezeli) LPT porthoz driver (ilyen égetőm van) Win 7 alá?
(#) kissi válasza DJozso hozzászólására (») Dec 12, 2012 / 1
 
Szia!

W7 alatt használom az MPLAB-ot, az működik. Az LPT-s kérdésedre nem tudok válaszolni, szerintem szerezz be egy PK2-t, hosszabb távon úgy is jól jön ( és akkor a kezdeti bizonytalanságokat is kiküszöbölted a debuggolási lehetőség mellett, ami az esetleges LPT port és a hozzátartozó program miatt van!).

Steve
(#) zamatőr válasza DJozso hozzászólására (») Dec 12, 2012 / 1
 
Üdv!
Van PK2-m kölcsön adhatom -írtam privátba.
(#) DJozso válasza kissi hozzászólására (») Dec 12, 2012 /
 
Köszi az infót! Én is PK2-n gondolkodtam, de most így karácsony előtt nincs rá kedvem . Tehát elvileg van esély rá, hogy megy. Próba cseresznye.
zamatőr-> Írtam privátot
A hozzászólás módosítva: Dec 12, 2012
(#) luluzulu hozzászólása Dec 13, 2012 /
 
Sziasztok!

Tudtok valami digitális könyvet a PIC Basic tanulásához?

Előre is köszönöm.
(#) mineral hozzászólása Dec 14, 2012 /
 
Sziasztok!

Lehet, hogy nagyon amatőr kérdés de a mikrovezérlők világának az ajtaját még csak most kezdem nyitogatni. Az lenne a kérdésem , hogy mi a kölünbség a két PIC között?


18F2685.JPG
    
(#) Kovabe válasza mineral hozzászólására (») Dec 14, 2012 /
 
Szia másoltam egy forumtárstol de enyi igy hirtelen:
Temperature
Range:
I = -40oC to +85oC (Industrial)
E = -40oC to +125oC (Extended)
SO = SOIC
(#) icserny válasza luluzulu hozzászólására (») Dec 14, 2012 /
 
Ezerféle PIC és PIC BASIC van, némelyik önmagával sem kompatibilis. A legtöbbnek elérhető a a dokumentációja elektronikusan, s némelyiknek példagyűjteménye is van.

a Mikroelektronika honlapján elérhető könyv (Milan Verle: PIC Microcontrollers - Programming in Basic) valamivel olvasmányosabb (MikroBASIC fordítóról és PIC16F887 mikrovezérlőről szól).

A PROTON Amicus18 BASIC fejlesztői környezet viszont - más BASIC fordítóval ellentétben - ingyenes a PIC18F25K20 és PIC18F25K22 mikrovezérlőkhöz.

(#) bankimajki hozzászólása Dec 14, 2012 /
 
Sziasztok, van egy weboldal, amiben az MCU paramétereinek megadásával lehet megtalálni azokat a megfelelő kontrollereket. Valaki linkelje be nekem légyszíves, mert sehol nem találom. Pedig el volt mentve nekem valahol a link.

Üdv.: Miki
Következő: »»   339 / 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