华大单片机 HC32F460 GPIO配置说明

02 06 60 02 00 01 F7 F9 02 06 68 68 00 02 E0 08 02 06 68 68 00 02 E0 08 

typedef struct stc_port_init
{
    en_pin_mode_t           enPinMode;      ///< Set pin mode @ref en_pin_mode_t
    en_functional_state_t   enLatch;        ///< Pin output latch enable
    en_functional_state_t   enExInt;        ///< External int enable
    en_functional_state_t   enInvert;       ///< Pin input/output invert enable
    en_functional_state_t   enPullUp;       ///< Internal pull-up resistor enable
    en_pin_drv_t            enPinDrv;       ///< Drive capacity setting @ref en_pin_drv_t
    en_pin_o_type_t         enPinOType;     ///< Output mode setting @ref en_pin_o_type_t
    en_functional_state_t   enPinSubFunc;   ///< Pin sub-function enable
}stc_port_init_t;

1,enPinMode
Pin_Mode_In  = 0, //输入模式 
Pin_Mode_Out = 1, //输出模式
Pin_Mode_Ana = 2,

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
对于hc32f460GPIO配置可以通过以下步骤进行: 1. 选择需要配置GPIO口,确定其对应的引脚号。 2. 打开GPIO模块时钟,使能GPIO模块。 3. 配置GPIO口为输入或输出模式,设置输入或输出电平。 4. 配置GPIO口的中断,使能GPIO中断。 下面是一个简单的示例代码: ```c #include "hc32f460_gpio.h" // 配置GPIO口为输出模式,输出高电平 void gpio_config(void) { stc_gpio_config_t stcGpioCfg; // 打开GPIO模块时钟 CLK_FcgPeriphClockCmd(CLK_FCG_GPIO, Enable); // 配置GPIO口为输出模式 stcGpioCfg.enDir = GpioDirOut; stcGpioCfg.enDrv = GpioDrvH; stcGpioCfg.enPuPd = GpioPu; stcGpioCfg.enOD = GpioOdDisable; stcGpioCfg.enCtrlMode = GpioAHB; // GPIO口对应的引脚号为P10 Gpio_Init(GPIO1, GPIO_PIN_0, &stcGpioCfg); // 输出高电平 Gpio_SetIO(GPIO1, GPIO_PIN_0); } // 配置GPIO口的中断 void gpio_interrupt_config(void) { stc_gpio_irq_t stcGpioIrq; // 配置GPIO口的中断 stcGpioIrq.enIntMode = GpioIntRisingEdge; stcGpioIrq.pfnCallback = gpio_irq_handler; // GPIO口对应的引脚号为P10 Gpio_EnableIrq(GPIO1, GPIO_PIN_0, &stcGpioIrq); } // GPIO中断回调函数 void gpio_irq_handler(void) { // 处理GPIO中断 } ``` 以上代码中,首先调用了`CLK_FcgPeriphClockCmd`函数打开GPIO模块时钟,然后调用`Gpio_Init`函数配置GPIO口为输出模式,并输出高电平。接着调用`Gpio_EnableIrq`函数配置GPIO口的中断,传入中断模式和中断回调函数。最后,在中断回调函数中处理GPIO中断。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jianminmin1318987744

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值