stm32学习笔记

有不足之处请指教。

目录

1.RCC时钟

2.GPIO工作

3. GPIO初始化与部分GPIO函数

RCC_APB2PeriphClockCmd(XXXX/*打开对应的数字*/, ENABLE);

GPIO_Init(KEY1_PORT,GPIO_InitStructure);

GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);

 GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)

u8 GPIO_ReadInputDataBit

(GPIO_TypeDef* GPIOx, u16 GPIO_Pin)GPIO模式浮空输入使用

GPIO_PinRemapConfig(uint32_t GPIO_Remap, FunctionalState NewState)重映射


1.RCC时钟

1.stm32的io口由时钟线和P口同时决定的,时钟线负责打开io口,P口决定io工作情况。

2.芯片里面各种功能也要打开对应的时钟才能正常工作。

 

2.GPIO工作

1.浮空,下拉,上拉输入都能读取输入的电平,也能输出。

2.各个外设的引脚模式配置在8.1.11 外设的GPIO配置有

3. GPIO初始化与部分GPIO函数

GPIO_InitTypeDef   GPIO_InitStructure;

 /*开启控制 XX 的GPIO的端口时钟*/

RCC_APB2PeriphClockCmd(XXXX/*打开对应的数字*/, ENABLE);

 /*选择要控制 XX 的GPIO*/

GPIO_InitStructure.GPIO_Pin = PIN ;//对应的P口

 //设置 PIN 的引脚为模式

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

/*设置引脚速率为50MHz */浮空输入不需要配置速度

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

 /*调用库函数,初始化控制XX的GPIO*/

GPIO_Init(KEY1_PORT,GPIO_InitStructure);

 //根据输入高低电平打开原则选择其一

 //清除数据,默认低电平

//第一的变量是GPIOX口,第二变量是对应的IO口

GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);

 //写入数据,输出高电平

//第一的变量是GPIOX口,第二变量是对应的IO口

 GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)

u8 GPIO_ReadInputDataBit

(GPIO_TypeDef* GPIOx, u16 GPIO_Pin)GPIO模式浮空输入使用

功能描述      读取指定端口管脚的输入

输入参数 1    GPIOx:x 可以是 A,B,C,D 或者 E,来选择 GPIO 外设

输入参数 2    GPIO_Pin:待读取的端口位

拉低GPIO电平返回1

拉高GPIO电平返回0

GPIO_PinRemapConfig(uint32_t GPIO_Remap, FunctionalState NewState)重映射

功能描述   改变指定管脚的映射

输入参数 1   GPIO_Remap: 选择重映射的管脚

输入参数 2   NewState: 管脚重映射的新状态

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值