Fórum témák
» Több friss téma |
Itt a kód. Remélem segít valamit.
Ha van lehetoseged nyakot maratni, akkor szerintem felesleges penzkidobas, de ha nem szeretsz ilyesmivel pepecselni es inkabb a programozas felol kozelted, akkor valoban idealis. Egyebkent latok rajta USB csatlakozot, max a ket data vezeteket utolag behuzod.
De a pic benne elavult. Nem latom, hogy lehetne benne alacsony feszultsegu PIC-eket hasznalni.
Nyákot tudok csinálni itthon is. Csak nincsen hozzá semmilyen kacsolási rajzom vagy nyáktervem. Az lenne a legjobb, mert így tudnám az elektronika részét is csinálni.
Néztem én több fejlesztő lapot is de mindegyik olyan kis egyszerűnek tűnt. Nekem valami olyan kellene amit azért olyan hamar nem növök ki. meg sok minden van rajta.
Ezt találtam legnormálisabbnak amit meg tudnék építeni.
Bővebben: Link Csak ehhez nincsen meg az alkarész listám. Ami szerepel a kapcsolási rajzom azt le tudtam irni, de van jópár amire nem tudtam rájönni hogy micsoda.
Nezd, nyilvan nehez tanacsot adni.
Szigoruan szerintem, ha tudsz nyakot kesziteni, akkor tervezz par altalanos dolgot ra, mondjuk pl infravevot, az remekul helyettesiti a nyomogomb-matrixot. Ami fontos lesz majd neked, az a rengeteg tap- es foldpont. Az osszes tobbit egyszeruen be tudod kabelezni. Sokat segit, ha a nyakra ra van maratva a kiosztas. De nem mindenki mellett van ott a paka. Szerintem nem kell tul gyakran konfigot valtani es en szemely szerint nem bizom a sima kontaktusokban. Jobb az, ha oda van forrasztva... ![]()
Idézet: Csak akkor vedd meg, ha rendelkezel annyi jártassággal elektronikából, hogy könnyen fel tudod térképezni, hogy mi mivel van összekötve!„Szerintetek ezt érdemes kezdéshez megvenni?” Az ilyen "összkomfortos" paneleknek ez a legnagyobb hátránya: túl sok erőfeszítést igényel a lábak foglaltságának kiderítése.
Már csak az indirekció fölösleges benne:
helyett
Nem egyszerűbb így:
#1231736 <- ezt a hozzászólást olvasta valaki egyáltalán?
![]() De ha semmiképp se akar menni akkor:
Na ez majd jól megdobja a kódot ![]()
Tényleg nem olvassa senki amit írtam...
Ez: case 8:return "0x38"; Nagyon nem jó, mert a program memóriában letárolja a "0x38" SZÖVEGET és annak a címét adja vissza. A fordító nem rinyált az implicit type cast miatt? vagy 0x38 vagy '8' vagy return valami + '0'. De a "sadklfjaskdfklasd" CÍMET JELÖL!!!
Szia!
Nem a legegyszerűbb megoldást keressük, hanem, azt miért nem működik sany megoldása. A megoldáshoz adtam már ötleteket vasárnap reggel.
Ezt értem, de ha megpróbálna azt a kódrészletet, (mert a javaslatod alapján ugyan átírta a függvényt, de rosszul) azzal már előrébb lenne a dolog, mert a típuskonverziós hiba már nem lenne ott..
Sziasztok!
Kipróbáltam , amit tanácsoltatok. Még mindig nem jó valami ,mert csak "karakterszemetet" kapok. Hp41C által tanácsolt kódot linkeltem be. Stefan a te megoldásoddal is csak furcsa karakterek jelennek meg. Azért gondoltam a cases megoldást , mert már számlálót építettem hétszegmenses kijelzővel és ott így adtam meg az egyes digiteket. Gondoltam itt is működik csak karakterekkel.
Szervusz!
Nem tudom milyen fordítód van, de ha az int típus alapértelmezése előjeles akkor is baj van. deklaráld "unsigned int"-nek az óra, perc másodperc változókat. Ha mindíg kiírod, hogy signed vagy unsigned egy változó akkor biztos kevesebb lesz a kavarodás.
Szia!
Egy kicsit sokat vársz el tőlünk, ahelyett, hogy megnéznéd az Lcd_Out függvény leírását. C programban tudunk segíteni, de azt azért nem várhatod el, hogy minden (általunk nem használt) fordító könyvtári függvényeinek használatát fejből ismerjük...
Ezek szerint a 3. paramétere egy karaktersorozatra mutató mutató. Ennek megfelelő program a szimulátor szerint működik.
Az itt leírt módszerrel felvettem az LCD vezérlés jelakját. A "13:" karaktersorozatot írja ki. Ajánlom Neked is...
Csak úgy elrettentésnek:
Az 53 ... 58 sorokat (6 C nyelvű sor) 149 assembly sorra sikerült lefordítania és közben hatszor hívta meg a 16 bites számok osztását végző rutint, ami még 31 sor. Az egész programot sikerült neki 700 sorból kihozni. A 10F322 -be írt DCF77 szinkronos, 7 szegmenses óram dátumkezeléssel, a hét napjának kezeslésével csak 422 sor.
Sziasztok!
Most ismerkedem még csak PIC-el. 1 kimenettel, 1 tranzisztorral tudok kapcsolni "valamit", viszont két külön dolgot kéne 1 kimenettel. Lehetséges két tranzisztort meghajtani 1 PIC kimenettel, ha igen, hogyan? Köszönöm a válaszokat!
Hali. Szerintem meg lehet oldani úgy, hogy az egyik egy NPN másik pedig egy PNP típusú tranzisztor legyen. Egy a gond hogy ezzel nem tudod azt megcsinálni, hogy mind a kettő ki legyen kapcsolva egyszerre.
Sziasztok!
Elkezdtem ismerkedni a PIC-ekkel egy viszonylag kis hobbi-projekt kapcsán, ami arró szól, hogy egy PIC16F84A-val szeretném átkódoltatni egy 3x3-as billentyűzet mátrix gombjait a HT12E nevű távirányító IC által emészthető formájúra. A mátrix a B portra csatlakozik, az RB0...RB2 a kimenet, az RB4...RB6 pedig a bemenet. Mivel a szoftvert szeretném minél önállóbban megírni, így most csak a vázlatát írom le. Ha valahol logikai bukfencet vélnétek felfedezni a gondolatmenetben, kérem jelezzétek.
*: kicsit egyszerűsítettem a valódi programhoz képest, mert ott tárolom, hogy az aktuális gomb megegyezik-e az előzőleg találttal, és ha igen, akkor nincs várakozás és a PORT A-t sem piszkálom, mert felesleges Kérdéseim: - A ** sorokhoz kapcsolódóan: A billentyűzet mátrix bekötésekor kell-e felhúzó (PORT B beépített), lehúzó, áramkorlátozó ellenállásokat ill. védődiódákat használni (bármelyiket a felsoroltak közül)? - A prell jelenség kiküszöböléséhez mennyi ideig érdemes várni, mielőtt elkezdem figyelni a gomb felengedését? - Az RA4 (open drain) lábat kimenetként szeretném felhasználni, és rákötni a HT12E engedélyező bemenetére (CMOS, beépített felhúzó ellenállással, aktív alacsony). Ehhez elég csak simán összekötnöm a lábakat? - A SLEEP utasításnak tényleg nincs beépített függvénye C-ben (HI-TECH C), vagy csak nem keresgéltem elég soká a neten? - A TMR0 működését nem sikerült teljesen megértenem. Mikor indul el a számlálás a hozzá tartozó regiszterben (a PIC órajeléről hajtva)? A PIC bekapcsolásakor, ill. mikortól az órajel van a bemenetéhez rendelve? Másképp fogalmazva: le lehet-e állítani a számlálót (anélkül, hogy a bemenetét újra a PIC lábához rendelném)?
Az elkepzeles jo, de eloszor is engedelyezni kellene a felhuzo ellenallasokat a bemeneteken. Masik dolog hogy inkabb csinalj egy periodikus IT-t TMR0 segitsegevel, es 10-20 mS suruseggel olvasd a Kbd-t. A TMR0 kezeleset leirasat megtalalod a 30430C.pdf adatlapban, a 27. oldalon. Vilagosan leirja az orajel forrasat, es ennek a beallitasat. A Sleep utasitast lehet esetleg asm utasitassal beszurni, de nem tudom ebben a forditoban ezt hogyan tudod beszurni.
Ja egy kis sugas kbd kezelesre a mellekletben. CCS C-ben. Idézet: „engedelyezni kellene a felhuzo ellenallasokat” Világos, minden konfig bitet nem írtam be a fenti pszeudo-kódba. Idézet: „Masik dolog hogy inkabb csinalj egy periodikus IT-t TMR0 segitsegevel, es 10-20 mS suruseggel olvasd a Kbd-t.” Ezzel az a baj, hogy ez az MCU nem ébred fel a TMR0 megszakításra, mivel nincs benne belső oszci. Amúgy nem írtam, mert az eddigi kérdéseimnél nem volt jelentősége, de 2xAA elemes táplálást szeretnék megoldani, tehát mindenképp szükség van a fogyasztás minimalizálására. Egyébként egy infra táv hatótávolságát szeretném megnövelni (természetesen egy vevőt is építek majd), tehát napjában átlag pár gomb lesz lenyomva. Ehhez sok lenne a 10-20ms gyakoriságú feléledés. A tápegységhez a TI oldala az LM2623-at dobta ki, mint ajánlott step-up konverter. Valakinek van tapasztalata ezzel, vagy esetleg más IC-t javasolnátok a 3V->5V konverzióra? Idézet: „A TMR0 kezeleset leirasat megtalalod a 30430C.pdf adatlapban, a 27. oldalon. Vilagosan leirja az orajel forrasat, es ennek a beallitasat.” Az adatlapot olvastam, meg a Kónya-féle PIC könyvet, de ezekben csak a sorok között olvasva véltem felfedezni a választ a kérdésemre, mert hogy direktben nincs leírva se pro, se kontra. Idézet: „A Sleep utasitast lehet esetleg asm utasitassal beszurni, de nem tudom ebben a forditoban ezt hogyan tudod beszurni.” Az ASM-es megoldást már megtaláltam a neten, köszi. Idézet: „Ja egy kis sugas kbd kezelesre a mellekletben. CCS C-ben.” Ha jól olvasom, ez abból indul ki, hogy periodikusan ránézel a billentyűzetre, és ez alapján pár "ránézést" kihagy, ha kell. Nálam eseményvezérelt beolvasás lesz, nem periodikus.
Persze lehet igy is csinalni, de ha Te kis aramfelvetelt akarsz, akkor talan valami 8 labast kellene alkalmazni. Pl 12F683. 2 volt felett uzemkepes. Csinaltam ilyennel cuccot ami 2 ceruzaelemrol eldolgozott 2-3 honapot. Ebben van belso oszci amit akar 31 kHz-re is be lehet allitani. Ja es igy nem kell semmi kulso tap varazslassal sem foglalkozni.
Bár a kérdésedet ide a "PIC kezdőknek" témába tetted, azért a gondolatmenetedből látszik hogy nem vagy kezdő.
TMR0: A PIC indulásakor nem indul automatikusan, de egy engedélyezőbit segítségével bármikor indítható/megállítható. Nem kell a kimenetét lábhoz rendelni, mert az ált. fix. Idézet: Kevés lesz neki, mert a 6 bemeneten kívül biztosan kell valami kimenet is... „akkor talan valami 8 labast kellene alkalmazni.”
Hát én valami olyasmire gondoltam, hogy két NPN lenne a kimeneten, pl 1-1 diódával, kérdés, hogy ezt "lehet-e" így?
Tehát valami ilyesmi, mint a képen. Ez hülyeség?
Ezt így nem lehet, mert mindkét tranzisztor egyszerre kap vezérlőjelet, akkor meg már nem kezdenek külön életet élni, hanem egyszerre vezetni is kezd mindkettő. De miért akarsz a lábszámmal spórolni? Majd később esetleg érdekes lehet, de kezdőként ne foglalkozz szerintem ilyesmivel.
Az is lenne a cél, hogy egyszerre kezdjenek vezetni, két külön valamit vezérelni (kicsit pontosabban az egyik gnd-re húzna le valamit, a másik egy +5V vagy +12V ágat "szakítana meg" egy további pnp fet segítségével.
Sőt, mindezt a két vezérlést egy másik eszköznek is indítania kell, hogy kicsit még nehezedjen a helyzet ![]() Eredetileg pedig egy két morzés relé kiváltása lenne a cél, hasonló felállással (PIC és egy másik "száraz" kontaktus is kapcsolná) |
Bejelentkezés
Hirdetés |