LINUX.ORG.RU

История изменений

Исправление Eddy_Em, (текущая версия) :

BB_RCC_APB2ENR_3

Лучше так:

BB_RCC_APB2ENR->PORTB
Хотя, конечно, это нетривиально. Проще действительно BB_RCC_APB2ENR->BIT3. Определяем структуру
typedef struct{
  uint32_t BIT31;
  uint32_t BIT30;
...
  uint32_t BIT0;
} bits;
и задаем адрес
#define BB_REG_BASE    (0x42000000)
#define BB_RCC_APB2ENR_BASE  (&RCC->APB2ENR - PERIPH_BASE)
#define BB_RCC_APB2ENR    ((bits *) BB_RCC_APB2ENR_BASE)
И все, можно использовать BB_RCC_APB2ENR->BIT3 = 0/1

Исходная версия Eddy_Em, :

BB_RCC_APB2ENR_3

Лучше так:

BB_RCC_APB2ENR->PORTB
Хотя, конечно, это нетривиально. Проще действительно BB_RCC_APB2ENR->BIT3. Определяем структуру
typedef struct{
  uint32_t BIT31;
  uint32_t BIT30;
...
  uint32_t BIT0;
} bits;
и задаем адрес
#define BB_REG_BASE    (0x42000000)
#define BB_RCC_APB2ENR_BASE  (&RCC->APB2ENR - PERIPH_BASE)
#define BB_RCC_APB2ENR    ((bits *) BB_RCC_APB2ENR_BASE)
И все, можно использовать BB_RCC_APB2ENR->PORTB = 0/1