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

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

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

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

*((my_ptr_t*)a) = b

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