#include "stm32f10x.h"
#include "delay.h"
#include "key.h"
void KEY_Init(void) //³õʼ»¯¾ØÕó¼üÅÌҪʹÓõÄGPIO¿Ú¡£
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE,ENABLE);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //¶¨ÒåPE8µ½PE11ΪÉÏÀÊäÈë¡¢¡¢¡£
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11;
GPIO_Init(GPIOE,&GPIO_InitStructure);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; //¶¨ÒåPE12µ½PE15ΪÏÂÀÊäÈë¡£
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;
//ÒòΪÉÏÃ涨ÒåÒý½ÅΪÊä³öʱ£¬ÒѾ´ò¿ªÕû¸öGPIOAµÄʱÖÓÁË£¬
//ËùÒÔ´Ë´¦²»ÔÙÐèÒªº¯ÊýRCC_APB2PeriphClockCmd()À´´ò¿ªÊ±ÖÓÁË¡£
GPIO_Init(GPIOE,&GPIO_InitStructure);
}
int KEY_Scan(void) //ʵÏÖ¾ØÕó¼üÅÌ¡£·µ»ØֵΪ£¬¸÷°´¼üµÄ
STM32 f103 矩阵键盘
最新推荐文章于 2024-08-11 16:05:22 发布
这篇博客详细介绍了如何在STM32 F103微控制器上初始化和扫描矩阵键盘。通过配置GPIO端口,设置为输入/输出模式,并使用特定的延时函数来检测按键状态。文章提供了初始化函数KEY_Init()和扫描函数KEY_Scan()的代码,用于识别按下按键的值。通过对GPIO寄存器的操作,逐一检测键盘行列状态,实现了对矩阵键盘的高效处理。
摘要由CSDN通过智能技术生成