STM32 学习笔记——GPIO口控制
来源:互联网 发布:网络不稳定是什么原因 编辑:程序博客网 时间:2024/06/05 14:08
在配置STM32外设的时候,任何都要先使能该外设的时钟!PB2ENR 是 APB2总线上的外设时钟使能寄存器
我们要使能的PORTA和PORTD的时钟使能位,分别在的时钟使能位,分别在bit2和bit5,只要将这两位置1就可以使能PORTA和PORTD了
STM32的每个IO端口都有7个寄存器来控制。
他们分别是:配置模式的2个32位的端口配置寄存器 CRL 和 CRH;2个32位的数据寄存器IDR 和 ODR ;1个32位的置
复位寄存器 BSRR ;一个 16 位的复寄存器 位的复寄存器 BRR ;1个 32 位的 锁存 寄存器 LCKR ;
这里我们仅介绍常用 的 几个寄存器,我们常用的 IO 端口寄存器只有 4个: CRL 、CRH、IDR 、ODR。
每组IO口一共有16个,CRH控制着高8个IO口,CR控制着高低8个IO口;
具体配置模式如下:
这里我们可以记住几个常用的配置,比如 0X0表示模拟输入模式( ADC 用)、 0X3 表示推挽输出模式(做输出口用, 50M 速率)、 0X8 表示上 /下拉输入模式(做输入口用)、 0XB表示复用输出(使IO 口的第二功能, 50M 速率)。
IDR 是一个端口输入数据寄存器,只用了低 16 位。该寄存器为只读,并且能以 16 位的形式读出。
要想知道某个IO口的状态,你只要读这个寄存器,再看某位的状态就可以了。
ODR 是一个端口输出数据寄存器,只用了低 16 位。该寄存器为可读写,并且能以 16 位的形式读写。
要想控制某个IO口的输出状态。而向该寄存器写数据,则可以控制某个IO口的输出电平
//PC11输出高
0 0
- STM32 学习笔记——GPIO口控制
- STM32学习笔记——使用函数库编程控制GPIO口输出
- stm32学习笔记——GPIO
- stm32学习笔记——GPIO
- STM32学习笔记——控制GPIO输出点亮LED灯(直接操作存储器)
- [转载]STM32学习笔记——控制GPIO输出点亮LED灯(直接操作存储器)
- STM32-GPIO学习笔记
- STM32学习笔记2——GPIO点灯
- STM32学习笔记2——再探GPIO
- STM32学习笔记 — 之GPIO端口篇
- STM32学习笔记 — 之GPIO端口篇
- STM32学习笔记 — 之GPIO端口篇
- STM32学习笔记 — 之GPIO端口篇
- STM32学习笔记 — 之GPIO端口篇
- STM32学习笔记 — 之GPIO端口篇
- STM32学习笔记一一GPIO
- STM32-GPIO—JTAG
- STM32学习笔记(1):GPIO口的使用
- 最受欢迎的5个Android ORM框架
- 百度地图退出后会重启一次
- 七月算法课程《python爬虫》第四课: 相关库使用与登录问题
- Cascaded Pose Regression
- iOS发布问题,求各位大神指教
- STM32 学习笔记——GPIO口控制
- ios CABasicAnimation 动画结束后如何判断是哪个动画结束了
- 什么Android模拟器好用,方便反复安装app?
- Android 通过RGB_565加载图片在内存中占用大小
- 《知我》项目简介
- Python列表解析和生成器表达式
- 100分!!!如何实现两个不同手机不同APP之间的实时的数据传递
- 洛谷 P3355 骑士共存问题
- Netty权威指南 第2版学习笔记4——TCP粘包/拆包问题的解决之道