Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   835 / 1319
(#) icserny válasza kkrisz75 hozzászólására (») Nov 13, 2010 /
 
Egy gyakran alkalmazott megoldás: alaphelyzetben a bemenet egy ellenállással (pl. 5-10 k) tápfeszre (a PIC VDD lábja) fel van húzva. Aktiváláskor pedig egy nyomógomb ezt a pontot földre (a PIC VSS lába) húzza.

Érdemes még annyit megtenni, hogy a nyomógomb és a felhúzó ellenállás közös pontját nem közvetlenül, hanem egy védőellenálláson (300 Ohm - 1 k közötti érték) kötöd a PIC bemenetére. Így nem fordulhat elő, hogy a PIC lábát véletlenül kimenetnek állítod, a nyomógombbal meg rövidrezárod.

Ezek után már csak a nyomógomb kontaktusának pergésével kell szembenézni, de van rá megoldás...
(#) watt válasza kkrisz75 hozzászólására (») Nov 13, 2010 /
 
Annyit szeretnék hozzátenni, hogy a gombhoz tartozó láb vezhérlőprogramját természetesen meg kell írni, beileszteni a jelenlegi program vezérlőjele helyére, illetve lehet még egy gombot tenni, amivel váltani lehet az üzemmódot, ha erre szükség van. Menni fog?
(#) kkrisz75 válasza icserny hozzászólására (») Nov 13, 2010 /
 
Akkor ha jól értem.
Pl. A 16f628 RA4 es lábát egy 5-10K ellenállással rá kötöm a tápra.
Ugyan ezt a lábat kapcsolóval testre kötöm.
ÉS a kapcsoló és a felhúzó ellenállás között kötöm be a RA4es lábat egy 300ohm körüli ellenállással.
(#) icserny válasza kkrisz75 hozzászólására (») Nov 13, 2010 /
 
Ezen az oldalon nézd meg pl. a 2. és a 4. ábrán SW1 bekötését!
(#) SzT3 hozzászólása Nov 14, 2010 /
 
Sziasztok,
Kérdéssel fordulnék hozzátok.
Szeretnék csinálni (csináltatni) egy 8x10-es ledmátrixot.
28 pines PIC-et szeretnék hozzá , csak azt nem tudom hogy milyet válasszak, túl sok feladata nem lenne csak a ledeket villogtatni.
(#) SzT3 válasza SzT3 hozzászólására (») Nov 14, 2010 /
 
Hopp. Az áramkör lemaradt.
(#) Hp41C válasza SzT3 hozzászólására (») Nov 14, 2010 /
 
Szia!

Jó választás a 28 lábú tok, sokféle típust lehet felhasználni az áramkör átalakítása nélkül: 16F886 - 8Kszó, 18F2420 - 16kbyte, 18F2520 - 32kbyte, 16F2620 - 64kbyte.

Az áramkörről: A 12V-ot kapcsoló tranzisztorok meghajtása nem lesz így jó. Mindegyikhez ajánlanék egy npn tranzisztort: Az npn tranzisztor emittere a földre, a bázisa egy ellenálláson keresztül a pic kimenetére, a kollektora egy ellenálláson a pnp tranzisztor bázisára kapcsolódik. A pnp bázisa és emittere közé is tennék egy ellenállást a biztos lezárás elérésére.
(#) SzT3 válasza watt hozzászólására (») Nov 14, 2010 /
 
Ezek alapján akkor nálam is érdemes lenne ilyenekre alakítani a nyomógombokat?
Véletlenül se történhessen gond?

nyomogomb.png
    
(#) watt válasza SzT3 hozzászólására (») Nov 14, 2010 /
 
Ha tőlem kérded, a 470Kohm helyett inkább 1K-t vagy 10K-t tennék és egy 100n-s kodit is a test felé. Az alap elképzelés egyébként jó.
A LED-es fényjátékkal kapcoslatban nézz felaz oldalamra, vagy egy elég komlex kapcsolás, amiből meríthetsz, esetleg utánépíted...
(#) SzT3 válasza watt hozzászólására (») Nov 14, 2010 /
 
Köszönöm a tippet és a javaslatot,
Már nézem is az oldalad.
(#) cassis válasza watt hozzászólására (») Nov 15, 2010 / 1
 
Kedves Watt! Elismerő szavaid után engedd meg, hogy néhány szóban kifejtsem gondolataimat az utolsó érintett hozzászólásodról. Lehet, hogy tényleg a nehéz felfogású ovodások, vagy talán a számítástechka alapjaival most ismerkedők közé, stb.... tartozom, de voltam olyan bátor, hogy Tőletetek - akiket egyéként nagyra tartok - kérdezni merjek.
Válaszod elolvasása után magam is elgondolkodtam, miként sikerülhetett egyedül bekapcsolni a számítógépet és használni a böngészőt. Mindamellet, hogy nyilván igazad van, arra kérlek, csak akkor válaszolj kérdésre, ha úgyérzed tudsz segíteni. Ez úgytudom olyan fórum, amely önkéntes alapon működik, a segítők jószándéka motiválja a válaszokat. Ha ezzel nem rendelkezel adott témában és pillanatban akkor kérlek ne okozz semelyik kérdésfeltevőnek kínos pillanatokat! Adott kérdésre a válaszod pedig legyen örökös titok! De mi is volt a baj azzal, amit kérdeztem? Aztmondod alapvető tudással
1/2 óra alatt, akár segítség nékül is meg lehet oldani. Na rendben, ha már ílyen egyszerű, akkor 5 mondatban is el lehet mondani. De nem lehetett. Helyette barbár módjára kikelsz magadból. Remélem a
kérdés egyszerűsége miatt kezdőktől is sok választ kapok.


Bármilyen fura, a 16F-18F sorozatbeli eszközzel kapásból tudok projectet csinálni, hiba nélkül lefordul. Mégcsak nem is kell állítanom semmit a Built Optionsban. De én P24 el akarok küzdeni. Ezzel mintha megálllna az élet! Amit elsmerek súlyos tévedésmenek, hogy nem bírtam leszokni az .asm
ről és .s használni. De azthiszem ezzel sem vagyok kint a vízből. Icserny nagyon lelkesen elmagyarázta, - ami szerinted már a kezdzők kisujjában van egyébként is - hogy miként kell állítani a Built Options For Project -et. Aztán itt megint én érzem furán magam, mert: hiába állítom be a Directories lapon az aktuális projecthez az elérési útvonalakat,
(C:\Program Files\Microchip\MPLAB ASM30 Suite\Support\inc) és (C:\Program
Files\Microchip\MPLAB ASM30 Suite\Support\gld) a fordítás megkezdése után kifagy az MPLAB, annak ellennére, hogy a **.s file rendben ott van a
source files könyvtárban. Ezután a project bezárását sem engedi meg az MPLAB. A problémára minden ötletet várok a kezdő programozótól a profiig
bezárólag. Watt reakcióját is várom legalább a humán részre bármilyen formában, de ha soha többet nem is kapok tőle választ akkor tudnia kell, hogy szakmailag és eddigi önzetlen munkássága miatt továbbra is emelem kalapom előtte.
(#) El_Pinyo válasza cassis hozzászólására (») Nov 15, 2010 /
 
Szia!
A projekt elérési útvonalában ne legyen semmi ékezetes betű sem, erre az MPLAB allergiás szokott lenni (töröl könyvtár). Valamint érdemes lehet a legújabb MPLAB környezetet feltelepíteni (v 8.60).
(#) cassis válasza El_Pinyo hozzászólására (») Nov 15, 2010 /
 
Azt hiszem csak a régebbi MPLAB verziók voltak erre allergiásak. De éppen ebben a "töröl" könyvtárban próbáltam ki egy p16 és egy p18 as processzora írt programot projektből fordítani ami hibátlanul ment.
(#) icserny válasza cassis hozzászólására (») Nov 15, 2010 /
 
Csinálj a C: gyökérben egy könyvtárat (pl. C:/PIC24), s a projekteknek vagy projekt-csoportoknak azon belül egy könyvtárat. Például: C:/PIC24/proba. Ahogy már előttem elmondták, szóköz és ékezet ne legyen az elérési útban!

Megjegyzés: technikai okokból itt nem tudok backlash-írni. Értsd tehát jól a fentieket!

A "humánpolitikai" kérdéshez: A kérdezőknek nemcsak jogai, hanem kötelességei is vannak, s be kell tartani a fórum írott és íratlan szabályait. Nem illik visszaélni a válaszolók vagy fórum olvasók türelmével. Nem illik itt feltenni olyan kérdéseket, amelyek kilógnak a téma profiljából (mert pl. a PIC kezdő, Elektronika kezdő vagy Számítástehnika kezdő témakörbe valók), vagy minimális tájékozódással (Google, adatlap, programleírás stb.) a kérdező maga is utánanézhetne.

Az élet apró örömeihez tartozik, hogy mindezekre Watt figyelmeztetett, nem pedig a moderátor...
(#) cassis válasza icserny hozzászólására (») Nov 15, 2010 /
 
Ki fogom próbálni, remélem tényleg az elérési ut hossza okozta problémát. Mellesleg, ha működik marhára nem fogom tudni milyért sikerült fordítani ugyanebben a könyvtárban más projekteket.
Most már úgylátszik végleg rajtam marad a kezdő, ovodás bélyeg. Nem akarom fokozni a dolgot, de valaki azért azt már elárulhatná, hogy melyik volt az a pont valamely kérdésemben, amelyben kiderült mindez. Én igyekeztem mindig úgy fogalmazni, hogy olyan kérdést tegyek fel, melyből látszik, hogy mindent elkövettem a megoldás érdekében, és bármennyire is hihetetlen adatlapok és a google tanulmányozásával kezdem az ismeretlen tanulmányozását. Most belefutottam ebbe a dologba, de mindjárt el vagyok küldve a sunyiba. Pedig az MPLAB leírásokat is elolvastam becsületesen.
Még icsrny is cinikusan válaszol "Értsd tehát jól a fentieket", mintha tényleg ezidáig az derült volna ki rólam, hogy nem bírom felfogni amit írtok.
(#) dinokal válasza cassis hozzászólására (») Nov 15, 2010 / 1
 
Szia! Azért sikerült, mert az egész modulokból áll, és az egyik elfogadja az ékezetes útvonalat, a másik nem. Ha szisztematikusan nem használsz ékezetet az elérési útban, sok problémától szabadítod meg magad. Ez az egész már sokszor le lett írva ebben a fórumban . Az elérési út hossza kötött, most kapásból nem tudom hány karakter.
(#) cassis válasza dinokal hozzászólására (») Nov 15, 2010 /
 
No ez egy konkrét válasz, máris világos milyért működik különbözőképpen az MPLAB. Már alig várom mikor tudom kipróbálni.
Lehet többször is volt minderről szó, ez az én hibám, hogy nem olvastam végig a topicot, de szerintem ez nem keverendő össze a szakmai felkészültség hiányával vagy a lustasággal sem. Ha tutira tudom, hogy ott van a 837 oldal valamelyikén a megoldás, akkor komolyan fontolóra veszem, hogy átolvasom, - de legyek megkövezve - lehet, hogy nem teszem....
(#) icserny válasza cassis hozzászólására (») Nov 15, 2010 /
 
Nem kell végigolvasni, azért van kereső! Keresési kulcsszónak pedig elég megadni azt, hogy "elérési".
(#) ditircs hozzászólása Nov 15, 2010 /
 
Sziasztok!

PIC es GSM modul kozott szeretnek soros porton kommunikaciot megvalositani. Jelenleg ott tartok hogy a soros porton tudok kuldeni adatot a modemnek pl. Hivas inditasa. Jelenleg a program ugy mukodik ha jon valami a bemenetre akkor interrupt-tal megall es beolvassa a ReadUSART utasitassal az erkezett adatot. Az a problemam hogy a ReadUSART frame error hibat dob es egyszeruen nem tudom miert. Remelem tud valaki segiteni nekem.

itt van a kod, kép ..

Annyi meg ha a PC-vel kotom ossze a PIC-et akkor teljesen jol megerkezik ra minden.

Elore is koszi a segitseget,

David

kódom.txt
    
(#) Hp41C válasza ditircs hozzászólására (») Nov 15, 2010 /
 
Szia!

Nézd meg ezt a topikot, itt kitárgyaltuk a kérdést. Nem lehet várni a soros adás és vétel rutinjaiban, mert lekési a program a veendő karaktereket. A kezeteséi hiba lehet hibás formátum beállításából fakadó hiba is.
(#) ditircs hozzászólása Nov 15, 2010 /
 
Idézet:
„Nem lehet várni a soros adás és vétel rutinjaiban, mert lekési a program a veendő karaktereket”


Hol van varas? En nem latok a kodomban varakozast.

Koszi David
(#) Hp41C válasza ditircs hozzászólására (») Nov 15, 2010 /
 
Szia!

Azt kellene ismerni (nyomkövetéssel megállapítani), hogy miként van megírva a putrsUSART és a getcUSART eljárás.
A Delay10KTCYx(10) biztosan programozott várakozás...
(#) icserny válasza ditircs hozzászólására (») Nov 15, 2010 /
 
Tisztázni kellene, hogy melyik C változatról van szó, mert nálam a hlpC18Lib.chm szerint a putsUSART() függvény a szoftveresen emulált soros port kezelésére szolgál, a PIC18F Peripheral Library Help Document.chm szerint pedig a hardveres USART kezelésére (ez az újabb).

A honlapomon találsz mintaprogramokat UART kezelésre (interruptos RX és TX, mindkettő gyűrűs buffereléssel). A lényeg a picula_usart.c állományban van.
(#) icserny válasza Hp41C hozzászólására (») Nov 15, 2010 /
 
Idézet:
„Azt kellene ismerni (nyomkövetéssel megállapítani), hogy miként van megírva a putrsUSART és a getcUSART eljárás.”
A forráskódja ott van az MCC18 telepítési könyvtárában. Kiollóztam a relváns részeket.

usart.txt
    
(#) watt válasza (Felhasználó 15355) hozzászólására (») Nov 15, 2010 /
 
Testre sokkal kissebb ellenálással lehet stabilan lehúzni egy bemenetet. A kondi is hatásosabb. Én mindig így használom, eszembe sem jutna másképp...
(#) lidi válasza watt hozzászólására (») Nov 15, 2010 /
 
Sokkal kisebb ellenállással lehúzni ? Ez mit akar jelenteni ? A kapcsoló jobban vezet a test felé ? Vagy hogy érted ezt ?
(#) icserny válasza (Felhasználó 15355) hozzászólására (») Nov 15, 2010 /
 
Talán a TTL logikai áramkörök korából öröklődött, ahol a felhúzás lényegesen kisebb árammal történt, mint a lehúzás (-1.6 mA, ill. 40 uA).

A logika szempontjából meg olyan mindegy...
(#) lidi válasza icserny hozzászólására (») Nov 15, 2010 /
 
Még arra tudok gondolni esetleg, hogy a szint billenés (logikai magas/alcsony) esetleg nem fél tápfesznél van ?
(#) icserny válasza lidi hozzászólására (») Nov 15, 2010 /
 
Idézet:
„a szint billenés (logikai magas/alcsony) esetleg nem fél tápfesznél van ?”
Hát persze, hogy nem! Kell egy "tiltott sávnak" lennie, hogy az L szintet a H szinttől üzembiztosan meg lehessen különböztetni. A TTL áramköröknél van némi aszimmetria: alacsony szint 0 - 0.8V között, a magas szint 2.2-5V között lehet. A közbenső tartomány "tiltott", a két logikai szint között gyorsan kell átváltani.

A PIC adatlap szerint a Schmitt triggeres CMOS bemenetek elég szimmetrikusnak tűnnek: L szint 0- 0.2*Vdd közöt, H szint Vdd egységekben: 0.8 - 1.0 közötti lehet.
(#) lidi válasza icserny hozzászólására (») Nov 15, 2010 /
 
Persze, az tiszta volt hogy van tiltott sáv, csak arra gondoltam hogy esetleg nem szimmetrikus.
Következő: »»   835 / 1319
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