蓝桥杯_单片机_入门基础知识(五)_矩阵按键和独立按键

持续关注阿杰在线更新保姆式蓝桥杯笔记~~坚持日更

目录

一、矩阵按键使用方法

二、矩阵按键编程思路

三、原理图

四、矩阵按键和独立按键的代码区


一、矩阵按键使用方法

  • 逐行扫描:我们可以通过高四位轮流输出低电平来对矩阵键盘进行逐行扫描,当低四位接收到的数据不全为1的时候,说明有按键按下,然后通过接收到的数据是哪一位为0来判断是哪一个按键被按下。

二、矩阵按键编程思路

Main()
{
按键处理函数+数据状态变更
显示处理函数+待显示数据采集
}

定时器中断函数1()
{
控制按键处理函数刷新速率
控制显示处理函数刷新速率
显示段码数组的数据内容
}

按键处理函数()
{
  按键信息采集
  数据状态变更
}

显示处理函数()
{
  待显示信息采集,放入数据显示字符串
  数据显示字符串到段码数组数据转换
}

三、原理图

以CD107D开发板为例,电路图如下:

四、矩阵按键和独立按键的代码区

矩阵按键


 **main.c文件**

#include "bsp_init.h"
#include "bsp_seg.h"
#include "bsp_key.h"
#include "timer.h"
#include "stdio.h"

//-----------------------------------------------
/* 函数声明 */
void Key_Proc(void);//按键处理,底层数据变更
void Seg_Proc(void);//显示处理,显示信息生成

//-----------------------------------------------
/* 全局变量声明 */

//显示专用,基本上永远不变
unsigned char seg_buf[8];//放置字符串转换后的段码到数组
unsigned char seg_string[10];//放置字符串
unsigned char pos = 0 ;//中断显示专用

//按键专用,基本上永远不变
unsigned char Key_Value;//读取按键的数值存储变量
unsigned char Key_Down,Key_Old;//读取按键的数值存储变量	

//按键和显示函数减
  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值