学习原子哥STM32M4(1):GPIO输出配置
来源:互联网 发布:01年nba总决赛数据 编辑:程序博客网 时间:2024/06/07 16:28
当初写51感觉IO口输出配置很简单,直接写入16进制数就可以了,而当我开始学STM32时我便发现了STM32的IO的强大之处,复用功能也很厉害。这里写一下贴一下我在学习GPIO输出的心得。
以为本人能力有限,理解可能有误,希望各位大虾包容包容,在评论区指出我的错误
GPIO_InitTypeDef GPIO_InitST;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB,ENABLE);GPIO_InitST.GPIO_Pin=GPIO_Pin_2;GPIO_InitST.GPIO_Mode=GPIO_Mode_OUT;GPIO_InitST.GPIO_OType=GPIO_OType_PP;GPIO_InitST.GPIO_PuPd=GPIO_PuPd_DOWN;GPIO_InitST.GPIO_Speed=GPIO_Speed_100MHz;
GPIO_Init(GPIOB,&GPIO_InitST);GPIO_ResetBits(GPIOB,GPIO_Pin_2);
这段代码是蜂鸣器的,下面一段是LED的。
GPIO_InitTypeDef GPIO_InitST;RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE,ENABLE);GPIO_InitST.GPIO_Pin=GPIO_Pin_15|GPIO_Pin_14|GPIO_Pin_13|GPIO_Pin_12|GPIO_Pin_11;GPIO_InitST.GPIO_Mode=GPIO_Mode_OUT;GPIO_InitST.GPIO_OType=GPIO_OType_PP;GPIO_InitST.GPIO_PuPd=GPIO_PuPd_UP;GPIO_InitST.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOE,&GPIO_InitST);GPIO_SetBits(GPIOE,GPIO_Pin_15|GPIO_Pin_14|GPIO_Pin_13|GPIO_Pin_12|GPIO_Pin_11);
我们可以发现共同之处。
首先他们都是GPIO配置成输出模式
GPIO_InitTypeDef GPIO_InitST;
定义一个函数GPIO_InitST,这个名字是自己定义的,它的作用是参数结构体指针
而后面那一段代码则是我们定义的结构体的成员变量RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE,ENABLE);
这个是使能时钟,因为GPIOA-G都是在AHB1下的,所以我们要使能AHB1GPIO_InitST.GPIO_Pin
指定针脚,因为我们之前使能时钟时便指定了是GPIOE,所以这里的成员变量是在指定E的针脚GPIO_InitST.GPIO_Mode
配置GPIO的模式为输出输入模式,OUT为输出,IN为输入,如果我们用键盘输入的话这里就要写成INAIN模拟输入FLOATING浮空输入IPD下拉输入IPU上拉输入OD开漏输出PP推挽输出AF_OD复用开漏输出AF_PP复用推挽GPIO_InitST.GPIO_OType
OType即Output Type?(本人猜测的),配置输出类型所以只有PP OD两种GPIO_InitST.GPIO_PuPd
配置上下拉,有三种GPIO_PuPd_NOPULLGPIO_PuPd_UP GPIO_PuPd_DOWNGPIO_InitST.GPIO_Speed
配置IO口速度,有2 25 50 100MHz四种GPIO_Init();
初始化GPIO,有两个参数,第一个是哪一组IO,GPIOE,就是E,第二个就是取我们定义的那个结构体的地址,可以知道我们怎么配置的以上都是我们配置IO口时的参数,也是学习STM32的第一课
阅读全文
0 0
- 学习原子哥STM32M4(1):GPIO输出配置
- 学习原子哥STM32M4(2):可以简化我们操作的位带操作
- GPIO-输入/输出配置
- 第一章 学习CC3200 GPIO输出
- MAX32630FTHR设计笔记(1):流水灯(GPIO输出配置)及I2C驱动MAX14690
- (17/06/25)STM32学习->GPIO输出控制LED
- STM8AF6269学习-GPIO(1)
- 寒假学习之STM32(1)----GPIO
- GPIO学习笔记1
- STM32 重新理解GPIO配置以及配置PWM波输出
- STM32M4 EXTI
- LPC2478 通用输入/输出口(GPIO)
- TM4C123GXL GPIO 中断 配置(学习笔记)
- 网页学习笔记之GPIO配置
- 配置学习总结高通平台GPIO
- STM32学习笔记之GPIO配置问题
- stm32学习笔记之GPIO配置
- stm32中GPIO端口的输出配置例子
- BMP图片格式
- 班级40位同学,随机分配4人一组。
- LOADBMP (RGB) 模式
- 详解Tomcat 配置文件server.xml
- C语言学习琐记一
- 学习原子哥STM32M4(1):GPIO输出配置
- 卡尔曼滤波(一)
- 4-adjacent
- 带调色板的位图BMP和不带调色板的BMP
- mysql 查看索引详解
- 万维链技术理念
- 322. Coin Change
- 关于openGL学习心得
- opengl之自动纹理