ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
10 июля
304604 Топик полностью
Юрий_СВ (04.02.2012 00:46 - 00:52, просмотров: 128) ответил AD на По порядку
2) Запись с разрядностью менее 32 бита. В описании RM0041 для каждого вида периферии ОТДЕЛЬНО указаны возможности адресации: 4.4 Power control registers can be accessed by half-words (16-bit) or words (32-bit). 5.4 BKP registers can be accessed by half-words (16-bit) or words (32-bit). 6.3.1 Clock control register (RCC_CR) Access: no wait state, word, half-word and byte access 7.2 GPIO registers have to be accessed by words (32-bit). 7.4 AFIO registers have to be accessed by words (32-bit). 9.4 DMA registers can be accessed by bytes (8-bit), half-words (16-bit) or words (32- bit). 10.11 ADC registers have to be accessed by words (32-bit). 2.4.21 TIM1 register map TIM1 registers are mapped as 16-bit addressable registers 19.6.1Control register (WWDG_CR) Address offset: 0x00 Reset value: 0x7F Т.е., регистры бывают с такими видами адресации: 1)только 32 (GPIO, AFIO, ADC) 2)только 16 (TIM) 3)возможно, 8 (WWDG) 4)32 и 16 (Power control, BKP) 5)32 и 16 и 8 (RCC_CR, DMA) Это значит, что в разной периферии задействован разный набор сигналов HSIZE[2:0] и HADDR[1:0]. Минимальный для 1-го случая и максимальный - для пятого. Т.е. для 5-го случая имя полный набор сигналов(дешифрация байтовых трактов)+фокус с перестановками/повторами (duplicate) можно выполнять настоящую невыровненную байтовую и выровненную только по полусловам полусловную запись. Есть и промежуточные варианты. Но ПАРАДОКС в том, что в описании (раздел 9.3.4) фокусы с перестановками предлагается для 1-го случая (минимальный набор сигналов) - там, где они бесполезны. Запись всегда будет выровнена и всегда пословно. А при запись с разрядностью менее 32 - будет что попало. Долго не мог вьехать - почему так. Видимо, .. это ошибка.