Strana 1 z 1

Arduino, jeden kod, rozdielne velkosti po preklade

Napísané: 14 Apr 2020, 14:08
od používateľa epto
Zdravim,

Skusam ozbehat meteostanicu, kde meriam teplot, vlhkost, smer vetra, rychlost vetra, tlak a zrazky. Kniznica je pouzita iba pre cidlo vlhkosti)teploty a tlaku. To funguje vporiadku.
Pri merani rychlosti vetra vyuzivam meranie casu medzi 4 impulzami z rychlomeru (2 impulzy na otacku).
Meria to celkom presne (kontrolovane podla otacok vrtacky, ktore su +- zname, mam mat 350 ot/min zmeral som 327 ot/min).
Z uvedeneho usudzujem, ze principialne je kod v poriadku.
Stalo sa mi vsak, ze po urcitom case sa vysledna rychlost zasekla na jednej hodnote a uz sa nemenila. Po restare to zas chvilu islo a potom znovu sa zaseklo. Kedze ariadenie je namontovane vonku, kod som preniesol do NTB, aj vsetky kniznice, skompiloval a nahraj do arduina (doska s ESP32)
Zarazila ma vsak velkost kodu skompiovaneho na PC (cca 219kB) a v NTB(200kB). Rozdiel je 20kB co je 10%. Pre istotu som nakopiroval kniznice z PC do NTB, pouzil rovnaku verziu IDE a vysledny kod mal rozdielnu velkost.
Netusite cim by to mohlo byt? (Na PC an na NTB bezi rovnaky OS - Mint )

najvacsia zahada je, ze ked som stanicu preniesol kvoli mechanickej oprave do dielne, zmenil som v programe iba dobu bliknutia LED (skratil som dobu svitu z 300ms na 100ms, cize zmena z delay(300) na delay(100) a nahral do ESPcka tak kod mal tych cca 219kB a zamrznutie sa prejavilo znovu!

Nechapem v com je problem, co je o tolko ine v prelozenom kode, ze je ina velkost a zrejme aj funkcnost/nefunkcnost.

Este mam v plane uplne rovnaky kod nahrat raz z PC a raz z NTB pre overenie, ze kod z PC zamrza...

Poznamka:
oprava kodu spocivala iba v deklarovani premennych co sa menia v obsluhe prerusenia, ako volatile.

Napadlo ma ci kompilator v PC ignoruje nastavenie volatile pre premenne a kompilator v NTB to respektuje.
Este poznamka, zamrzne iba meranie rychlosti, zvysok funguje dalej.

Budem vdacny za kazdu radu

Re: Arduino, jeden kod, rozdielne velkosti po preklade

Napísané: 14 Apr 2020, 14:22
od používateľa dan21
Nie som Arduinista, ale skus porovnat verzie jednotlivych pouzitych kniznic. Potom verziu Arduina IDE ......

Re: Arduino, jeden kod, rozdielne velkosti po preklade

Napísané: 14 Apr 2020, 14:25
od používateľa epto
Ako som pisal, kniznice aj IDE maju rovnake verzie v PC aj v NTB.

Re: Arduino, jeden kod, rozdielne velkosti po preklade

Napísané: 14 Apr 2020, 14:48
od používateľa rudko
nastavenia kompilatora?

Re: Arduino, jeden kod, rozdielne velkosti po preklade

Napísané: 14 Apr 2020, 15:05
od používateľa dan21
verzia kompilatora ?

Re: Arduino, jeden kod, rozdielne velkosti po preklade

Napísané: 14 Apr 2020, 15:18
od používateľa pocitujlasku
kedze Mint, tak predpokladam, ze arduino pouziva gcc zo systemu a to bude v rozdielnych verziach