Наткнулся вот на такое и, честно говоря, мозг поехал...
Код
unsigned char data_code[8192];
unsigned int *pp;
pp = (unsigned int*)&data_code;
for (counter_en=0; counter_en<8*1024; counter_en++)
{
*pp++ = counter_en;
}
...
unsigned int *pp;
pp = (unsigned int*)&data_code;
for (counter_en=0; counter_en<8*1024; counter_en++)
{
*pp++ = counter_en;
}
...
встаю отладчиком за циклом, смотрю байтовый массив
Все значения появляются с 8-го байта (ну и т.д. - 16, 24, 32...)
Сделал указатель unsigned short - теперь 4 байта
Мой LPC2478 заделался атомом?

У компилятора такая строка в параметрах:
Код
-c --cpu ARM7TDMI -D__MICROLIB -g -O0
-I "C:\Program Files (x86)\Keil\ARM\RV31\INC"
-I "C:\Program Files (x86)\Keil\ARM\CMSIS\Include"
-I "C:\Program Files (x86)\Keil\ARM\Inc\Philips"
-o "*.o" --omf_browse "*.crf" --depend "*.d"
-I "C:\Program Files (x86)\Keil\ARM\RV31\INC"
-I "C:\Program Files (x86)\Keil\ARM\CMSIS\Include"
-I "C:\Program Files (x86)\Keil\ARM\Inc\Philips"
-o "*.o" --omf_browse "*.crf" --depend "*.d"
UPD
В общем так
Будте аккуратнее и внимательнее. Если смотреть в отладчике, значения массива отображаются некорректно
Если смотреть кусок памяти, в котором лежит массив, то там все в порядке
Пока то, с чем это связано, непонятно. Скорее всего, глюк Keil
Сейчас проверю с ULINK2 (до этого был J-Link ULTRA)
Еще UPD
ULINK2 работает нормально
Кто глючит - 4.70a и J-Link - надо разбираться, кто там из них... но, скорее всего, Keil