GPIO点灯逻辑(STM32F103C8T6 PC13)
2025-08-14 11:47:03 2 举报
AI智能生成
GPIO点灯逻辑(STM32F103C8T6 PC13)
作者其他创作
大纲/内容
1. 时钟使能
1.1 函数:RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE)
1.2 结构体:无(直接调用)
1.3 寄存器:RCC->APB2ENR(位4控制GPIOC时钟)
2. GPIO配置初始化
2.1 函数:GPIO_Init(GPIOC, &GPIO_InitStructure)
2.2 结构体:GPIO_InitTypeDef
2.3 寄存器映射:
- GPIOx_CRH(模式配置寄存器,PC13属高8位)
- GPIOx_BSRR(位操作寄存器)
3. 输出电平控制
3.1 点亮函数:GPIO_ResetBits(GPIOC, GPIO_Pin_13)
3.2 熄灭函数:GPIO_SetBits(GPIOC, GPIO_Pin_13)
3.3 电平翻转函数:GPIO_WriteBit(GPIOC, GPIO_Pin_13, !GPIO_ReadOutputDataBit(GPIOC, GPIO_Pin_13))
3.4 寄存器:GPIOx_BSRR(位13操作)
4. 关键结构体详解
4.1 GPIO_InitTypeDef
- GPIO_Pin:GPIO_Pin_13(引脚选择)
- GPIO_Mode:GPIO_Mode_Out_PP(推挽输出模式)
- GPIO_Speed:GPIO_Speed_2MHz(输出速度)
4.2 寄存器与结构体关联
- GPIO_Pin -> GPIOx_CRH[20:23](CNF13和MODE13位域)
- GPIO_Mode -> CNF13[1:0]=00(推挽模式),MODE13[1:0]=01(输出模式)
- GPIO_Speed -> MODE13[1:0]=01(2MHz速度)
4.3 电平控制原理 - GPIO_ResetBits:BSRR[29]=1(BR13置位,输出低电平)
- GPIO_SetBits:BSRR[13]=1(BS13置位,输出高电平)
0 条评论
下一页
为你推荐
查看更多