求助!!!有谁知道HC32L110C6中,GPIO寄存器中CTRL0寄存器是干什么的?
大家好!有谁知道HC32L110C6中GPIO中CTRL0寄存器是干什么的?参考手册上没这个寄存器,但GPIO列程里有这样的设置M0P_GPIO->CTRL0_f.IESEL = 1;
进入低功耗模式前设置的 应该实际没什么作用,不用纠结{:titter:} yang377156216 发表于 2023-8-31 13:27
应该实际没什么作用,不用纠结
测试好像是没什么用,不纠结了,谢谢哦{:smile:} 不用管他 本帖最后由 hjl2832 于 2023-9-1 08:30 编辑
可以参考库头文件的定义说明:/**
*******************************************************************************
** \brief GPIO附加功能
******************************************************************************/
typedef enum en_gpio_ctrlext
{
GpioCtrlIESEL, ///< >0: deep sleep
///< =0: active sleep</font>
GpioCtrlIRPOL, ///< >0: reverse output
///< =0: normal output
GpioCtrlHclkEn, ///< >0: output enable
///< =0 output disable
GpioCtrlPclkEn, ///< >0: output enable
///< =0 output disable
GpioCtrlHclkSel, ///< div value
GpioCtrlPclkSel, ///< div value
}en_gpio_ctrlext_t;它描述的意思是休眠模式时GPIO的设定。
hjl2832 发表于 2023-9-1 08:28
可以参考库头文件的定义说明:它描述的意思是休眠模式时GPIO的设定。
/**
*******************************************************************************
** \brief GPIO 附加功能设定
**
** \param enFunc 功能
** \param u8val 设定值
**
** \retval Ok 设置成功
******************************************************************************/
en_result_t Gpio_SetCtrlExt(en_gpio_ctrlext_t enFunc, uint8_t u8val)
{
en_result_t enRet = Ok;
switch (enFunc)
{
case GpioCtrlIESEL:
u8val = !!u8val;
M0P_GPIO->CTRL0_f.IESEL = u8val;
break;
case GpioCtrlIRPOL:
u8val = !!u8val;
M0P_GPIO->CTRL1_f.IR_POL = u8val;
break;
case GpioCtrlHclkEn:
u8val = !!u8val;
M0P_GPIO->CTRL1_f.HCLK_EN = u8val;
break;
case GpioCtrlPclkEn:
u8val = !!u8val;
M0P_GPIO->CTRL1_f.PCLK_EN = u8val;
break;
控制寄存器手册上没有写? 从命名来看是控制寄存器的意思
页:
[1]