0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于51单片机矩阵键盘点亮对应LED

电子开发圈 来源:电子开发圈 2023-01-13 09:54 次阅读

51单片机结构简单,架构体系完备,学习资料丰富,应用领域广泛。通过对51单片机的学习,可帮助小白实现快速入门电子设计,理解电路系统工作原理,为高级嵌入式芯片的学习及开发打下坚实基础。

本篇描述

1、51+Proteus8.10;

2、学习矩阵键盘电路及驱动;

仿真设计

采用Proteus作为仿真设计工具。Proteus是一款著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,真正实现了从概念到产品的完整设计。

软件设计

采用Keil作为软件设计工具。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。

#include
#define uchar unsigned char
#define uint unsigned int
#define KEY P1


uchar uca_LineScan[4]={0xEF,0xDF,0xBF,0x7F};
uchar KeyScan()
{
  uchar Temp=0;          
  uchar ucRow=0,ucLine=0;      


  for(ucLine=0;ucLine<4;ucLine++)  
    {
      KEY=uca_LineScan[ucLine];         
      Temp=KEY & 0x0F;           
      if(Temp!=0x0F)     
        {                   
        switch(Temp)
          {
          case 0x0E: ucRow=10;break;     
          case 0x0D: ucRow=20;break;
          case 0x0B: ucRow=30;break;
          case 0x07: ucRow=40;break;
          default:   ucRow=50;break;
          }
        break;
        }
    }


  KEY=0x0F;            
  return ucRow+ucLine+1;       
}


void KEY_CTRL(unsigned char KeyCode)
{
  switch(KeyCode)
    {
    case 11:P2=0xff;P3=0x7f;break;  
    case 12:P2=0xff;P3=0x3f;break;  
    case 13:P2=0xff;P3=0x1f;break;
    case 14:P2=0xff;P3=0x0f;break;
    case 21:P2=0xff;P3=0x07;break;  
    case 22:P2=0xff;P3=0x03;break;  
    case 23:P2=0xff;P3=0x01;break;
    case 24:P2=0xff;P3=0x00;break;
    case 31:P3=0x00;P2=0x7f;break;  
    case 32:P3=0x00;P2=0x3f;break;  
    case 33:P3=0x00;P2=0x1f;break;
    case 34:P3=0x00;P2=0x0f;break;
    case 41:P3=0x00;P2=0x07;break;  
    case 42:P3=0x00;P2=0x03;break;
    case 43:P3=0x00;P2=0x01;break;  
    case 44:P3=0x00;P2=0x00;break;  


    default:break;
    }
}


void main()
{
  while(1)
  {
    KEY_CTRL(KeyScan());
  }
}

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    242

    文章

    23252

    浏览量

    660558
  • 单片机
    +关注

    关注

    6035

    文章

    44554

    浏览量

    634629
  • Proteus
    +关注

    关注

    79

    文章

    1692

    浏览量

    106515
  • 51单片机
    +关注

    关注

    274

    文章

    5702

    浏览量

    123490
  • 矩阵键盘
    +关注

    关注

    7

    文章

    206

    浏览量

    31454

原文标题:5051-矩阵键盘点亮对应LED

文章出处:【微信号:电子开发圈,微信公众号:电子开发圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    51单片机矩阵键盘c语言程序

    51单片机矩阵键盘c语言程序,c51单片机实现矩阵
    发表于 07-21 09:20

    基于51单片机对4*4矩阵键盘扫描

    基于51单片机,对4*4矩阵键盘扫描,并用7段数码管显示按键信息。
    发表于 11-24 13:55 86次下载

    基于51单片机矩阵键盘电子密码锁

    基于51单片机矩阵键盘电子密码锁,使用矩阵键盘输入四位密码,有错误和正确提示音。
    发表于 07-21 11:23 117次下载

    51单片机3X44X4矩阵键盘键盘扫描

    51单片机3X44X4矩阵键盘键盘扫描。
    发表于 08-18 18:03 39次下载

    单片机8x8矩阵键盘原理说明

    本文主要介绍了介绍基于51单片机矩阵键盘原理以及单片机8x8矩阵
    的头像 发表于 02-24 16:14 2.6w次阅读
    <b class='flag-5'>单片机</b>8x8<b class='flag-5'>矩阵</b><b class='flag-5'>键盘</b>原理说明

    使用51单片机进行矩阵键盘的程序免费下载

    本文档的主要内容详细介绍的是使用51单片机进行矩阵键盘的程序免费下载。
    发表于 04-15 18:22 5次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b>进行<b class='flag-5'>矩阵</b><b class='flag-5'>键盘</b>的程序免费下载

    使用51单片机实现矩阵键盘的代码免费下载

    本文档的主要内容详细介绍的是使用51单片机实现矩阵键盘的代码免费下载。
    发表于 08-28 17:29 5次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b>实现<b class='flag-5'>矩阵</b><b class='flag-5'>键盘</b>的代码免费下载

    使用51单片机实现矩阵键盘的程序免费下载

    本文档的主要内容详细介绍的是使用51单片机实现矩阵键盘的程序免费下载。
    发表于 07-18 17:38 3次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b>实现<b class='flag-5'>矩阵</b><b class='flag-5'>键盘</b>的程序免费下载

    51单片机——LED灯的点亮

    点亮LED原理单片机点亮LED 利用LED阳极为正阴极为负才会导通
    发表于 11-11 19:21 19次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>——<b class='flag-5'>LED</b>灯的<b class='flag-5'>点亮</b>

    51单片机按键检测--独立按键与矩阵键盘

    按键,每个按键对应一个IO口,通过循环或者中断去检测,这种方法常用于按键个数较少得时候。如果按键的个数较多,每个按键都分配一个IO口,会占用大量的资源,所以就有了矩阵键盘矩阵
    发表于 11-12 11:06 15次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>按键检测--独立按键与<b class='flag-5'>矩阵</b><b class='flag-5'>键盘</b>

    51单片机(三十)—— 矩阵键盘计算器

    在《51单片机(二十九)—— 矩阵键盘输入实验》中,我们对矩阵键盘的原理及使用方法进行了介绍。在
    发表于 11-19 11:51 49次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>(三十)—— <b class='flag-5'>矩阵</b><b class='flag-5'>键盘</b>计算器

    51单片机 点亮一个LED LED闪烁

    ) //循环 { }}使用51单片机点亮一个LED#include <reg52.h> //51
    发表于 11-23 17:06 5次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b> <b class='flag-5'>点亮</b>一个<b class='flag-5'>LED</b> <b class='flag-5'>LED</b>闪烁

    51单片机矩阵键盘的原理图

    51单片机矩阵键盘的原理图
    发表于 12-30 11:32 69次下载

    基于89C51单片机矩阵键盘密码锁源程序

    基于89C51单片机矩阵键盘密码锁源程序
    发表于 05-15 11:01 4次下载

    51单片机矩阵键盘扫描程序

    51单片机矩阵键盘扫描程序
    发表于 05-17 17:20 11次下载