Fórum témák
» Több friss téma |
XC8 -cal 16F1454 típussal van USB - CDC -m. Működik rendesen rajta egy MODBUS kapcsolat (38400 Baud 8E1). 2014.10.15 Csak a paritás képzés és ellenőrzés assembly.
A hozzászólás módosítva: Szept 12, 2018
Nos, megrajzoltam a 26K22-vel, de az i2c belelóg a nyomógomblekérdezős játékomba. Mit csináljak? Tudom, menjek a..., de tényleg. Használjak mcp23016 portbővítőt? Ne nevessetek ki, a seprű-lapát mellé nem osztottak észt. Ha valamit elrajzoltam, javítsatok ki.
Nem teljesen érthető a kérdés, legalábbis számomra. Ha jól látom, van még szabad láb a kontrolleren, RA5, RC0, RC1, RC2, RC6.
Köszönöm a választ.
Emlékeim szerint az RB port alsó 4 bitje használható lekérdezésre hardveresen. Tudom, hogy lehet használni más lábakat is, csak pont belelóg az i2c, az alsó bitekbe. Gondolom szoftverből meg lehet oldani más lábakkal is. Akkor megrajzolom úgy. Közben megrajzoltam. A hozzászólás módosítva: Szept 17, 2018
Igen, szoftveresen is meg lehet oldani és így szabad a hardveres I2C és SPI !
A rajzon az R3, R4, R5 ellenállásokra nézz rá!
Köszi. Tényleg, furán néz ki, de legalább az RC2 biztosan fel van húzva.
![]()
Még egy ötlet igaz, nem tudom mennyire illeszkedik a projekthez. Pl. a Nextion féle HMI kijelzőkhöz csak két láb kell (igaz, UART), cserébe kapsz nyomógombokat is, érintésre érzékeny kijelzők ezek.
Nem értem, hol itt a probléma:
Rádió (SDI,SDO, SCK, CS) = 4 LCD és RTC közös I2C buszon = 2 (Az MSSI modullal) Beep = 1 Backligth = 1 Keyboard 5+4 = 9 PIC (Vcc, Vdd, MCLR) = 4 Összesen 21 láb. A 18F2K22 28 lábú tokban van, ha kevés mégis, akkor18F46K22 (40 láb). Az SPI kommunikáció programozott megoldása nem túl bonyolult feladat. RB0..3: MSSI2(SPI rádio), RB4..7: IOC(Keyboard col vonalak) RC0: Beep, RC1: Backlight, RC2..3: MSSI1 (I2C), RA0..4: PORT (Keyboard raw vonalak) RA5, RC6, RC7 szabadon maradt. Vdd, 2* Vss, RE3 - MCLR.
Köszönöm. Igen, közben Bakman mondta, hogy jó az úgy, csak szerettem volna a hardveres megszakítást használni az RB porton a gombokhoz. Tudom, hogy szoftveres polling is van, de nem szeretem az össze-vissza kötözéseket. Mindig van egy elképzelésem (általában hibás) és ahhoz ragaszkodom, de megkérdezlek titeket, mert ti értetek hozzá. Aztán megszokom az újat.
Hmm és nem drága? Ez, amit használok 3400 körül volt. Külföldi rendelésekhez nem értek. Valójában nem én programozom, az enyém egyszerűbbnek tűnik programozás szempontjából.
Lehet, hogy a hmi programozása körülményesebb, bele kell ásni magát az embernek, több idő, több programozói pénz. Persze jobban néz ki, de ez csak egy db távirányító lenne, max négy eszköz ki-be kapcsolgatására. Ahhoz meg túl jó a hmi (talán).
Attól drágább a legolcsóbb is, pl: Bővebben: Link. Az is igaz, hog a kijelzőre is kell írni egy programot. Cserébe színes, érintésre érzékeny (nincs kapcsoló pergés). Csak mint ötletet dobtam fel, hátha. Egyébként nem olyan vészes a programozása, inkább WYSIWYG stílusú.
Köszönöm az ötletet, jó, de ez egy egyszerű dolog szerintem, ami nekem kell.
Idézet: „... csak szerettem volna a hardveres megszakítást használni az RB porton a gombokhoz.” ![]()
Köszönöm, teljesen jó. Egyébként, el voltam veszve a spi-ben, mert az rtc-nél is abban gondolkodtam, de így, hogy mondtad a kijelzőre is az i2c-t, megspóroltam egy portlábat (cs).
Gombokhoz hardveres megszakítást? Hányan szenvedtek már itt a fórumon is ilyennel, hogy az egyszeri gombnyomás a pergések miatt pl. 37 db. gombnyomást eredményezett. Sokkal egyszerűbb timer megszakításban (vagy az által időzítve a főprogramhurokban) másodpercenként 30-szor lekérdezni a gombok állapotát. Így könnyen megoldható a hosszú-rövid lenyomás elkülönítése is, meg a folyamatosan lenyomott gombbal az ismételt végrehajtást is meg lehet oldani (mint egy PC billentyűzetnél).
Egy távirányítónál, ami az ideje javát alvással tölti (sleep) jól jön az IOC megszakítással való felébresztés. Apropó a rádió modult tápfeszültségét nem kellene kapcsolni tudni a fogyasztás csökkentése céljából?
Köszönöm a kérdést. Nem gondoltam rá, és nem néztem meg annyira az adatlapját, ezek szerint van egy errevaló láb. Valami rémlik, de majd utánanézek. Kevés időm van, és nem is olyan egyszerű, mint gondoltam. A táphoz még be kell tenni egy tps63001-et, hogy a 3.7V akkuból 3V3-at csináljon.
Köszönöm az észrevételt. Nos, én nem értek hozzá, de a skandi elektronikás Májkinál láttam, hogy így csinálja és gondoltam, ha neki ez így megfelel, akkor nekem is jó lesz.
Igen, altatáskor tényleg hasznos az IOC, de én csak az ébresztést bíznám arra, a tényleges lekérdezést továbbra is időzítővel csinálnám. Arra is használható az időzítős verzió, hogy mérjük a legutolsó lenyomás után eltelt időt, és ha elegendő idő letelt (és más feltételek is megengedik) ismét mehet aludni a mikrovezérlő.
Ha nem lenne rá dedikált láb, akkor egy P-MOS FET -tel is meg lehet oldani.
Az első megszakítás után le lehet tiltani, de akkor is célszerű lenne egy timer az ujraengedélyezéshez.
A láb pollingját meg tudja spórolni az IOC-vel, ha ez számít egyáltalán valamit.
Úgy néztem nincsen, de szoftverből valami PA bit-tel el lehet küldeni sleep-be. Köszönök minden észrevételt, hozzászólást. Tudtok valami egyszerű tokozású feszstabot, ami 3.3V-t csinál a 4.7V-s li-po ból? A tps63001-et találtam, de még szoknom kell.
MP2315, sot23-8, de 4,5V az ajánlott minimális feszültség, és csak feszsültség csökkentő. Viszont Kínából nagyon olcsó.
Mi benne az, amit "szokni" kell? Impulzus jelleggel extrém terhelésed van a hajtott körben és ugrál a kimeneti feszültség?
A tokozást kell szoknom, elég fura, nem szeretem az ilyeneket, inkább valami soic lett volna jobb. Akkor marad az.
Azzal azt szokás kezdeni, hogy breakout boardokat keresel egyben, és - jellemzően - furatos panelra szereled őket tüske sorral vagy rákábelezel. Az a két design jellemző. Ha breakoutokat kell használni, azok jellemzően olyan olcsók, hogy a házhozszállítás kerül többe, nem a panel. Azért érdemes a Kínaiaktól rendelni, mert ők ingyen is szállítanak házhoz (igen, a világ másik végéből), de a "Super Saver" opcióval kicsit vicces a szállítási idő. Nekem eddig másfél héttől 2 és fél hónapig minden előfordult. Azokat a típusjeleket nem találtam meg, de akad helyette más.
Több tucat LDO-t lehet találni ha keresel.
Sziasztok!
Lenne egy kis gondom a pickit3 programozómmal. Ebay-ről rendeltem még régebben, használtam is elég sokat, de valami miatt egyik pillanatról a másikra nem hajlandó felprogramozni a kontrollert... Több pic ic-vel; és fejlesztőkörnyezettel megírt hex file-lal is kipróbáltam már, de ugyanaz az eredmény... Először kiírja, hogy pickit3 connected, de ha rákattintok az import hex-re, akkor device error, hex file not loaded-et ír ki (piros háttérrel), majd ha a write-ra, akkor no device detected-et ír ki a pickit3 programmer, immáron sárga háttérrel... Fizikai elkötés egészen biztos nincs, egyszerű tesztáramkörrel van összerakva... Tehát az lenne a kérdésem, esetleg tudnátok segíteni, hogy mi lehet a hiba? Találkozott már valaki ezzel? Köszönöm a segítségeteket előre is, nagyon fontos lenne egy sulis cucc miatt... ![]() |
Bejelentkezés
Hirdetés |