STM32 _Msk- und _Pos-Definitionen zum Lesen und Schreiben von Registern verwenden

English Deutsch

Die STM32 HAL enthält Definitionen wie TIM_CR1_CKD_Msk oder TIM_CR1_CKD_Pos, die verwendet werden können, um das Lesen oder Schreiben von Teilen eines Registers zu erleichtern.

Teil eines Registers lesen

read_register.cpp
uint32_t ckd = (TIM1->CR1 & TIM_CR1_CKD_Msk) >> TIM_CR1_CKD_Pos;

Teil eines Registers schreiben

write_register.cpp
uint32_t new_ckd_value = TIM_CLOCKDIVISION_DIV4; // example
TIM1->CR1 &= TIM_CR1_CKD_Msk; // Clear bits
TIM1->CR1 |= new_ckd_value << TIM_CR1_CKD_Pos; // Set bits

Check out similar posts by category: C/C++, STM32