Здравствуйте, господа!
Такой вопрос: можно ли обращаться к 32-разрядным регистрам LPC22xx как к 4 отдельным байтам?
Например, регистры Tx данных модуля CAN1, если задать массив по абсолютному адресу:
unsigned char DataA[4] _at_ 0xE0044038;
то при дальнейшей записи в этот массив записывается только элемент DataA[0], то есть
DataA[0] = 0x11;
DataA[1] = 0x22;
DataA[2] = 0x33;
DataA[3] = 0x44;
далее в регистре по адресу 0xE0044038 записывается только значение 0х11 или вообще "левое" значение.
В Юзер Мануале на 2294 в разделе CAN ничего про это не сказано, а вот в разделе про VIC сказано, что к регистрам VIC можно обращаться только как к слову (нельзя читать или записывать 1 байт или 2 байта, то есть полуслово), это относиться и к регистрам CAN?