完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1、按键分类
WK_UP按键按下时将高电平信号输入给STM32的IO,即高电平有效;不被按下时,由于干扰,可能高也可能是低信号输入。 KEY0按键按下时将低信号输入给STM32的IO,即低电平有效;不被按下时,由于干扰,可能高也可能是低信号输入。 根据实际需要,为保证WK_UP不被按下时,STM32能够确定检测到IO口是低电平,所以设置接入下拉电阻。 2、上拉电阻和下拉电阻 上拉电阻:保证IO没有外部信号输入时,STM32检测到是高电平,有信号时,跟随信号电平; 下拉电阻:保证IO没有信号输入时,STM32检测到是低电平,有信号时,跟随信号电平。 3、io口初始化程序设置 #include "key.h" #include "delay.h" //按键初始化函数 void KEY_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOC,ENABLE);//使能PORTA,PORTC 时钟 GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE); //关闭 jtag,使能 SWD,可以用 SWD 模式调试 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;//PA15接KEY1 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //设置成上拉输入 GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化 GPIOA15 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;//PC5接KEY0 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //设置成上拉输入 GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化 GPIOC5 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;//PA0接WK_UP GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; //PA0 设置成输入,默认下拉 GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化 GPIOA.0 } 参考:STM32不完全手册V3.1--库函数版本--ALIENTEK Mini2 STM32开发板教程 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1792 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1626 浏览 1 评论
1094 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
732 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1682 浏览 2 评论
1943浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
740浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
577浏览 3评论
600浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
562浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 10:47 , Processed in 0.679231 second(s), Total 45, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号