Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Szia!
Igen, rosszul tudod. Ha az alábbit berakod a setupba, bekapcsolod a belső referenciát: analogReference(INTERNAL); analogRead(0); Ez után az Aref kivezetésen meg tudod mérni, hogy pontosan mennyi is ez.
A Megában 2 referencia van 1.1V és 2.56V.
Csináltam feszültség osztót 5v-ot 1v-ra. Ezt akkor hogyan is kellene át állítani hogy jól számoljon mert most 0.76V ir annyit ami a feszültség osztóból kijön kb.
float voltage = sensorValue * (5.0 / 1023.0);
Ebben a sorban kellene az 5.0-át (a régi referencia értékét) lecserélni a jelenlegi referencia feszültségre.
Az így kevés, mert nem veszed figyelembe az osztást ( azzal vissza kellene szorozni ! ) !
Igaz.
Akkor vagy nem a belső referenciával mér, vagy máshol van a gond.
Referencia feszt én bele veném a számitásba... vagy ha nagyon pontos mérés kel akor valami külsö dac ha szükséges a pontos mérés persze.....
A külső DAC is csak annyira lesz pontos, amennyire sikerül bekalibrálni, és amennyire pontos a referencia feszültség. A belső 10bit-es ADC-vel is el lehet érni megfelelő pontosságot, ha rendesen meg van csinálva a rendszer.
pl nagyobb minta vételetést meg kisseb zajú lehet ileszteni ha a felhasználás igényli....
Csak egy pl irnék ide mekora a verseny audió technikába DAC minta vételezés és zaj fügvényében... Ez mérésnél is igaz! A hozzászólás módosítva: Dec 25, 2016
fesz mérés példa...
Minek átlagolsz 100x, ha úgyis a tápfeszültség a referencia, plusz az ellenállásoknak is van bőven toleranciája, tehát a 20K-s nem 20000 ohm értékű? Értelmetlen a dolog. Akkor inkább egy megmért TL431 vagy belső referencia, esetleg egy 4.096/2.048V-os spéci pontos referencia, amit mérni sem kell, és 0.1%-os ellenállások, vagy pedig rendes kalibrálás végérték közelében.
Ezért írtam, hogy berakhatsz 40bit-es DAC-ot is, ha a tápfeszültséget veszed referenciának, vagy bármi mást, aminek a saját hibája összemérhető a DAC felbontásával. Az ellenállásnak is van hőfokfüggése, ha már pontos mérést szeretnél. A hozzászólás módosítva: Dec 25, 2016
Tudna valaki olyan megoldást uart alati komunikáciora titkositási modszert ami nem nagy rendszer igény ami nem igényel nagy mcu és sávszéleség számitást?
Valami ugró jelegü titkositás lenne jó!
A legegyszerűbb, ha generálsz egy véletlenszámot (kulcs) azt beteszed a frame-be valahova és ezzel exor-ozod a többi adatbyte-ot. Ha valaki tudja az eljárást, akkor gyorsan visszafejthető, de hát nem kell kitapétázni vele a készülékek hátoldalát. Tehetsz még bele redundáns byte-okat (vagy biteket), de ez nem nagyon növeli a sávhasználatot és faék egyszerű. (nem beszélve arról, hogy mindig betalál, ellentétben az ugrókódos dolgokhoz képest)
Nem használok Arduinot, nem tudom. RND biztos van, aztán azt, hogy egy tömb elemeit végig exor-ozd, gondolom, nem olyan nagy feladat. Persze kérdés, hogy mekkora adatmennyiséggel dolgozol, azt nem írtad.
Nagy kár hogy nem értetem amit le irtál ez nagyon programozoi nyelv igy nekem...
Mintapéldákbol össze szoktam rakni ha elérhetö..... köszönöm!
Mint kezdő kérdezem,hogyan kell egy szubrutint meghívni futó programból és a szubrutint hol kell/lehet elhelyezni?Ha lehet rövidke mintával,mert az írásjelekkel még nem békültem ki egészen.
Ezt magas szintű programozási nyelvekben (mint pl. az Arduino által is használt C++) szubrutin helyett függvénynek hívják. Mellékeltem egy rövid példát a kötelező setup és loop függvényekkel, illetve két saját függvénnyel. Az egyik összead két számot, a másik számolja, hogy hányszor hívták meg.
A hozzászólás módosítva: Dec 26, 2016
Kösz
Nos igen,negyven éve sok assembler programot írtam és az mély nyomot hagyott bennem,ezt még szoknom kell.Na és akkoriban sajna az orosz nyelv volt kötelező,ez is hátráltat.
Miért nem tudom meghívni a "list"függvényt a loop-ból.
A loopban nem kell void a list() elé.
A hozzászólás módosítva: Dec 26, 2016
Ha nem teszem elé,azt írja hibának,nincs deklarálva.
Nálam lefut.
Mi is pontosabban a hibaüzenet?
"Mond" meg neki, hogy van "list" függvényed.
A "void setup(){" elé tedd be, hogy "void list();" Egyes Arduino IDE verziónak nem tetszik, ha az álltalad írt függvény a "Fő" függvény után van.
Ha "void"-al definiált a függvény! Azt jelenti: Nincsen neki visszaadót értéke.
Ezért nem kell bele return! Vissza talál az anélkül is.
A setup elé beírva valóban végrehajtja,ezek szerint elöl is hivatkozni kell rá,annak ellenére,hogy fizikailag a fő program után van.
Okés kösz.
Ez azért van így, mert a fordítóprogram az elejéről kezdi feldolgozni a forrásfájlt, és nincs külön menet, ahol összegyűjti, hogy milyen függvények vannak a forrásban. Amikor a list(); függvényhívásodhoz ér, még nem találkozott a függvény definíciójával ezért még nem ismeri. Ennek feloldására két lehetőséged van. Vagy definiálod a list függvényed még a loop függvényed előtt, vagy a függvény kifejtését a loop elé teszed. Ezért szokott jellemző módon a main függvény a forrás végére kerülni, és az egymásból hívott függvények rendre a forrás eleje felé bővülnek.
Ui: kicsit rossz példa, mert az arduino-ban nincs main (illetve valószinüleg van, csak el van rejtve valahol a rendszerben). A hozzászólás módosítva: Dec 27, 2016
|
Bejelentkezés
Hirdetés |