1.GPIO
在RCC初始化函数中,要加上
/* GPIO_LED clock enable */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOF, ENABLE);来初始化我们想要使用的端口,如果使用复用端口,要加上RCC_APB2Periph_GPIOF,即配置并开启相关模块时钟。
然后要初始化GPIO,如下:
/* Configure LED1 (PC.4)as alternate function push-pull */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOC, &GPIO_InitStructure);
选择端口和对应的端口模块,GPIO mode等,初始化相关端口;
之后,就可以清零或置1相关端口了,如:
GPIO_SetBits(GPIO_LED1,GPIO_PIN_LED1);//置1
GPIO_ResetBits(GPIOx,GPIO_Pin);//清零
2.串口
(1)RCC 配置
首先在RCC初始化函数中加入以下内容,分别用来打开串口对应的IO的时钟,复用管脚的时钟和串口时钟:
/* Enable GPIOA and AFIO clock */
RCC_APB2PeriphClockCmd

本文详细介绍了STM32中GPIO的初始化及操作,包括如何设置GPIO模式、速度和状态。同时,讲解了串口配置的步骤,涵盖RCC配置、端口设置、串口初始化以及中断处理。通过实例展示了如何发送和接收数据,以及如何启用串口中断进行数据接收。
最低0.47元/天 解锁文章
1296

被折叠的 条评论
为什么被折叠?



