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   370 / 1210
(#) attis71 hozzászólása Feb 15, 2013 /
 
Sziasztok!

Készítettem egy hőmérséklet távadó kapcsolást. A kérdésem, hogy a PIC fennmaradó lábait amire nincs szükségem a kapcsolásban hagyhatom-e üresen vagy fel kell húzni egy ellenállással?
A másik kérdés, hogy a kapcsolás jó-e ha a digitális hőmérséklet szenzor értékét szeretném RS232 vonalon továbbítani?

Üdv:
attis71

tavado.pdf
    
(#) Johnny0004 válasza kissi hozzászólására (») Feb 15, 2013 /
 
Akkor ha nem feltétlen szükséges, akkor jobb is megszakítás nélkül figyelni az encoder lábait?
(#) kissi válasza Johnny0004 hozzászólására (») Feb 15, 2013 /
 
Mind a kettő jó, ha megfelelően csinálod ( és mind a kettőnek lehet hibája, ha rosszul ! )!
Steve
(#) Johnny0004 válasza kissi hozzászólására (») Feb 15, 2013 /
 
Értem, arra nem jöttem még rá, hogy ha ugye az encodert megszakítással figyelem, és amikor tekerem azt rögtön ki szeretném iratni az lcd-re azt hogy lehet megoldani, mert ugye lcd out-ot nem enged a megszakításba?
A hozzászólás módosítva: Feb 15, 2013
(#) vicsys válasza Johnny0004 hozzászólására (») Feb 15, 2013 /
 
A megszakításban egy flag-et billentesz át. A főprogramban figyeled a flag-et. Ha bebillent, kiíratod és utána visszabillented.
(#) Johnny0004 válasza vicsys hozzászólására (») Feb 15, 2013 /
 
Értem, így van, viszont nekem az a gondom ha például beteszek egy nagy késleltetést a főprogramba,akkor a megszakításnak ugye meg kéne rögtön szakítania, és akkor viszont nem írja ki egyből az lcd-re a változást csak ha lement a késleltetés.
(#) vicsys válasza Johnny0004 hozzászólására (») Feb 15, 2013 /
 
Akkor ne tegyél késleltetést. Használj más módszert. Például ott is lehet flag-et használni és egy feltételt adni neki...
(#) Johnny0004 válasza vicsys hozzászólására (») Feb 15, 2013 /
 
Rendben, és elvileg akkor, ha mégis késleltetés van, azt akkor nem lehet megkerülni a megszakítás utáni LCD kiíratással sehogy?
A hozzászólás módosítva: Feb 15, 2013
(#) vicsys válasza Johnny0004 hozzászólására (») Feb 15, 2013 /
 
Pedig a késleltetéssel van gondod. Esetleg használj rövidke késleltetést és ciklikusan ismételd meg kívánt számban. A ciklusban lehet figyelést tenni.
(#) Johnny0004 válasza vicsys hozzászólására (») Feb 15, 2013 /
 
Köszi, próbálkozom. ....(5 perccel később) .....Működik!!! Köszi mindenkinek!
A hozzászólás módosítva: Feb 15, 2013
(#) benjami válasza Johnny0004 hozzászólására (») Feb 15, 2013 /
 
A pollingos és a bemenet megszakításos mód mellett van még harmadik módszer is az encoder-re ha nem 10000/perc fordulatú eszközhöz használod. Én timer megszakításból kérdeztem le az optikai encodert (mint a görgős egér). Másodpercenként 10000 megszakítással sosem hibázott (valószínűleg kevesebbel is jól ment volna, de ez is belefért). Optocsatolósnál érdemes smith-triggeres bemenetet használni.
Nyomógombokat is mindig időzítő megszakításból szoktam használni kb 30 lekérdezés/másodper sebességgel és ott sem szokott sosem pergés problémám lenni.
(#) Johnny0004 válasza vicsys hozzászólására (») Feb 16, 2013 /
 
Viszont így a "pollingos" program is működik ugyanúgy, akkor mire jó megszakítást használni?
(#) kissi válasza Johnny0004 hozzászólására (») Feb 16, 2013 /
 
Ha nem érsz vissza időben a lekérdezéshez ( sok más dolga is lehet a processzornak! ), akkor a polling nem érzékeli a változást, míg megszakításban ettől függetlenül is tudja érzékelni, és ha lesz időd majd feldolgozod !
Steve
(#) potyo válasza Johnny0004 hozzászólására (») Feb 16, 2013 /
 
Olyan dolgokra, amikre a lehető leggyorsabban kell reagálni. Az ember által nyomkodott, csavargatott, állítgatott dolgok nem ilyenek.
(#) vicsys válasza Johnny0004 hozzászólására (») Feb 16, 2013 /
 
Arra, hogy ne kelljen állandóan vizsgálni a változást. Ha van, odaugrik. Ha nincs, nem kell csinálni semmit.
(#) Johnny0004 hozzászólása Feb 16, 2013 /
 
Értem, köszönöm!
(#) taper hozzászólása Feb 16, 2013 /
 
Sziasztok!

Olyan gondom van hogy szeretnék építen az airsoft os játékainkhoz egy ketyerét ami valamiféle hangot ad ki!
Ha jól tudom akkor ezt egy pic el meg lehet oldani. A tervem a következő, építenék egy dobozt amibe beletennék valamit ezt kellene megnehezíteni pl egy láthaó lézer sugárral amit ha megszakít akkor az robbanó hangot ad ki, netán még villan is pl egy vaku. Na valójában ezt szeretném megoldani úgy globál. Tudna valaki segíteni? Netán megépíteni a hozzá való elektronikát?
Előre is köszi!!!
(#) qbit válasza pjg hozzászólására (») Feb 16, 2013 /
 
Köszönöm! Küzdök vele. Majd csak sikeredik...
(#) qbit válasza pjg hozzászólására (») Feb 16, 2013 /
 
Nekem nincs is boot gomb. Az Neked hova csatlakozik?
(#) pjg válasza qbit hozzászólására (») Feb 16, 2013 /
 
RB5-re
(#) qbit válasza pjg hozzászólására (») Feb 17, 2013 /
 
Akkor ez a gond! Ha nincs boot gombom, sehogy sem tudom rávenni a load-ra... Igaz? Köszi.
(#) benjami válasza qbit hozzászólására (») Feb 17, 2013 /
 
Így van, valahogy közölni kell a PIC-nek hogy a bootloader vagy az általa feltöltött alkalmazói program induljon el. Ha nem jó az RB5 láb erre, a Microchip Solutions/USB/Device - Bootloaders/HID/Firmware - PIC18 Non-J/io_cfg.h fájlban az sw2 definíciójánál tudod átírni. Ezután újra fordítod a programot (ehhez sajnos teljes értékű, vagy 60 napnál fiatalabb telepítésű fordító kell hogy beférjen a helyére), a kapott HEX-et feltöltve már az általad kiválasztott láb lesz a bootloader kiválasztó.
(#) Topika hozzászólása Feb 17, 2013 /
 
Sziasztok!
Van valakinek ötlete az alábbi problémához?
Ha beállítom az RB megszakítást és a jel megváltozik a porton, a kimeneten kapok egy 2ms órajelet? (PIC18F4550) Segítségeteket előre is köszönöm!
(#) Moderátor hozzászólása Topika hozzászólására (») Feb 17, 2013
 
Szabályzatból:
VIII. Ha nem kapunk választ? Ha a kérdésünkre nem kapunk választ, akkor ne türelmetlenkedjünk. Előszört nézzünk magunkba, lehet hogy a kérdésünk értelmetlen. Előfordulhat, hogy a kérdésünk túl nehéz, és az sem ritka hogy a feltett kérdésre már egymilliószor született válasz, így ezért nem kapunk egy egymillió-egyediket.

XVIII. Csak egy helyen kérdezz! A fórumon egy kérdést egyszerre csak egy helyre tegyünk fel. Amennyiben több helyre is beírjuk ugyan azt a hozzászólást, a moderátorok kérdés nélkül törölhetik hozzászólásainkat és ki is tilthatnak türelmetlenség és tiszteletlenség miatt.
(#) benjami válasza Topika hozzászólására (») Feb 17, 2013 /
 
Valószínűleg azért nem kapsz választ, mert nem csak én, hanem más sem tudja értelmezni a kérdésed. Kód? Milyen kimeneten? 2ms impulzus vagy folyamatos órajel?
(#) icserny válasza qbit hozzászólására (») Feb 17, 2013 /
 
Én ezt alkalmilag egy dróttal szoktam megoldani. leföldeled az adott lábat, megnyomod a RESET gombot, majd elengeded, s utána megszünteted az RB5 láb leföldelését.
(#) Topika válasza benjami hozzászólására (») Feb 17, 2013 /
 
Lehet hogy rosszul tettem fel a kérdést. Bocsika!
A lényeg az hogy a PIC18F4550 RB megszakítását állítottam be. Ha megszakítás keletkezik a LATD0 kimenet ellenkező értékre változik. Amikor megnyomtam a RB5-ös
bemeneten lévő gombot a a LATD0 kimeneten 2 ms négyszögjel keletkezett. Ez addig így volt
míg lenyomva tartottam a gombot.
(#) icserny válasza Topika hozzászólására (») Feb 17, 2013 /
 
Pontos kapcsolás, programlista nélkül ez még mindig értelmezhetetlen.
(#) Topika válasza icserny hozzászólására (») Feb 17, 2013 /
 
A programlista:

itRB.c
    
(#) benjami válasza Topika hozzászólására (») Feb 17, 2013 /
 
1. Megszakításba nem teszünk várakozást.
2. Most már csak azt kellene érthető módon leírnod mit is szeretnél, mert az még mindig nem világos.
Következő: »»   370 / 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