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   612 / 1210
(#) edison14 válasza zenetom hozzászólására (») Dec 30, 2014 /
 
Szia!

Holnap átnézem a teljes vezérlést mert egy korábbi programomban sokkal kisebb időzítéseket használtam mint amit a mostaniban és azzal ment rendesen a kijelző. Nem tudom most hogyan tudtam ennyire elrontani A tápfesz ráadás után is várok 50ms-ot tehát szerintem már nagyon a maximumra nyomtam fel mindent. Szinte látom hogy írja ki a betűket. Holnap nekiülök tiszta fejjel.
(#) erdiboni hozzászólása Dec 31, 2014 /
 
Sziasztok!
Valaki letudná nekem fordítani hex re ezt a programot? Már 2 órája szenvedek vele . A progi biztos hogy jó mert whalaky írta a Topi-féle dcf órához! PIC16F873A hoz kellene!

main.c
    
(#) erdiboni hozzászólása Dec 31, 2014 /
 
Bocs! Itt a teljes projekt!
(#) zsolti26 hozzászólása Jan 1, 2015 1 / 1
 
Sziasztok!!!

Végre elkészült az Pic kit 2 klon!!!Köszönöm segitséget sikerült megoldanom!!

Üdv.Zsolt

BÚÉK-mindenkinek!!!

DSC_0039.JPG
    
(#) Hp41C válasza erdiboni hozzászólására (») Jan 1, 2015 /
 
Ime...
(#) vicsys hozzászólása Jan 1, 2015 / 7
 
Sziasztok! Új év, új dolgok... A múlt évben, többen megkerestek olyan kérdéssel/kéréssel, hogy hogyan kell nekiállni PIC programot írni? Az jelentette a legnagyobb gondot, hogy hogyan lehet elkészíteni a .hex fájlt és hogyan kerül bele a PIC-be? Ezen felbuzdulva, készítettem egy nyúlfarknyi kis tutorialt, hogy ne kelljen állandóan elmagyaráznom.
Ha valaki most szeretne elkezdeni mikrokontrollereket programozni, jó kiindulási alap lehet, hogy mit hova és hogyan kell... Fogadjátok szeretettel! (Ha van rá igyény, szivesen készítek a témába vágó videókat)
Bővebben: Link
(#) Hp41C válasza vicsys hozzászólására (») Jan 1, 2015 /
 
Egy ellenállás hiányzik a Vdd és a MCLR közül. Gondok lehetnek, ha nem a PICkit -ről tápláljuk.
(#) erdiboni válasza Hp41C hozzászólására (») Jan 1, 2015 /
 
Nagyon szépen köszönöm! Boldog új évet!
(#) vicsys válasza Hp41C hozzászólására (») Jan 1, 2015 /
 
Azért mert bemenet?
(#) Hp41C válasza vicsys hozzászólására (») Jan 1, 2015 /
 
Itt a fórumon írtátok, hogy zavarok miatt összeszedheti a programozási módba belépéshez szükséges feszültséget. Kezdőknek szántad, bombabiztosnak kellene lennie.
A hozzászólás módosítva: Jan 1, 2015
(#) vicsys válasza Hp41C hozzászólására (») Jan 1, 2015 /
 
Jogos, bár hozzáteszem, nekem ilyen gondom még soha nem volt. De, az ördög nem alszik...
(#) mark.budai válasza vicsys hozzászólására (») Jan 1, 2015 /
 
Nekem nagyon tetszik, szépen, érthetően elmagyaráztad ezt a kis rövid programot.
Csak azt sajnálom, hogy a C kurzust nem folytattad az oldaladon, én onnan lestem el az alapokat, és ott értettem meg, hogy működik a C nyelv, és hogy ezt kell tanulnom, szerintem sokkal egyértelműbb, mint az Assembly.
De kíváncsi lennék a folytatására, mert az nagymértékben megkönnyítené a fejlődést. Persze gondolom más is van, arra nincs idő, már annak is örülök, hogy az a pár fejezet létrejött.
(#) vicsys válasza mark.budai hozzászólására (») Jan 2, 2015 /
 
Nagyon köszönöm a visszajelzést. A C kurzust még nem temettem el. Tovább tart gépelni, mint felmondani a videót. (Talán láttad, hogy mással is foglalkozom intenzíven)
Lesz folytatás, de csak ilyen apróságok. Annak idején nem volt aki részletesen elmagyarázza nekem a leg alapabb dolgokat és magamtól kellett rájönnöm, hogy miért kell a pontosvessző vagy a kapcsos zárójel. Vagy miért van a #FUSE és mi az a #define vagy egy változó mit csinál és milyen lehet a típusa...? Aki tanult programozást, az most mosolyog. Aki meg nem, az azt sem tudja miről beszélek. Nos, erre szántam a tutorialt. Megadni a kezdő lökést annak, akit elvarázsolt a mikrokontrollerek világa és vágyódva nézte/építette után a neten fellelhető cuccokat- mondván: Milyen jó lenne, ha én is tudnék ilyen programot írni!
(#) Hp41C válasza vicsys hozzászólására (») Jan 2, 2015 / 3
 
B. W. Kernighan - D. M. Ritchie: A C programozási nyelv 1978
Magyar kiadások: Műszaki Könyvkiadó
ISBN: 963 10 6100 0 - 1. kiadás 1985
ISBN: 963 10 7916 3 - 2. kiadás 1988
(#) vicsys válasza Hp41C hozzászólására (») Jan 2, 2015 /
 
Köszi! Nekem már megvolt
(#) Topika hozzászólása Jan 2, 2015 /
 
Szia Vicsys!
Nagyon jó a videó! Gratulálok! Csak biztatni tudlak a folytatásra!
Ha valaki C nyelven szeretne programozni javaslom a Kónya László és Kopják József által írt könyvet.
Ott is sok hasznos dolgot lehet olvasni.
(#) don_peter válasza vicsys hozzászólására (») Jan 2, 2015 /
 
Nyomassad ezerrel a videókat..
Mindig jól jön egy kis tanulás és jó más szemszögből is megközelíteni a témákat..
Én is támogatom az ötöltet.
(#) vicsys válasza don_peter hozzászólására (») Jan 2, 2015 /
 
Köszönöm a visszajelzést, igyekszem!
(#) don_peter hozzászólása Jan 2, 2015 /
 
Srácok, elmagyarázná ezt a definíciót vagy makrót valaki, hogy kell értelmezni és hogy tudom az adatokat kinyerni belőle?
  1. #define SETUP_MESSAGES_CONTENT {\
  2.     {0x00,\
  3.         {\
  4.             0x07,0x06,0x00,0x00,0x02,0x02,0x42,0x07,\
  5.         },\
  6.     },\
  7. {0x00,\
  8.         {\
  9.             0x06,0x06,0xf0,0x00,0x02,0x49,0x6c,\
  10.         },\
  11.     },\
  12. }

Nem láttam még ilyet és nem is tudom pontosan miképpen lehet felhasználni..
Előre is köszi...
A hozzászólás módosítva: Jan 2, 2015
(#) zenetom válasza don_peter hozzászólására (») Jan 2, 2015 /
 
Milyen környezetben van ez (nyelv) ?
(#) don_peter válasza zenetom hozzászólására (») Jan 2, 2015 /
 
Bocsánat az lemaradt. C nyelven van..
(#) zenetom válasza don_peter hozzászólására (») Jan 2, 2015 /
 
C18?
Egyébként ez érdekes, én sem láttam még ilyet.
Mint ha egy többdimenziós tömb lenne.
(#) benjami válasza don_peter hozzászólására (») Jan 2, 2015 / 1
 
alaphelyzetben a #define makró csak egy sort helyettesít be. Ha mégis több sorra lenne szükség, a sor végére fordított perjeleket ( \ ) kell berakni. Ha gondolatban beilleszted a hivatkozás helyére és leszeded a sorvégi perjeleket akkor megkapod mit fog a fordító megkapni. A tartalma mondjuk érdekes, mintha tömb vagy struktúra elemei lennének. Látni kellene a hivatkozás helyét is hozzá.
A hozzászólás módosítva: Jan 2, 2015
(#) don_peter válasza zenetom hozzászólására (») Jan 2, 2015 /
 
Csak simán C, de most pl. C18-ban programozok és az is beszippantja, de előhívni az adatot nem tudom. Még.
Igazság szerint én is többdimenziós tömbre gondolok, de még nem volt ilyenhez szerencsém..
Nem tudom mit kezdjek vele mert leírást sem találok, vagy nem jól keresek..

benjami: igen köszi, de mit jelent a sorok elején az a külön 0x00 és miképpen hívhatóak elő az egyes elemek?
Vagy itt a makrót át kell adni egy változónak amit már majd tömbként lehet használni?
Utóbbit teszteltem és nem
A hozzászólás módosítva: Jan 2, 2015
(#) zlanczky hozzászólása Jan 2, 2015 /
 
Sziasztok, segítséget kérek egy elvileg egyszerű dologban. Példaprogramot írnék PIC16F887, 4 MHz, RB0 nyomógomb, RC7 és RD7 ledek. RB0 VDD-re kötve a gombbal, 10K földre húzva.
Sajnos az interrupt rutin nem indul el. (Tudom, hogy nem illik az interruptban késleltetni, de ez volt a példában is, és csak próbálkozás)
Forrás: Bővebben:electrosome
ez a kódom:
  1. void interrupt(){
  2. //     if (INTCON.RBIF==1) {    // RB interrupt jött
  3.         PORTD.F7 = ~PORTd.F7 ;
  4.        INTCON.INTF = 0;     // Clear the interrupt 0 flag
  5.        delay_ms(1000);
  6. //        INTCON.RBIF = 0;     // RB interrupt jelző törlés
  7. //     }
  8. }
  9. ////////////////////////////////////////////////////////////////
  10.  
  11. void main() {
  12.   TRISA  = 0;          // PORTA is digital, not analog
  13.   TRISB  = 0b1;       // PORTB R0 és R1 INPUT
  14.   TRISC  = 0;          // PORTC is Output
  15.   TRISD  = 0;          // PORTD is output
  16. //  WPUB     = 0;                            // WEAK PULL UP 1 enabled
  17.   INTCON.GIE = 1;      //Enable global interrupt function - FŐ engedély
  18.   INTCON.INTE = 1;                //Enable RB0/INT externalnterrupt
  19. //  INTCON.PEIE = 1;                //Enable all unmasked peripheral interrupt
  20. //  INTCON.RBIE = 1;                //ENable RB int
  21.   OPTION_REG.INTEDG = 1;    //Interrupt on rising edge
  22. //  IOCB = 0b11;         // enable rb0 rb1 interrupt
  23.  
  24. do {
  25.         PORTc.F7 = ~PORTc.F7 ;
  26.       delay_ms(1000);
  27.   } while (1);
  28. }



Próbálkoztam már PORTB change interrupt-tal is, de hiába.
Mit rontok el?
(#) csapeter válasza zlanczky hozzászólására (») Jan 2, 2015 /
 
Idézet:
„RB0 VDD-re kötve a gombbal, 10K földre húzva.”

Szia! Szerintem itt lesz a bibi. RB0-t 10K-val kösd a Vdd-re és a gomb húzza GND-re.
(#) benjami válasza zlanczky hozzászólására (») Jan 2, 2015 /
 
Nem ártana az analóg bemeneteket digitálisra kapcsolni.
Már javasoltam, hogy ezt is be kellene tenni felülre a sárga szövegek közé, mert hetente visszatérő probléma
(#) zlanczky válasza csapeter hozzászólására (») Jan 2, 2015 /
 
Sajnos nem segített a helyzeten. Olyan, mintha nem engedélyeződne az interrupt.
Az RB0-on látható a nyomogómb váltakozás, ha kimérem.
(#) zlanczky válasza benjami hozzászólására (») Jan 2, 2015 /
 
A TRISA= 0 nem elegendő?
Betettem egy ADCON0 = 0; sort is, de ez sem segített.
(#) benjami válasza zlanczky hozzászólására (») Jan 2, 2015 /
 
Nézted már a chip adatlapját? Ha igen, ha nem, javaslom az A/D megnézését.
Következő: »»   612 / 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