пишу полд ИАРом
Вот кусочек кода с дизасмеблером
unsigned char bb, cc, dd, ee;
ADC12MEM0 = 0x0456;
008130 40B2 0456 0140 mov.w #0x0456,&ADC12MEM0
bb = *((unsigned char*)0x140);
008136 42D2 0140 0200 mov.b &ADC12MEM0,&bb
cc = *((unsigned char*)0x141);
00813C 425C 0141 mov.b &0x141,R12
008140 4CC2 0201 mov.b R12,&cc
dd = ( (unsigned char*) & ADC12MEM0) [1];
008144 42D2 0141 0202 mov.b &0x141,&dd
ee = ( (unsigned char *) ADC12MEM0_) [1];
00814A 42D2 0141 0203 mov.b &0x141,&ee
В програмной эмуляции
происходит желаемое
в bb младший байт
в сс dd ee старший байт.
за пускаю на железе
во все (bb cc dd ee) пишет младший байт
Почему даже понять не могу