ВходНаше всё Теги codebook PARTS Поиск Опросы Закон Четверг
24 сентября
/1035647
Топик полностью
lloyd (11.09.2020 18:08, просмотров: 129) в ответ на #5 Объявление "*(__IO uint32_t *) CR_LCDEN_BB = (uint32_t)NewState;". Правильно я понимаю, что CR_LCDEN_BB - указатель на 32-разрядное слово в пространстве ввода-вывода? Т.е. скобки в (__IO uint32_t *) используются для создания "композитного" определения - "указатель на слово в памяти В/В"? - автор: teap0t
У ARM плоское адресное пространство, там нет "пространства ввода-вывода" (ну, кроме фактического диапазона адресов). __IO - это макрос для volatile в CMSIS. 

> для создания "композитного" определения

Сложно. Просто использовать адрес CR_LCDEN_BB, как волатильный указатель на uint32_t.

Вообще у кода для наглядности скобок не хватает

*((my_ptr_t*)a) = b

Использовать a как указатель и записать в него b

Ответить
Ответы