STM32期末复习总结

本文总结了STM32的期末复习内容,包括IO模式、GPIO初始化(LED和按键)、主函数初始化、硬件延时、中断EXTI及NVIC配置、通用定时器的使用以及USART通信。通过详细代码示例,介绍了各模块的配置方法及其在实际应用中的作用。
摘要由CSDN通过智能技术生成

目录

1、IO的几种模式

2、 GPIO初始化(led)

3、 GPIO初始化(key)

4、主函数初始化

5、硬件延时函数

6、中断EXTI及NVIC配置

7、通用定时器

8、USART的使用

 工程文件夹示意图:

 软件中建立文件夹所包含内容:

 魔术棒配置:

1、IO的几种模式:

/*
选择IO接口工作方式:
GPIO_Mode_AIN 模拟输入
GPIO_Mode_IN_FLOATING 浮空输入  
GPIO_Mode_IPD 下拉输入     用于按键,具体看电路图
GPIO_Mode_IPU 上拉输入     用于按键,具体看电路图
GPIO_Mode_Out_PP 推挽输出     用于LED
GPIO_Mode_Out_OD 开漏输出
GPIO_Mode_AF_PP 复用推挽输出     
GPIO_Mode_AF_OD 复用开漏输出
*/

 

2、 GPIO初始化(led)

需要建立led.c及led.h文件

Led.c内容:

#include "led.h"


//LED灯的接口初始化,"void LED_Config(void);"需要在led.h中进行声明
void LED_Config(void){        
                                                                                
    GPIO_InitTypeDef  GPIO_InitStructure;
     
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);     //开启总线时钟  
    GPIO_InitStructure.GPIO_Pin =GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9; //选择端口号(0~15或all)                        
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;         //选择IO接口工作方式,使用推挽输出模式,可输出高低电平       
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;     //设置IO接口速度(2/10/50MHz) 
    
      GPIO_Init(GPIOC, &GPIO_InitStructure);

}

 Led.h内容:

#ifndef __LED_H
#define __LED_H
#include "stm32f10x.h"//包含库头文件,才可使用库函数,如 GPIO_SetBits(GPIOC, GPIO_Pin_6);


void LED_Config(void);//进行函数名的声明
#endif

 

3、 GPIO初始化(key)

需要建立key.c及key.h文件

key.c内容:

#include "key.h"


//KEY的接口初始化
void KEY_Config(void){                                                                                
    GPIO_InitTypeDef  GPIO_InitStruct;
     
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);  //开启总线时钟      
    GPIO_InitStruct.GPIO_Pin =GPIO_Pin_8|GPIO_Pin_9;             //选择端口号(0~15或all)                        
    GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IPU;                     //选择IO接口工作方式,上拉模式       
//  GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;             //按键为输入,不用设置IO接口速度  
  
    GPIO_Init(GPIOB, &GPIO_InitStruct);
    
}


 key.h内容:

#ifndef __KEY_H
#define __KEY_H
#include "stm32f10x.h"



void KEY_Config(void);//进行函数名的声明

#endif

 

4、主函数初始化:

#include "stm32f10x.h"                        
#include "led.h" //包含头文件
#include "key.h"//包含头文件



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值