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   198 / 1211
(#) bubuc17 hozzászólása Jan 19, 2012 /
 
Sziasztok
Elfelejtettem hogyan kell a belső rc oszcillátort használni.
Tud nekem valaki segíteni?
Vagy automatikusan azt használja ha nincs külső?
A belső frekvencia kiválasztására emlékszek de ez valahogy kiesett.
(#) AZA válasza bubuc17 hozzászólására (») Jan 19, 2012 /
 
Adatlapod nincs?
(#) bubuc17 válasza AZA hozzászólására (») Jan 19, 2012 /
 
16f690 vagy 16f84 érdekelne. Adatlapból is csak annyit találtam hogy hogyan választhatjuk ki a kívánt frekvenciát,de ami nekem kell arra nem találtam a választ.
(#) AZA válasza bubuc17 hozzászólására (») Jan 19, 2012 /
 
OSCCON regiszterben SCS-bit határozza meg az oszcillátort
(#) icserny válasza bubuc17 hozzászólására (») Jan 19, 2012 /
 
Adatlap Special Features of the CPU fejezet Configuration Bits szekcióját nézd meg! Elsősorban ez kell neked.

Az Oscillator Module fejezetet is nézd meg (OSCCON regiszter)!
(#) bubuc17 válasza AZA hozzászólására (») Jan 19, 2012 /
 
Köszönöm a segítséget.
Esetleg tudna még annyit segíteni hogy hogy tudom ezt megadni a programban 16f690 nél?
Valami mintára volna szükségem mert már régen foglalkoztam vele és mintaprogramot sem találtam hirtelen hozzá.
Alapértelmezett 4Mhz-n szeretném használni.
(#) AZA válasza bubuc17 hozzászólására (») Jan 19, 2012 /
 
Sajnos jómagam is tanuló fázisban vagyok,csak beugrott az ötlet.
(#) benjami válasza zsoltee0001 hozzászólására (») Jan 19, 2012 /
 
Annyit még hozzátennék az előttem már hozzászólókon kívül, hogy a fordító include könyvtárában a 'limits.h' header file szokta definiálni hogy melyik típusú változónak mennyi a minimális és a maximális értéke (ebből ugye rögtön kiderül hogy hány bites is az illető változó).
Ez így van a microchip C18, C30, C32 fordítójában, sőt még a visual studió C++ -ban is. A többi C/C++ fordítóról nem tudok nyilatkozni, de gyanítom hogy ott is így van.
(#) Pepebá hozzászólása Jan 19, 2012 /
 
Hali!
PIC18F4550 portszám bővítését akarom megoldani be és kimeneti oldalon shift regiszterekkel. Nem igazán ismerem a témát, most gyűjtögetem és olvasgatom az infókat. Kérdésem milyen konkrét típussokkal érdemes próbálkozni?
Üdv.
(#) icserny válasza Pepebá hozzászólására (») Jan 20, 2012 /
 
Nem muszáj shift regisztert használni, vannak speciálisan portbővítésre való IC-k is a Microchip kínálatában. Például MCP23S17 (SPI), MCP23017 (I2C) 16 bitesek, de vannak 8 bitesek is) . Ezek ki és bemenetként használhatók, s bemenetként változáskor vagy adott értéktől való eltéréskor megszakítást is tudnak generálni. A PICCOLO projektbe is van egy MCP23S17 (SPI) példa.

Shift regiszterként pedig kimenetnek 74HCT595 vagy 74HCT164 (ezek különböző tulajdonságúak!), bemenetnek pedig 74HCT165 IC-t szokás használni.
(#) Pepebá válasza icserny hozzászólására (») Jan 20, 2012 /
 
Hali
Olvastam a Piccolo projectben az SPI példát, de ha jól értelmezem a port SPI, I2C használatra vagylagos.Ezért gondoltam a shift regiszterekre (a I2C-t használom már hőszenzorokra)
A shift regiszter ajánlást köszönöm, tanulmányozom és próbálkozom a működés megismerésével. Bizonyára lesznek még kérdéseim a témával kapcsolatban.
Esetleg a meglévő I2C használat mellett van lehetőség további I2C eszköz kezelésre is? (pl. az ajánlott MCP23017 portbővítővel)
Üdv.
(#) trudnai válasza benjami hozzászólására (») Jan 20, 2012 /
 
Egy nagyon egyszeru teszt programot is ossze lehet utni (most csak gcc-re irtam meg de belathato, hogy ezt konnyeden lehet implementalni PIC-re is)

  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5.     int cnt;
  6.  
  7.     char       c = 1;
  8.     short      s = 1;
  9.     int        i = 1;
  10.     long       l = 1;
  11.     long long ll = 1;
  12.  
  13.     for ( cnt = 0;  c != 0; cnt++ ) {  c <<= 1; }  c = cnt;
  14.     for ( cnt = 0;  s != 0; cnt++ ) {  s <<= 1; }  s = cnt;
  15.     for ( cnt = 0;  i != 0; cnt++ ) {  i <<= 1; }  i = cnt;
  16.     for ( cnt = 0;  l != 0; cnt++ ) {  l <<= 1; }  l = cnt;
  17.     for ( cnt = 0; ll != 0; cnt++ ) { ll <<= 1; } ll = cnt;
  18.  
  19.  
  20.     printf ( "char      %2i bit\n",    c );
  21.     printf ( "short     %2i bit\n",    s );
  22.     printf ( "int       %2i bit\n",    i );
  23.     printf ( "long      %2li bit\n",   l );
  24.     printf ( "long long %2lli bit\n", ll );
  25.  
  26.     return 0;
  27. }


Pl MacOS alatt ezt irja ki nekem:

  1. $ ./testBits
  2. char       8 bit
  3. short     16 bit
  4. int       32 bit
  5. long      64 bit
  6. long long 64 bit
(#) icserny válasza Pepebá hozzászólására (») Jan 20, 2012 /
 
Idézet:
„Esetleg a meglévő I2C használat mellett van lehetőség további I2C eszköz kezelésre is? (pl. az ajánlott MCP23017 portbővítővel)?”

Természetesen. Az MCP23017-hez idő hiányában még csak egy PIC24 példát tettem közzé. De csak a meghajtás módjában különbözik az SPI-s tesójától.
(#) szabo.gth hozzászólása Jan 20, 2012 /
 
Sziasztok!
Életemben most először használok olyan PIC-et, ami nem 5V-ról működik. PIC16LF1903 a becsületes neve, 1.8-3.6 V között üzemel és az adatlapjában valami olyat olvastam, hogy programozásnál a VPP lábon 8-9 V kell megjelenjen. Most ez mi? Én néztem el, vagy tényleg nem a 12.5 V kell neki? Ezt nem értem, segítsetek, pls.
Köszi
(#) Hp41C válasza szabo.gth hozzászólására (») Jan 20, 2012 /
 
Szia!

Úgy hívják: Technológiai fejlődés.
A 16LF1903 Vdd feszültsége is csak maximum 3.6V lehet.

A 16F1903 -nak egy külső kondenzátor is kell.
Config word 2 5. és 4. bitje...

A programozásához nem használhatók a régi programozók, de kiegészítés nélkül a Szila féle klón is csak külső táp biztosításával. Egy ICD3, PICKit3, PICKIt2 vagy a Vdd feszültséget szabályzó klón a megoldás.
(#) szabo.gth válasza Hp41C hozzászólására (») Jan 20, 2012 /
 
A Vdd-t megszabályzom én, sőt a Vpp-t is, csak meglepődtem, mert azt hittem, a 12.5 V az mindnél így van
Köszönöm a választ
(#) Bártfai Ferenc válasza kissi hozzászólására (») Jan 20, 2012 /
 
Szia!
Köszönöm a segítségedet, de a hiba valamiért továbbra is fennáll!
Nem tudom mit cseszhettem el.. :S
(#) Hp41C válasza Bártfai Ferenc hozzászólására (») Jan 20, 2012 /
 
Csatold az Output ablak tartalmát vagy egy képet róla...
(#) Pepebá válasza icserny hozzászólására (») Jan 20, 2012 /
 
Hali!
Ez jó hír, szimpatikusabbnak tűnik mint a shift regiszteres megoldás. Azt viszont nem tudom még hogyan tudom megoldani a 18F4550 PIC-l. Ez a port bővítő csak smd kivitelben létezik?
Üdv.
(#) icserny válasza Pepebá hozzászólására (») Jan 20, 2012 /
 
Idézet:
„Ez a port bővítő csak smd kivitelben létezik? Üdv.”
Nem, van DIP kivitelben is (nézd meg az adatlapját!).
(#) icserny válasza Pepebá hozzászólására (») Jan 20, 2012 /
 
Idézet:
„Azt viszont nem tudom még hogyan tudom megoldani a 18F4550 PIC-l.”
Nem nagy durranás: configI2C1(400); helyett írd azt, hogy
  1. i2c_init(400);


write2I2C1(MCP23017ADDR,IODIRA_CIME,0); helyett pedig az kell, hogy
  1. i2c_write2(MCP23017ADDR,IODIRA_CIME,0);


A támogatói függvények használatához pedig a program eleje így nézzen ki:
  1. #include "piccolo_all.h"
  2. #include "piccolo_i2c.h"
(#) Pepebá válasza icserny hozzászólására (») Jan 20, 2012 /
 
Hali!
Köszönöm a válaszokat. Beszerzem a portbővítőt és próbálkozom.
Üdv.
(#) kissi válasza Bártfai Ferenc hozzászólására (») Jan 21, 2012 /
 
Szia!

Küld át a projektet és megpróbálom lefordítani ( ha lehet a hibaüzenettel együtt! ) !

Steve
(#) bubuc17 hozzászólása Jan 22, 2012 /
 
Sziasztok
Volna esetleg valakinek valami kis egyszerű programrészlete hangjelzéshez? Valami csengő szerű jelzést szeretnék
mikor a kijelzőmön változás van. Sajnos kezdőként + ritmus érzék nélkül nem nagyon jön össze több a sípolásoknál.
(#) Hp41C válasza bubuc17 hozzászólására (») Jan 22, 2012 /
 
(#) bubuc17 válasza Hp41C hozzászólására (») Jan 22, 2012 /
 
Nagyon köszönöm a linket, Elég hasznos programnak néz ki ahogy elolvastam. Azt nem értem pontosan hogy ezt hogy fordítom le a pic nyelvére? Mármint hogy tudom ezt a végtelen hosszú banális sort lejátszani a pic el?
Még sosem csináltam, még hasonlót sem.
(#) Hp41C válasza bubuc17 hozzászólására (») Jan 22, 2012 /
 
A dekódóló algoritmusnak csak meghatározott időnként egy vagy két kimenetett kell beállítani a megfelelő értékre... A hang természetesen véges hosszú, az ideje az átalakítandó hang hosszával összemérhető. Az adatokat a program vagy adat eepromban lehet tárolni, de külső SPI, I2C felületű eeprom is felhasználható.
(#) ferenc60 hozzászólása Jan 22, 2012 /
 
Sziasztok

Segítségre lenne szükségem. Van egy K8048 típusú programozóm. PIC 16F690 szeretnék vele programozni de ez nem szerepel a felsorolt támogatott listán.
(#) zsoltee0001 hozzászólása Jan 22, 2012 /
 
Sziasztok

Van egy visszatérő problémám amit nem tudok megoldani. Már volt szó a fórumon róla, de nem találtam kielégítő választ.
Ha egy PIC mclr lábát bemenetként akarom használni akkor az Mclr disable, ez ok.
Meg is írja a Pk2 először, de másodjára elakad.
Utána meg az OSCCAL-ba invalid értéket ír.
Tools-> osccal-> auto regenerate, de ez így borzasztó macera.
Nincs valami trükk amivel ezt ki lehetne küszöbölni?
12F675-ről van szó és nagyon kellene az a láb.
Üdv
(#) potyo válasza zsoltee0001 hozzászólására (») Jan 22, 2012 /
 
És nagyon lényeges az OSCCAL értéke?
Következő: »»   198 / 1211
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