[Feat] 定时器通道选择器
需求场景
FM33FR0xx PC端口,作为定时器功能时,在GPIO初始化代码后,需要增加额外的初始化代码。
例如如果PC5启用了TAU_TI04:
FL_GPIO_SetPC5TimerChannelSelection(FL_GPIO_CHSEL_TI04)
原型:
/**
* @brief Set PC5 Timer Channel Selection
* @rmtoll TMUXR PC5TMUX FL_GPIO_SetPC5TimerChannelSelection
* @param GPIOC GPIOC instance
* @param channel This parameter can be one of the following values:
* @arg @ref FL_GPIO_CHSEL_ATIM_CH1N
* @arg @ref FL_GPIO_CHSEL_TI04
* @arg @ref FL_GPIO_CHSEL_TO04
* @retval None
*/
__STATIC_INLINE void FL_GPIO_SetPC5TimerChannelSelection(uint32_t channel)
{
MODIFY_REG(GPIOC->TMUXR, GPIO_TMUXR_PC5TMUX_Msk, channel);
}
如何设计
如何在魔方配置界面将这个逻辑嵌入进去?或者使用数据库存储的方法,只在生成代码的时候获取符合条件的记录,然后生成代码。
成果
- 使用了数据库方式来实现 mf_chip_timer_mux
- 升级PeripheralParamStructBuilder.py和text.py