GPIO 最简 操作步骤
2015-08-15 11:08
183 查看
GPIO 最简 操作步骤
(2013-03-23 19:36:02)分类: STM32 |
1. 启动相应Port x的RCC(复位始终控制)
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOx, ENABLE);
x可以是A到G , GPIO都由APB2(高速外设)时钟控制
2. GPIO初始结构中的三个参数赋值(该结构名需程序前定义:"GPIO_InitTypeDef GPIO_InitStructure;")
三个参数分别为
引脚:GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6|GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10;
速度:GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;
模式:GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
三个参数的取值可查《固件函数库》
3. 用GPIO初始化函数 GPIO_Init(GPIOx,&GPIO_InitStructure) ,将前面赋完值的结构定义到Port x上
x可以是A到G;
4. 接着即可用GPIO_ResetBits(GPIOx,GPIO_Pin_y) 函数将引脚置0
或 用GPIO_SetBits(GPIOx,GPIO_Pin_y) 函数将引脚置1
x可以是:A到F;
y可以是:0到15;多个可用" | "隔开,如:GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9
5. 也可以用GPIO_ReadInputDataBit(GPIOx,GPIO_Pin_y)函数读取输入引脚的值
或 用GPIO_ReadOutputDataBit(GPIOx,GPIO_Pin_y)函数读取输出引脚的值
x可以是:A到F;
y可以是:0到15;多个可用" | "隔开,如:GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9
注:a)读取整个Port 值的函数为GPIO_ReadInputData(GPIOx)和GPIO_ReadOutputData(GPIOx)
b)写整个Port 值的函数为GPIO_Write(GPIOx,数值)
c)一般按前3步启动后,被设定的GPIO引脚都会被置0(低电平)
相关文章推荐
- hdu 5387 Clock
- 实现音乐播放器后台Service服务一直存在的解决思路
- 堆栈问题
- 【Android】 -- 使用UncaughtExceptionHandler捕捉全局异常
- APM源码分析之 姿态控制
- 快速返回顶部
- 给csdn的建议
- 数据库总结
- AppDelegate 、UIApplication 简单的用法
- 截取2个指定字符串中的字符串
- MySql中一些常用的命令
- 手机上的“G”“E”“H”“T”信号完美解释
- oracle学习笔记(六)
- hdu1286 寻找新朋友 (欧拉功能)
- LeetCode:Majority Element Ⅱ
- Majority Element && Majority Element II
- 安卓开发之简单的短信操作模块
- poj2010 二分中位数
- uva 194 - Triangle(几何)
- TCP的服务流程