Arduino - 32 bitu promenna ze 4 byte
Pavel Hudeček
edizon na seznam.cz
Neděle Prosinec 15 17:18:49 CET 2024
A pokud je to opačně, tak ten long dát do unionu s polem bajtů a
nakopírovat po jednom ve správném pořadí.
Přesnější rady by mohly být, kdyby byl k dispozici ten kód co fungoval a
ten co nefungoval. Možná tem jenom někde chyběl &, možná tam indiáni
bojujou.
PH
Dne 15.12.2024 v 16:59 Martin Locker napsal(a):
> Za předpokladu, že je to 8-bitové arduino a data jsou little endian,
> tak třeba takto:
> long x;
> memcpy(&x, &RX[7], 4);
> nebo
> long x = *((long*)&RX[7]);
>
> Martin Locker
>
>
> ----- Původní zpráva -----
> ------------------------------------------------------------------------
> Odesilatel: Jirka Mww (jirka.mww na gmail.com)
> Datum: 15/12/2024 16:22
> Příjemce: HW konference (hw-list na list.hw.cz)
> Předmět: Arduino - 32 bitu promenna ze 4 byte
>
> dobr7 den,
>
> zase bych potreboval poradit : Mam 4 byte v poli RX[7] az RX[10]
> (prijata modbus zprava)
> a potrebuji z nich udelat 32 bit proměnnou (log int). Postupne
> nacitani a posuny o 8 bitu do leva mi funguje, ale radeji bych to
> nejak prekopiroval rovnou, kvuli rychlosti. Zkousel jsem pouzit
> memcpy , ale asi to delam blbe, muzete mi dat nejaky tip , jak to
> udelat ? V assembleru bych to umel ((::
> Zdravi
> Jirka Sloupenský OK1MWW
> ------------------------------------------------------------------------
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz <http://www.HW.cz>
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
> _______________________________________________
> HW-list mailing list - sponsored bywww.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20241215/0bea4b34/attachment.htm>
Další informace o konferenci Hw-list