stm32f103c8t6使用寄存器进行点灯PB5
时间: 2023-04-03 13:02:51 浏览: 63
可以使用以下代码进行点灯:
```
#include "stm32f10x.h"
int main(void)
{
RCC->APB2ENR |= RCC_APB2ENR_IOPBEN; //使能GPIOB时钟
GPIOB->CRL &= ~(GPIO_CRL_MODE5 | GPIO_CRL_CNF5); //PB5设置为推挽输出
GPIOB->CRL |= GPIO_CRL_MODE5_0;
while(1)
{
GPIOB->BSRR = GPIO_BSRR_BS5; //点亮LED
for(int i=0; i<1000000; i++); //延时
GPIOB->BSRR = GPIO_BSRR_BR5; //熄灭LED
for(int i=0; i<1000000; i++); //延时
}
}
```
相关问题
stm32f103c8t6使用寄存器点灯PB5
可以使用以下代码点亮PB5:
```
#include "stm32f10x.h"
int main(void)
{
// 使能GPIOB时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
// 配置PB5为推挽输出
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
// 点亮PB5
GPIO_SetBits(GPIOB, GPIO_Pin_5);
while (1);
return 0;
}
```
stm32f103c8t6的寄存器定义
stm32f103c8t6的寄存器定义包括但不限于以下几个:
1. RCC寄存器:用于对系统时钟进行配置,例如设置系统时钟源、分频系数等。
2. GPIO寄存器:用于对IO口进行配置和控制,例如设置引脚的输入输出模式、设置引脚的电平状态等。
3. USART寄存器:用于配置和控制串行通信接口,例如设置波特率、使能发送和接收、发送和接收数据等。
4. EXTI寄存器:用于配置和控制外部中断,例如设置中断触发方式、使能中断等。
其他寄存器包括但不限于NVIC寄存器、TIM寄存器、ADC寄存器等,这些寄存器的具体定义可以在STM32F103C8T6的参考手册中找到。