реклама на сайте
подробности

 
 
> STM32 Массив IO регистров и доступ к ним, Как сделать?
mantech
сообщение Jan 31 2014, 06:17
Сообщение #1


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Приветствую.
Вопрос конечно глупый, наверно, но все-таки - есть группа регистров таймеров, к которым до недавнего времени обращался как TIM1->CCR1 = nnnn и все нормально, но пришлось создать массив таких регистров, чтоб делать примерно так - TIM_PWM[1] = nnnn без всяких кейсов и ифов

И уж до кучи - как вообще записать произвольное число в память по произв. адресу?

Вопрос- как это сделать в стм32f4 ?

Сообщение отредактировал mantech - Jan 31 2014, 06:18
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 3)
megajohn
сообщение Jan 31 2014, 07:04
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 080
Регистрация: 16-11-04
Из: СПб
Пользователь №: 1 143



навскидку типо так

typedef struct{
uint32_t volatile* PR;
uint32_t volatile* PC;
uint32_t volatile* CR;
uint32_t volatile* MR;
}S_my_timer;


S_my_timer my_timer[] = {
{ &LPC_TIM0->PR, &LPC_TIM0->PC, &LPC_TIM0->CR0, &LPC_TIM0->MR0 },
{ &LPC_TIM1->PR, &LPC_TIM1->PC, &LPC_TIM1->CR0, &LPC_TIM1->MR0 },
{ &LPC_TIM2->PR, &LPC_TIM2->PC, &LPC_TIM2->CR0, &LPC_TIM2->MR0 },
};

*(my_timer[0].PC) = 0xABCD;



по произвольному адресу так
*((uint32_t*)0x10000000) = 0x1234;


--------------------
Марс - единственная планета, полностью населенная роботами (около 7 штук).
Go to the top of the page
 
+Quote Post
VAI
сообщение Jan 31 2014, 08:03
Сообщение #3


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



А лучше
Код
const S_my_timer my_timer[] = и т.д.


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 31 2014, 18:33
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(megajohn @ Jan 31 2014, 11:04) *
навскидку типо так


Спасибо, попробую cool.gif
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th August 2025 - 14:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01279 секунд с 7
ELECTRONIX ©2004-2016