完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
简介
STM32F1基本配置之GPIO口的配置和常用函数,侧重于即看即拿即用。 1 IO端口的寄存器组 每个IO端口都有7个寄存器来控制。 GPIOX->CRL/CRH为配置寄存器 GPIOX->IDR/ODR为数据寄存器 GPIOX->BSRR为置位寄存器 GPIOX->BRR为复位寄存器 GPIOX->LCKR为锁存寄存器 对GPIO的操作都是对这些寄存器写值来进行操作的。 如设置GPIOA第一个端口值为1: 可以使用固件库函数GPIO_SetBits(GPIOA,GPIO_Pin_1); 也可以使用寄存器操作:GPIOA->BSRR = 1 << 1。 更详细可以参阅芯片手册。 下面开始即用配置。 GPIO的配置 GPIO口的8种模式: 输入浮空 GPIO_MODE_IN_FLOATING 输入上拉 GPIO_MODE_IPU 输入下拉 GPIO_MODE_IPD 模拟输入 GPIO_MODE_AIN 开漏输出 GPIO_MODE_OUT_OD 推挽输出 GPIO_MODE_OUT_PP 开漏复用功能 GPIO_MODE_AF_OD 推挽复用功能 GPIO_MODE_AF_PP GPIO口的三种速率: GPIO_Speed_10MHz, GPIO_Speed_2MHz, GPIO_Speed_50MH 配置步骤: 配置GPIO口第一步,使能对应IO口的时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); 配置GPIO口第二步,按需要初始化配置结构体 定义结构体 GPIO_InitTypeDef GPIO_InitStructure; 按需要选择配置模式 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 配置GPIO口第三步,初始化。 GPIO_Init(GPIOA, &GPIO_InitStructure); 到此便配置完成了 下面是一些配置代码。 //LED的配置 void LED_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能PA端口时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; //端口选配8 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz GPIO_Init(GPIOA, &GPIO_InitStructure); //配置GPIOA8 } 常用函数 GPIO_SetBits(GPIOA,GPIO_Pin_8); 作用是配置GPIOA8端口为高电平 GPIO_ResetBits(GPIOD,GPIO_Pin_2);作用是配置GPIOD2端口为低电平 GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_2); 作用是读取对应GPIOA2(输入口)目前的状态值(0/1) GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_2); 作用是读取对应GPIOA2(输出口)目前的状态值(0/1); |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1585 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1527 浏览 1 评论
959 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
672 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1569 浏览 2 评论
1856浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
628浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
511浏览 3评论
520浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
494浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-16 14:57 , Processed in 0.731457 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号