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   661 / 1207
(#) Kari55 válasza Pali79 hozzászólására (») Ápr 15, 2015 /
 
2.igen úgy.
Igen gondoltam mert a táp lábakat kicsipogtattam.

Kapcsolást is tudnál hozzájavasolni?
Hát, köszönöm a türelmed(etek)et.
A hozzászólás módosítva: Ápr 15, 2015
(#) zenetom válasza Kari55 hozzászólására (») Ápr 15, 2015 /
 
Hupsz, elnéztem, bocsi.
(#) Kari55 válasza zenetom hozzászólására (») Ápr 15, 2015 /
 
Ok semmi baj.
(#) Pali79 válasza Kari55 hozzászólására (») Ápr 15, 2015 /
 
Van kvarcod kéznél? A programot nem teszteltem, kíváncsi vagyok működik-e?
(#) Kari55 válasza Pali79 hozzászólására (») Ápr 15, 2015 /
 
Van néhány (20-15) bontott, úgy rémlik 4 Mhz körüli is van köztük.
(#) DJozso válasza Pali79 hozzászólására (») Ápr 15, 2015 /
 
Kösz a helpet. Én úgy gondoltam, hogy WD csak sleepben megy (változó értéket nővel), majd ha változó eléri a kívánt értéket PIC felébred, WD megáll, végrehajt egy hőmérséklet mérést, elküldi RF-en, majd visszamegy sleepbe, WD újraindul (változó nullázva). Müködhet így?
(#) nedudgi válasza DJozso hozzászólására (») Ápr 15, 2015 /
 
Az adatlap szépen leírja a WatchDog működését. Egy független oszcillátor hajt egy számlálót (timer, WDT) valamilyen utóosztással (postscaler). Ha ez túlcsordul, akkor WDT megszakítás, vagy újraindítás/reszet keletkezik.
Még mindig nem árultad el, milyen PIC az alany.
A hozzászólás módosítva: Ápr 15, 2015
(#) kissi válasza DJozso hozzászólására (») Ápr 15, 2015 /
 
Idézet:
„WD megáll .... Müködhet így?”
Így biztos nem !
(#) DJozso válasza nedudgi hozzászólására (») Ápr 15, 2015 /
 
A nincs konkrét PIC. Olyat szeretnék, ami lehetőleg 8 lábú 12F család tagja, és hardveresen támogatja az UART-ot a RF modulos küldés miatt. A cél a költség hatékonyság (olcsóság), végül is csak a fent említett feladatot kell ellátnia. 1 output láb a RF modul tápjának ki-be kapcsolásához. 1 láb a 18b20-as szenzornak, és a Tx láb az RF modul adatbemenetére. Értem, hogy a WD túlcsordulásnak eredményeként lehet "ébresztőt fújni a PIC-nek", de akkor mi az a megoldás, ami akár 10 percre időzít, de minimálisat fogyaszt? Ötlet?
(#) nedudgi válasza DJozso hozzászólására (») Ápr 15, 2015 /
 
PIC12F1840, ha körülbelül 256mp elég...
(#) Pali79 válasza DJozso hozzászólására (») Ápr 15, 2015 / 1
 
Idézet:
„ami lehetőleg 8 lábú 12F család tagja, és hardveresen támogatja az UART-ot”
Hát ez eléggé leszűkíti a kört. Ilyen kb csak 12F1xxx családban van.

Szerk: pontosabban a PIC12F1840, PIC12F1572, és a PIC12F1822 -ből tudsz választani.
A hozzászólás módosítva: Ápr 15, 2015
(#) nedudgi válasza DJozso hozzászólására (») Ápr 15, 2015 /
 
A hardveres UART nem lehet szempont, ha csak küldeni kell adatot. Pár utasítással lehet írni soros vonali adást, 19200 Bd sebességgel is mehet - PIC10F322 is jó a célra.
(#) DJozso válasza nedudgi hozzászólására (») Ápr 15, 2015 /
 
Ezt neked hogy jött ki, ha megkérdezhetem? Böngészem az adatlapját, de nem igazán értem. Egyébként ha nincs más megoldás... Nekem még a 10 perc is majdnem sűrű. Más család picjei közt sem lehet ilyen? (Bocs, ha hülyeséget kérdezek.)
(#) DJozso válasza nedudgi hozzászólására (») Ápr 15, 2015 /
 
Csak egy gondolatra: Ha szoftveresen lehet helyettesíteni az UART hardvert, akkor minek bele a hardver? Vagy csak adónál? Vevőnél kell a periféria?
(#) nedudgi válasza DJozso hozzászólására (») Ápr 15, 2015 /
 
Megnéztem az adatlapot. A PIC10(L)F322 és a PIC12(L)F1840 Watchdog Timer fejezetének első oldalán megtalálható.
Ha a 256 másodperc kevés, akkor bizony számolni kell.
Esetleg megteheted, hogy az órajelet leveszed 32kHz-re, akkor az áramfelvételt le lehet vinni 30 uA alá
(#) nedudgi válasza DJozso hozzászólására (») Ápr 15, 2015 / 1
 
A vétel kicsit macerásabb szoftveres UART esetén. Amíg a processzor számol, addig a hardveres UART szépen teszi a dolgát. Az sem utolsó szempont, hogy az adatátviteli sebesség jelentősen megnő hardveres átvitelkor.
Szoftverből a félduplex, még elmegy, a hardveres pedig tudhat duplex üzemmódot.
A hozzászólás módosítva: Ápr 15, 2015
(#) Pali79 válasza DJozso hozzászólására (») Ápr 15, 2015 / 1
 
Azért kell a hardver, mert azt csak egyszer kell beállítani, aztán a megfelelő regbe az adatot betölteni és már megy is, nem foglalja a PIC-et, szoftveresen meg minden küldésnél egy szubrutint kell meghívni.
(#) DJozso válasza nedudgi hozzászólására (») Ápr 15, 2015 /
 
Kérlek javíts ki ha tévedek: De a belső órajelről hajtva, valamelyik timernek van kimenete, ami túlcsordulásnál ad egy impulzust, ezt megszámoltatom egy külső számláló icvel (CD4017), majd a megfelelő impulzus után kap a PIC egy externál interruptot? Jól értem? Hu, ez igen, csak úgy özönlik a sok új dolog.... Köszönöm mindkettőtöknek. Azt hiszem ezt a WDT-t még tanulmányoznom kell.
A hozzászólás módosítva: Ápr 15, 2015
(#) nedudgi válasza DJozso hozzászólására (») Ápr 15, 2015 /
 
Minek ide külső IC?
A WDT engedélyezése után leállíthatod a mikrokontrollert. Ha az engedélyezett(beállított) idő alatt nem törlöd a vacsdogot, akkor az újraindítja a kontrollert, önerőből, saját kezdeményezésre. Ha a program futása közben törlöd (clrwdt utasítás), akkor ez az időpont folyamatosan eltolódik, ha nem törlöd, akkor akcióba lép.
A hozzászólás módosítva: Ápr 15, 2015
(#) DJozso válasza nedudgi hozzászólására (») Ápr 15, 2015 /
 
De azt mondod, hogy a maximális idő 256s. Ezután automatán újraindul. Kívétel ha szoftveresen törölve van a WDT. De sleep üzemmódban hogy törlöd a WDT mondjuk 3 szor ? 3*256s késleltetés esetén... Akkor nem fut a program?! Vagy igen? A többit nagyjából értem. Nyilván egy változóval megszámolom a túlcsordulásokat, de hogy lesz ebből reset (alvó üzemmódban)?
A hozzászólás módosítva: Ápr 15, 2015
(#) nedudgi válasza DJozso hozzászólására (») Ápr 15, 2015 / 1
 
Alvás közben nem kell foglalkozni a WDT-vel, épp ez a lényege, hogy a beállított idő után a kontroller újraindul. Akkor számol egyet a memódiában, és ha elért a harmadikhoz, akkor körülbelül 768 másodperc telt el, jöhet az adatküldés...
(#) DJozso válasza nedudgi hozzászólására (») Ápr 15, 2015 /
 
Erre jutottam én is, persze a te segítségeddel. Köszönöm a segítséget.
(#) Rick06 válasza killbill hozzászólására (») Ápr 16, 2015 /
 
Most jól működik az optó! Az volt a baj, hogy 1,2 K-s felhúzó ellenállás volt 10K -s helyett. Viszont most előjött egy olyan probléma ,hogy folyamatosan magszakítást generál a bemenet, mintha oszcillálna a bemenet. Sajnos nincs szkópom hogy megnézzem mi történik a jellel. Valahogy pergésmentesítenem kéne a jelet, talán egy kondival megoldható? (Lassan változik a jel ,tehát ez nem lenne gond!)
(#) Kari55 válasza Pali79 hozzászólására (») Ápr 16, 2015 /
 
Szia, tettem a kapcsolásba 4 Mhz körüli kvarcot, és láss csodát, működik.
(#) Pali79 válasza Kari55 hozzászólására (») Ápr 16, 2015 /
 
Én épp ezért nem tartom sokra a Proteus szimulátorát. Becsap mert szerinte jó a kapcsolás.
(#) usane válasza Rick06 hozzászólására (») Ápr 16, 2015 /
 
A 10k biztos, hogy sok ha ott 18V van. LEd előtétet kell számolni mert az optoban LED van. 1.5-2 mA körül nem vagyok benne biztos, hogy jól működik az a LED. Az adatlapján az 1.3V-os nyitófeszültséget 50mA-nál mérték, de 10mA-el is elmegy. 10mA-hez pedig 1.6k ellenállás jön ki, szóval az 1.2k-nak jónak kell lennie. Jó volt az az ellenállás nem szakadt?
(#) killbill válasza usane hozzászólására (») Ápr 16, 2015 /
 
A kollektorkori felhuzorol beszel, nem a LED elotetrol. Oda viszont valoban kicsi lehet az 1.2k, mert 10mA LED aram mellett 2..7mA folyik a kollektorban. 2mA-nel nem megy le elegge a kollektor.
A hozzászólás módosítva: Ápr 16, 2015
(#) usane válasza killbill hozzászólására (») Ápr 16, 2015 /
 
Igazad van, de arról volt szó, hogy ott a belső felhúzót használja, az több mint 10k a maga megengedett 200-300uA-ével. Akkor most palacsintát sütünk vagy krumplit?

Rick06: Mi az, hogy folyamatosan? Akkor is ha nincs rajta a 18V?
Egyáltalán milyen PIC és mire van beállítva a megszkítás, IOC?
A hozzászólás módosítva: Ápr 16, 2015
(#) killbill válasza usane hozzászólására (») Ápr 16, 2015 /
 
Idézet:
„Igazad van, de arról volt szó, hogy ott a belső felhúzót használja,”
Nagyjabol pont. A feltett rajzon nem szerepelt egyaltalan felhuzo ellenallas, feltetelezheto volt, hogy a belsot hasznaja.
Idézet:
„Akkor most palacsintát sütünk vagy krumplit?”
Jogos! Probalunk segiteni, de sokszor a gondolatolvasas kepessege jobban kell, mint a szakmai ismeretek.
(#) usane válasza killbill hozzászólására (») Ápr 16, 2015 / 1
 
Én nem csak feltételeztem.
Idézet:
„Az egyik lábát be is állítottam bemenetnek és bekapcsoltam a felhúzó ellenállást.”

Na mindegy. Majd kitalálja mit rakott össze.
Következő: »»   661 / 1207
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