const byte charSet[] PROGMEM = { 0x0, 0x8, 0x4, 0xc, 0x2, 0xA , 0x6, 0xE, 0x1, 0x9,0x5, 0xD, 0x3,0xB,0x7,0xF };
byte reversed[] = { 0x0, 0x8, 0x4, 0xc, 0x2, 0xA , 0x6, 0xE, 0x1, 0x9,0x5, 0xD, 0x3,0xB,0x7,0xF };
void setup() {
Serial.begin(115200);
byte ff;
for (int i=0; i < 16; i++) {
Serial.print(" ");
Serial.print(reversed[i], HEX);
}
Serial.println(" ");
for (int i=0; i < 16; i++) {
Serial.print(" ");
ff = pgm_read_byte(&charSet[i]);
Serial.print(ff, HEX);
}
}
void loop() {
}
returns
0 8 4 C 2 A 6 E 1 9 5 D 3 B 7 F
0 8 4 C 2 A 6 E 1 9 5 D 3 B 7 F
on my computer/arduino.
$ avr-gcc -v
Using built-in specs.
COLLECT_GCC=avr-gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/avr/4.7.1/lto-wrapper
Target: avr
Configured with: /build/src/gcc-4.7.1/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-languages=c,c++ --disable-libssp --disable-nls --target=avr --with-as=/usr/bin/avr-as --with-ld=/usr/bin/avr-ld --with-gnu-as --with-gnu-ld
Thread model: single
gcc version 4.7.1 (GCC)
$ pacman -Qi avr-libc
Name : avr-libc
Version : 1.8.0-4
URL : http://savannah.nongnu.org/projects/avr-libc/
Licenses : BSD
Groups : None
Provides : None
Depends On : avr-gcc
Optional Deps : None
Required By : None
Conflicts With : None
Replaces : None
Installed Size : 23684.00 KiB
Packager : schuay <jakob.gruber@gmail.com>
Architecture : any
Build Date : Sun Jun 24 01:12:18 2012
Install Date : Thu Jun 28 08:33:48 2012
Install Reason : Explicitly installed
Install Script : No
Description : The C runtime library for the AVR family of microcontrollers
arduino uno r2