GPIO,NVIC配置使用步骤

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GPIO,NVIC配置使用步骤相关的知识,希望对你有一定的参考价值。

GPIO配置使用步骤

1.使能,调用函数:

RCC_APB2PeriphClockCmd(

RCC_APBPeriph_外设名,ENABLE);

第一个参数是挂载在APB2总线下面的外设

第二个参数是允许(ENABLE)或不允许(DISABLE

2.定义DPIO配置的结构体变量

GPIO_InitTypeDef a;

这里若把GPIO改为NVIO,TIM,I2C等就是其他的外设配置结构体

a.GPIO_Pin = GPIO_Pin_5;//5号引脚

a.GPIO_Speed = GPIO_Speed_50HZ;//速度

a.GPIO_Mode = GPIO_Mode_Out_PP;//工作方式(推挽输出)

3.调用函数初始化GPIO

GPIO_Init(GPIO,&a);//这里要传入A的地址

4.以上步骤GPIO就配置完成了,下面可以赋值

//设置PB5为低电平

GPIO_ResetBits(GPIOB,GPIO_Pin_5):

//设置PB5为高电平

GPIO_SetBits (GPIOB,GPIO_Pin_5);

 

 

 

 

 

 

 

 

 

 

NVIC配置中断优先级

1.优先级分组

//总共有五种分组情况

//0NVIC_PriorityGroup_0;抢占0位,子4

//0NVIC_PriorityGroup_1;抢占1位,子3

//0NVIC_PriorityGroup_2;抢占2位,子2

//0NVIC_PriorityGroup_3;抢占3位,子1

//0NVIC_PriorityGroup_4;抢占4位,子0

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1)

2.定义优先级配置结构体变量a

NVIC_InitTypeDef a ;

a.IRQChannel = 中断名_IRQN;//中断源

a.IRQChannelPreemptionPriority = 1;//抢占优先级

a.IRQChannelSubPriority = 1;//子优先级

a.IRQChannelCmd = ENABLE ;//使能

3.调用函数初始化

NVIC_Init(&a);

以上是关于GPIO,NVIC配置使用步骤的主要内容,如果未能解决你的问题,请参考以下文章

STM32之cubeMX

STM32之cubeMX

STM32串口的设置和库函数的介绍

STM32F103五分钟入门系列NVIC中断优先级管理

STM32 HAL库学习系列第9篇---NVIC按键外部中断函数

关于STM32串口2配置问题