Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Nézegettem a forráskódot, de nyilván nem is pwm-ről megy, csak szimpla led villogtatásról.
Az alap forráskód ez,
de az analogWrite sor nincs benne, a kapcsolási períódus meg 11. Nem értem, hogyha 13 a kimenet, az analogWrite (10, pwm) mit defínál? A hozzászólás módosítva: Aug 19, 2015
Most nem értem... a 13-as, vagy a 10-es lábon van a V0 bemenet? A 13-as lábat fél másodpercenként felvillantod (ez kontrasztnak biztosan nem jó), a 10-esre pedig egy 1.18% kitöltési tényezőjű PWM jelet írsz. A 11 "kapcsolási periódus" az micsoda?
Én nem értem az egész kontraszt/PWM okoskodást!
Az LCD „VEE” kimenetén –V(MÍNUSZ V!) feszültség van! Ezt kel a potméter jobb végére kötni, a másik végére a +VDD kötendő. A csuszka kerül az LCD V0 Contrast bemenetére! Igy lehet a megfelelő –feszültséget beállítani az LCD Contrastnak! Nem paszíóból építették az LCD panelekre a –feszültséget előállító egységet! PWM-el pedig nem lehetséges –V előállítani! Szerintem ezzel csak az LCD kristályszerkezetének lassú elöregedését gyorsítjátok fel! Kísérlet az LCD gyors tönkretételére? ![]() A hozzászólás módosítva: Aug 19, 2015
13 lébon van a V0, a 11 az a digitalWrite High/Low peridus, delay nincs, mert azzal csak jobban vibrálna.
Majd 4 óra körül otthon leszek, és berakom az én forráskódomat. kapu48: a kontrasztom így tökéletes, csak vibrál. Nyiván ez nem használ az lcd-nek, de ha szűröm, netán egyenirányítom egy gyors diódával, akkor ez a vibrálás megszűnik. De otthon megnézem majd Balázs linkjeit. A hozzászólás módosítva: Aug 19, 2015
Mit értesz azon, hogy tökéletes, csak vibrál?
A tökéletes az nem vibrál! Pont ez a vibrálás jelzi, hogy nem tökéletes! Pontosan a kristályszerkezet gyors átrendeződését jelenti. Ami idővel tönkreteszi a kristály folyadék molekuláit, és halványodni fog a kontraszt!
Tökéletes annyit tesz, hogy tökéletes. Pont jó! Nem halvány, nem látszik a nem vezérelt pontok, csak vibrál kicsit, amit leginkább oldalról nézve lehet észrevenni.
Nem szándékozom így hagyni! Mert ritkán pont 90°-os a betekintési szög, és zavaró. Hogy hamarabb tönkre meg? Időben mennyivel és mennyi ideig használható így. Azt hiszem, belföldi árfolyamban is néhány száz forintos tételek a 2x16-os kijelző. Engem az idő előtti tönkremenetele jelennesetben nem befolyásol. De mint írtam, nem így kívánom használni, csak próbálgatom a technika adta lehetőségeket! Egyébként abszolut romantikus oka van ennek a megoldásnak! ![]() ![]() A hozzászólás módosítva: Aug 19, 2015
De ha már itt reklámozod a butaságot!
Legalább tegyük, hozzá mik lehetnek a következményei. Nehogy más jóhiszeműen utánozzon. És porul járjon, amik után minket átkozzon! Egyébként javaslom inkább dobd el azt a próbapanelt! A hozzászólás módosítva: Aug 19, 2015
Dehogy reklámozok én bármi butaságot!
Én kipróbáltam valamit, amit előző hsz-ben jeleztem is, nem végső megoldásként alkalmazom!! Hogy ki mit utánoz, nem rajtammúlik, és mindamellett, nem is buzdítok rá senkit... A próbapanelt mejd eldobom, ha lesz másik, bár itt jegyzem meg, nem a panellel van baj, a vezetékek érvéghüvejei túl vékonyak, kimozdúlnak, meg a heli trimer vékony kivezetései... Lényegtelen...
Megnyugtatok mindenkit, kntraszt visszaatéve potira, PWM első rangú fényerő szabályozásra!
![]() Ha ezt össze tudnám hozni egy fényérzékelővel, az szupi lenne! ![]() A hozzászólás módosítva: Aug 19, 2015
Van ez a kis progi, ami kiírja sorosportra az IR HEX kódot:
Ezt a progit akarnám úgy átírni, hogy LCD-re írja ki. Eddig ezt alkottam:
De nem fordúl le. irrecv.resume(); sorralleáll, és ezt a hibaüzenete adja: Build options changed, rebuilding all LCD1_lecke.ino: In function 'void setup()': LCD1_lecke:13: error: 'irrecv' was not declared in this scope LCD1_lecke.ino: In function 'void loop()': LCD1_lecke:23: error: 'irrecv' was not declared in this scope LCD1_lecke:23: error: 'results' was not declared in this scope LCD1_lecke:26: error: 'results' was not declared in this scope LCD1_lecke:27: error: 'irrecv' was not declared in this scope 'irrecv' was not declared in this scope This report would have more information with "Show verbose output during compilation" enabled in File > Preferences.
Én ezt szoktam használni, nem tudom, hogy az a pwm minek, és hogy hol van a vevő pinje?
És itt van lcd-n is:
Köszi, kipróbálom, és összehasonlítom, mit rontottam el.
A pwm az lcd játtér világítás intenzitását vezérli. Van definiálva vevő pin az alap programban, az működik is. De az lcd-désből valóban hiányzik. Lehet ezt is kifogásolta.
Ezt is? Szerinted ha nincs definiálva, akkor honnan tudja, hogy hol van? Ez olyan mintha azt mondanám, hogy gyere el hozzám, a címem meg találd ki.
Ok, ok! Kopizáskor ezt nem vettem észre, hogy lemaradt, és a sekélyes angol tudásomnak kicsit sok volt a hibaüzenet. Na meg még a rutintalanság.
Tudom blőm dolog nagyon, de valahonnan el kell indúlni! ![]()
Most nézem, hogy nem is jó ir hex dekóder programot másoltam be, hanem már egy fabrikált programot!
![]()
Kipróbáltam a programodat, de csak tele írja a kijelzőt nullákkal.
![]()
IR vezérlést próbálgatnám, egyenlőre igen kevés sikerrel!
![]() Nagyjából összeollóztam egy kis programot, ami egy ledet lenne hivatott egy gombbal ki-be kapcsolni, de nem reagál a program. Lefordúl, de a gombot hiába nyomkodom, a led nem kapcsol be.
Ezzel több baj is van. A legnagyobb, hogy a két digitalWrite utasítás rögtön egymás után van, így csak egy rövid pillanat erejéig villan fel a LED, amit nem fogsz látni. Javaslom továbbá a kapcsos zárójelek megfelelő tabulálását, hogy lásd, mit zársz le velük. Például az ifet a második digitalWrite alatt lezártad, így a resume folyamatosan hívódik, nem csak vétel után.
A switch szintaktikáját nézd meg itt. A code után a 0xFFA25D nem kell. Nem tilos, csak az egy hatástalan utasítás. De egyébként egyetlen összehasonlításhoz nem szokás switchet használni.
Én így csinálnám:
Ez még pluszban villogtatja az Arduino saját LED-jét (D13) vételkor, és kiírja a kódot a soros monitorra, hogy könnyebb legyen a hibakeresés.
Köszi szépen!
![]() Nem fordul le! ![]() itt megáll:
Javítottma az rrecv szót irecv-re, de így is megáll. IR_on_off.ino: In function 'void setup()': IR_on_off:13: error: 'irecv' was not declared in this scope 'irecv' was not declared in this scope This report would have more information with "Show verbose output during compilation" enabled in File > Preferences. A hozzászólás módosítva: Aug 20, 2015
Az Arduino weboldálon nézegetem az eeprom-ba való infó eltárolását.
Az irást azt tökéletesen értem, minden iráskor ugrik egyet az adress hogy az eeprom élettartamát ne röviditsem drasztikusan. A kérdésem a következo lenne: Ha eltárolom az infot igy, akkor amikor vissza akarom olvasni hogy csinálom azt hogy mindig az utolsó beirást olvassa, vagyis az adress maximális értékeről olvasson ? A hozzászólás módosítva: Aug 20, 2015
Azt hogy tudom megoldani, hogy új ir gomb funkciókat adja hozzá?
Nem tudom még mindig kihámozni más programokból. Túl összetettek nekem még. ![]() Most azzal játszadozom, hogy az általad adott progit beleraktam az lcd programban, és azt kapcsolgatom ki-be vele. De szeretném belerakni, hogy pl, ha megnyomok egy másik gombot, a hozzárendelt nevet kiírja. De első lépésben azt értem el, hogy az új gombra kapcsolt be ki, nem vlt megszámozva a kód definiálás, de miután megszámoztam, nem reagál rá.
A programnak úgy kellene működnie, hogy az első kód fogadásakor bekapcsol, a második kód fogadásakor kiíraj az lcd második sorába a kért szöveget. A hozzászólás módosítva: Aug 20, 2015
Szerintem igy:
Vagy a mellekelt kodbol A hozzászólás módosítva: Aug 20, 2015
V1rusH: Úgy, ahogy Andykaaa mutatja, erre való a switch.
Andykaaa: Azt neked kell nyilvántartanod, hogy az EEPROM-ban lévő adat melyik címig érvényes. Ha reset után is tudni szeretnéd, akkor lehet pl. az első két bájtot arra dedikálni, hogy ott tárold, melyik az utolsó érvényes cím. Mondjuk ami ebben a tutorialban van példa, az nem a legjobb, az EEPROM-ot ugyanis nem erre szokás használni. Ökölszabályként elmondható, hogy kb. százezer újraírást visel el biztonságosan, mielőtt tönkremegy, ezért egy végtelen ciklusban folyamatosan írogatni nem a legjobb ötlet. Tipikusan olyan konstansokat, konfigurációs adatokat szoktak ott tárolni, amiket ritkán kell változtatni. Ilyenek lehetnek pl. egy programozható távirányító kódjai, menü nyelve, beléptetőrendszer kódja, stb...
Hát beállított értékeket szeretném tárolni benne, de ha az első, mondjunk 2 bajtot erre raszanom akkor tegyük fel hogy a 100000-edik irasnal csak az a 2 bajt lessz oda, vagy az egesz, a tobbi 510 is, UNO esetében ?
Ezt a bekopizott programot nem tudom életre kelteni!
![]() Ezt próbálnám vele összehozni:
De az első HEX kódnál megáll. A hozzászólás módosítva: Aug 20, 2015
Ott a hex érték elé tegyél 0x-t. tehát case 0xFFA25D:.
|
Bejelentkezés
Hirdetés |