思路:
CH32X035是一款基于Cortex-M0核心的微控制器,具有35个通用IO引脚,可以用于点亮LED,和其它外设。 以下是在CH32X035上点亮LED的一般步骤: - 确定LED连接到微控制器的哪个引脚上。假设我们使用GPIO引脚来控制LED。
- 配置GPIO引脚的模式为输出模式。可以使用HAL库函数进行设置。例如,可以使用HAL_GPIO_Init()函数来初始化GPIO引脚,并将其模式设置为GPIO_MODE_OUTPUT_PP。
- 在主程序中,通过修改GPIO引脚的电平来控制LED的亮灭状态。可以使用HAL库函数进行操作。例如,可以使用HAL_GPIO_WritePin()函数将GPIO引脚电平设置为高电平(GPIO_PIN_SET)以点亮LED,或设置为低电平(GPIO_PIN_RESET)以熄灭LED。
- 编译并烧录程序到CH32X035芯片中。在烧录之后,如果一切正常,LED应该会根据程序中设置的GPIO引脚电平状态而亮灭。
烧录器与板子连接示意图:
原理图:
实物连接图:
引脚连接图
相关代码:
u8 i = 0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
SystemCoreClockUpdate();
Delay_Init();
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n", SystemCoreClock);
printf( "ChipID:%08x\r\n", DBGMCU_GetCHIPID() );
printf("GPIO Toggle TEST\r\n");
GPIO_Toggle_INIT();
while(1)
{
Delay_Ms(100);
GPIO_WriteBit(GPIOA, GPIO_Pin_0, (i == 0) ? (i = Bit_SET) : (i = Bit_RESET));
}
GPIO_InitTypeDef GPIO_InitStructure = {0};
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
LED闪烁视频:
|