Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
ByteOperations.cpp
00001 #include "ByteOperations.h" 00002 #include <stdint.h> 00003 00004 00005 /* low index equals low nibble */ 00006 /* Write 32 bit var to 4 bytes */ 00007 void write_32_to_8(int *i, uint8_t dst[], uint32_t src){ 00008 dst[(*i)++] = (src >> 0)&0xFF ; 00009 dst[(*i)++] = (src >> 8)&0xFF ; 00010 dst[(*i)++] = (src >> 16)&0xFF; 00011 dst[(*i)++] = (src >> 24)&0xFF; 00012 } 00013 00014 /* Write 16 bit var to 2 bytes */ 00015 void write_16_to_8(int *i, uint8_t dst[], uint16_t src){ 00016 dst[(*i)++] = (src >> 0)&0xFF ; 00017 dst[(*i)++] = (src >> 8)&0xFF ; 00018 } 00019 00020 /* Write 4 bytes to 32 bit var*/ 00021 uint32_t read_8_to_32(int *i, uint8_t *src){ 00022 uint32_t data = 0; 00023 data |= (src[(*i)++] << 0) ; 00024 data |= (src[(*i)++] << 8) ; 00025 data |= (src[(*i)++] << 16); 00026 data |= (src[(*i)++] << 24); 00027 return data; 00028 } 00029 00030 /* Write 2 bytes to 16 bit var*/ 00031 uint16_t read_8_to_16(int *i, uint8_t *src){ 00032 uint16_t data = 0; 00033 data |= (src[(*i)++] << 0) ; 00034 data |= (src[(*i)++] << 8) ; 00035 return data; 00036 } 00037
Generated on Mon Jul 18 2022 01:28:39 by
1.7.2