Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Az "lcd.println" helyett nem csak lcd.print kéne?
A hozzászólás módosítva: Dec 6, 2017
Köszönöm, ennyi volt a megfejtés.
Szia! Próbáltam,de igysem működik ,feltölti az eszközre de az ...Írok hibaüzenetet ha hazaérek.
Nos sajna úgy sem megy, a hiba ugyan az.
Idézet: „ Arduino: 1.8.3 (Windows 7), Alaplap:"Arduino/Genuino Uno" eBikeBatteryChargerDisplay:26: error: 'uTFT_ST7735' does not name a type uTFT_ST7735 tft = uTFT_ST7735(__CS, __DC, __RST); // KijelzĹ‘ inicializálása. ^ D:\_Arduino_1.8.3_\Projekt\eBikeBatteryChargerDisplay\eBikeBatteryChargerDisplay.ino: In function 'void setup()': eBikeBatteryChargerDisplay:35: error: 'tft' was not declared in this scope tft.begin(); // KĂ©pernyĹ‘ bekapcsolása. ^ D:\_Arduino_1.8.3_\Projekt\eBikeBatteryChargerDisplay\eBikeBatteryChargerDisplay.ino: In function 'void loop()': eBikeBatteryChargerDisplay:64: error: 'tft' was not declared in this scope tft.fillScreen(BLACK); // HáttĂ©rszĂn beállĂtása feketĂ©re. ^ exit status 1 'uTFT_ST7735' does not name a type Ennek a jelentésnek több információja lehetne a "Bővebb kimenet mutatása fordításkor" opció engedélyezésével a Fájl -> Beállítások-ban. ” Ha beteszem elé az "u" betűt, rögtön ki is feketíti a szöveget, nem marad narancssárga... (Nem tudom említettem -e már, erről a libről van szó.: uTFT-ST7735) A hozzászólás módosítva: Dec 7, 2017
Az include részben próbáld meg relációs jelek helyett idézőjelek közé tenni a TFT könyvtár nevét. A <vmi.h> a rendszerkönyvtárak számára van fenntartva, "vmi.h" pedig a sajátokéra.
Úgy akkor az #include -nál kékkel írja ki, de a hiba viszont ugyanaz.:
Idézet: „ eBikeBatteryChargerDisplay:26: error: 'uTFT_ST7735' does not name a type... ” A hozzászólás módosítva: Dec 7, 2017
Vmiért nem találja az IDE a könyvtáradat.
Ahogy én látom, a "megszokottól" eltérően ebben az esetben a mindenféle függvények nincsenek osztályba szervezve, nem tudsz létrehozni egy objektumpéldányt.
Ezek különálló, oldschool C stílusú függvények egy C programban. Nézd meg az example.c példát, világos lesz. A hozzászólás módosítva: Dec 7, 2017
Pedig elvileg ott van a helyén minden...
Ha erről a könyvtárról van szó, akkor szeg76-nak igaza van és rosszul használod.
Belenéztem és itt nincsenek osztályok, azaz nincs mit példányosítani sem. A hozzászólás módosítva: Dec 7, 2017
Hmmm, ok, akkor én itt kifújtam úgy érzem. Eddig tartott az én "tudásom".
Maradok az eredeti libnél, még ha sokat foglal is. Bár próbáltam keresni valami érthető doksit, hogy is lehetne dekrementálni, nem találtam... A hozzászólás módosítva: Dec 7, 2017
Hát, pedig eléggé szög egyszerűnek tűnik ez a lib. Nézd meg a példát.
Megnéztem, de hiába látom, úgysem értem.
Hasonlattal élve, ha valaki nem tudja az ABC -t (pl egy óvodás), hiába látja a betűket, leírni nem tudja, maximum lerajzolni... (Gondolom érthető a kettő közti különbség. Soha nem tanultam programozni, csak mondjuk a Ctrl+C, Ctrl+V kombinációt jól ismerem.)
Sziasztok!
Egy fogyasztásmérőn dolgozok (ACS712-20A-M, ellenállás osztó), ez egy NAS-ban lenne, Serial monitoron. Az lenne a kérdésem, hogy az ellenállás osztónak mennyi legyen az eredő ellenállása, olvastam már 10k-ról, de volt 100k nagyságrend is? A külső táp 12V, 10A-es, de a biztonság kedvéért én inkább 15V-ra tenném a maximumot. Még egy, érdemes külső referencia feszültséget használni, vagy elég ha időnként mérem a tápfeszt, Bővebben: Link?
Attól függ milyen pontosan akarod mérni, illetve mennyire félted az áramkörödet. Ha megmondod milyen követelményeket vársz el, akkor teszek javaslatot. Igazság szerint unom már beírni a rendes megoldásokat, hogy aztán vki mindig a legprimitívebb felé menjen el, mert az az egyszerű...
Köszönöm a válaszod!
A pontosság annyira nem gond, úgyis csak tájékoztató jellegű lesz, esetleg egy külső fogyasztásmérővel lehet ellenőrizni (persze itt már a táp vesztesége is benne lesz). A védelemről úgy gondoltam, hogy egy nagyobb teljesítményű, 5.1V-os zéner diódát teszek az osztó után (mivel eleve 15V a max, így szerintem szól bele a mérésbe, vagy nem jól gondolom?). Habár jobban bele gondolva, ha a táp elszáll, akkor úgyis viszi magával az áramkört is, mivel USB-ről megy (a táp Chieftec CDP-120ITX). Mondjuk kód szempontjából jobb választás lenne a külső referencia használata, mivel még más feladatok is lenének (hőmérséklet mérés, ventilátor vezérlés, kommunikáció az oprendszerrel). Nem akarok nagyon primitívet építeni, de pénz temetőt sem, van már egy projektem, ami már közel egy éve hiba nélkül üzemel (hűtőgép vezérlő).
Zener diódát nem használhatsz analóg bemenet védésre, mert nem egyenletes a karakterisztikája és így belehamisít a mérésbe (szivárgó áram + ellenállás, ráadásul negatív fesz ellen sem véd [külső hatások], illetve lassú is és túl magas feszen fog kis áramnál [küszöbfesz karakterisztika]). Szerencsésebb két schottky diódával védeni (az eredő ne legyen túl nagy, mert a schottky-knak is van szivárgó árama, 10-50k belefér). A mellékelt képen látható egy bemenetvédelem leválasztó pufferrel. A ellenállásosztó egyik ellenállása itt maga az erőszenzor, a PESD3V3S2UT diódák ESD védelemre vannak (a szenzort tapizom), a rossz fesszintek ellen pedig a BAT54S dupladióda véd. Az R14 neked nem kell (itt ugye hiányozhat a másik ellenállás és vmin esnie kell a fesznek ha behúz a dióda), a műveleti erősítő bemenete neked az analóg bemenet.
Külső referencia akkor kell, ha a betápod feszültsége nem eléggé stabil/pontos, illetve hőmérsékletfüggő (pl. USB táp, LM7805 és társai). Egy olcsó TL431 megteszi ilyenkor. A hozzászólás módosítva: Dec 9, 2017
Én nem használnám ezt az ACS-t. Szerintem árammérésre köss sorba egy kis söntöt a GND és a táplált eszköz földpontja között, pl. néhányszor 0,1 Ohm párhuzamosan. Ha ötöt kötsz párhuzamosan, akkor a 0,02 Ohm eredő ellenálláson 10 A esetén esik 0,2 Volt, ennek nem kellene befolyásolni a táplált eszköz stabilitását. Ha ezt egy opamp-pal 5x-ösre erősíted, akkor lesz egy 0-1V feszültséget, ami a belső 1,1V referenciához vizsgálva pont jó.
Feszültségnél szintén, az ellenállásosztó ellenállása csak a meddő fogyasztását (és melegedését) befolyásolja, egy 150k-10k osztóval tizenhatodára csökkented 12V-ot, ez szintén jól vizsgálható az 1,1V referenciához képest. Az 1v1 referencia kalibrálásához használhatsz egy TL431 + soros ellenállás +feszültségosztó áramkört, a kb. 2,45V referenciát leosztod a harmadára és megméred az ADC-vel.
Értem, akkor a zéner helyett schottky lesz. Több helyen olvastam, hogy a bemeneti opát nem javasolják a plusz számítások, hibák miatt (Arduino-s feszültség mérésnél jobbnak tartják a sima ellenállás osztót). Az eredőt meg 25k-ra méretezem (arany középút).
Nem tudom, hogy kell-e nekem ESD védelem, mivel az alaplap eleve védett a gyártó szerint (Bővebben: Link), az egész áramkör a PC belsejében lesz (nem lesz tapizva), a külvilág felé csak a táp (12V) és az UTP kábel megy. Maga a ház test potenciálon lesz, a földelés az táp függő (nem ismerem a felépítését). Igen, a betáp nem stabil (mint ahogy a PC-ben szokás), USB-ről menne (már csak a kommunikáció miatt is kézenfekvő), így akkor lesz külső referencia feszültség. A hozzászólás módosítva: Dec 9, 2017
Egy átlagos műveleti erősítő ofszetfeszültsége 1-2mV. Ha ez gondot jelent akkor már úgy is kalibrálni kell az eszközt (az ellenállásosztó sem annyira pontos, ugye). Egy olcsó LM358 (LM324) például nagyon komoly bemenetvédelemre képes, sokan nem veszik észre az adatlapjukon, hogy van egy különleges képességük, mégpedig a max. 32V-os bemeneti feszültség a tápfesztől függetlenül! Ez egy ritka tulajdonság a műveleti erősítők között és a filléres árukat is figyelembe véve remek bemeneti védőpufferré teszi őket.
Az ESD védelem neked sztem sem kell, csak épp ilyen mintát másoltam be a KiCAD projektemből. Amit tbarath írt, használható megoldás bár miután fogyasztásmérés a feladat így gondolom normálisabb pontosságot vársz el a projekttől. Az általa vázolt esetben nagyon pontos alkatrészválasztásra van szükség a jó eredményhez, ezért én inkább egy cél IC-t használnék erre a feladatra (pl. INA sorozat darabjai a Texas Instrumentstől, vannak beépített erősítésű analóg [pl. x250-es], illetve buszos [pl. I2C] verziók is). Söntellenállásnak pedig egy konstantán ellenállást (mondjuk pár mOhm körül, az INA-k sokkal nagyobb erősítésre képesek) a nagy áram miatt (minek pocsékoljuk az energiát ugye). A hozzászólás módosítva: Dec 9, 2017
üdv!
Építettem egy Arduinos kocsit.
Írtam hozzá alkalmazást telefonra, és megy is vele. Egy bizonyos elküldött jel után nem érzékeli az elküldött jelet. Szóval: ha előre megy, és elengedem a gombot, akkor addig megy előre, amíg nem Resetelem a programot. Legyen szíves valaki segíteni a hiba kiküszöbölésében!
Köszönöm a válaszokat!
Akkor marad a következő felállás a fesz mérésre, ellenállás osztó (0.1%), 2 schottky dióda, LM358. A referencia fesz is lesz (úgyis kell az áramerősség méréshez is), MCP 1541 személyében. Az INA egyelőre nem lesz, már meg van rendelve az ACS, de ha nem válna be, akkor a következő mindenképpen INA lesz.
Nincs lekezelve az az eset, amikor nem kap jelet.
1%-os ellenállás bőven elég lesz. Műszerrel majd után méred és korrigálod programból. Az LM358 nem rail-to-rail kimenetű (ezért ha használod, akkor inkább egy 2,5V-os referenciát használj, mert akkor nem probléma, hogy csak kb. 3,5V-ra megy fel a kimenet 5V táp esetén), a schottky-k elegek lesznek védelemnek.
Azt hogyan lehet?
Két lehetőség van, nem tudom melyik igaz az esetedre:
1. ha ilyenkor nem jön karakter, akkor az if(Serial.available()>0){} után kellene egy else ág, és oda tenni amit kell 2. ha ilyenkor is jön valamilyen karakter (csak nem azok, amiket már lekezelsz, hanem pl. egy space, vagy ilyesmi), akkor a switch{} default ágábe kellene tenni amit ilyenkor kellene csinálnia A hozzászólás módosítva: Dec 9, 2017
Tudná módosítani ez alapján a kódot?
Mármint mi alapján?
Annyit tudok, amit ide beírtál. Hogy arduino-s kocsi, és látom a kódot, amiben 4 digitális kimenet fel-le kapcsolgatásával vezérled, a 4 low az az állj. Már ha jól értem. Írtam valamit, de egyáltalán nem biztos, hogy azt csinálja, amit szeretnél. Ha nem kap jelet, akkor megáll. Ha kap jelet, de az nem A, C, E, G, I, J, K, vagy L, akkor megáll. A delay-t megnöveltem 10 millisec-re, remélhetőleg ennyi idő alatt jön input, ha tolod neki folyamatosan. Ha nem, akkor még ez is növelhető, 50-100 msec delay szerintem belefér.
Szeretnék csinálni egy 5 elemű tömböt, azt feltölteni float változókkal. (ez eddig nem gond)
A legnagyobb és legkisebb érték kivételével, szeretnék átlagolni (a maradék 3 elemet). Tudnátok benne segíteni?
1. felveszel 2 változót, legyen a nevük min és max.
2. min és max értéke is a tömb első eleme legyen 3. ciklusban végigmész a tömb maradék elemein (2-5), ha az adott elem kisebb mint a min, akkor min értékét erre állítod. Ha az adott elem nagyobb, mint a max, akkor a max értékét erre állítod. 4. felveszel 2 változót, darab és osszeg, mindkettő értéke nulla 5. ciklusban végigmész a tömb összes elemén (1-5), ha az adott elem nem a max és nem a min, akkor az elemet hozzáadod az osszeg-hez, és a darab értékét eggyel növeled 6. elosztod az osszeg értékét a darab értékével, így kapsz átlagot - persze csak ha a darab > 0, mert ha nem, akkor egyetlen vagy 2 különböző értéket tartalmaz az összes tömbelemed. A hozzászólás módosítva: Dec 10, 2017
|
Bejelentkezés
Hirdetés |