HC32 操作GPIO点亮LED(HC库)

查看官方开发板原理图

PA2接了一个LED

在这里插入图片描述

XHCode配置GPIO

选择PA2,点击GPIO OUT

在这里插入图片描述

代码解析

GPIO配置

在生成的main.c文件里面

//Port Config
static void App_PortCfg(void)
{
    /* GPIO initialize */
    stc_gpio_init_t stcGpioInit;
    /* PA2 set to GPIO-Output */
    (void)GPIO_StructInit(&stcGpioInit);
    stcGpioInit.u16PinDir = PIN_DIR_OUT;// 输出模式
    stcGpioInit.u16PinAttr = PIN_ATTR_DIGITAL;// 数字模式
    stcGpioInit.u16PinOutputType = PIN_OUT_TYPE_CMOS;// 推挽输出
	stcGpioInit.u16PinState = PIN_STAT_SET;// 默认高电平
    (void)GPIO_Init(GPIO_PORT_A, GPIO_PIN_02, &stcGpioInit);

}

u16PinDir = PIN_DIR_OUT:输出模式

u16PinAttr = PIN_ATTR_DIGITAL:数字模式

u16PinOutputType = PIN_OUT_TYPE_CMOS:推挽输出

u16PinState = PIN_STAT_SET:默认高电平

GPIO输出配置

u16PinDir

序号代码说明
1PIN_DIR_OUT输出
2PIN_DIR_IN输入

u16PinAttr

序号代码说明
1PIN_ATTR_DIGITAL数字模式
2PIN_ATTR_ANALOG模拟量模式

u16PinOutputType

序号代码说明
1PIN_OUT_TYPE_CMOS推挽输出
2PIN_OUT_TYPE_NMOS开漏输出

u16PinState

序号代码说明
1PIN_STAT_SET默认高电平
2PIN_STAT_RST默认低电平
主函数逻辑
int32_t main(void)
{
    /* Register write unprotected for some required peripherals. */
    LL_PERIPH_WE(LL_PERIPH_ALL);
    //Clock Config
    App_ClkCfg();
    //Port Config
    App_PortCfg();
    /* Register write protected for some required peripherals. */
    LL_PERIPH_WP(LL_PERIPH_ALL);
	
    for (;;) {
        	// 设置高电平
			GPIO_SetPins(GPIO_PORT_A, GPIO_PIN_02);
        	// 延时1000毫秒
			DDL_DelayMS(1000);
        	// 设置低电平
			GPIO_ResetPins(GPIO_PORT_A, GPIO_PIN_02);
        	// 延时1000毫秒
			DDL_DelayMS(1000);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值