⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key+smg.c

📁 通过查表实现的键控数码管显示实验
💻 C
字号:

//C编译:键控SMG显示实验——查表实现
#include "reg52.H"

/* 宏定义 */
#define uchar unsigned char
#define SMG_Data P0    //定义数码管的显示数据为SMG_Data
   sbit SMG_EN = P1^0; //定义SMG控制端

/*主函数开始*/
void main()
{
  char x,i,*p;      //定义参数和指针
  char code tab[9]={0x0fe,0x0fd,0x0fb,0x0f7,0x0ef,0x0df,0x0bf,0x7f,0x0ff}; //SMG显示字符值
  uchar a,b;
  SMG_EN = 0;       //开SMG控制端
  P2=0xff;          //对键盘接口数据,初始化
  while(1)
    {
      x=P2;         //读入键盘值
      switch(x)
        {
          case 0x0fe:i=0;break;   //将P2口读入的键盘值转换为查表数值
          case 0x0fd:i=1;break;
          case 0x0fb:i=2;break;
          case 0x0f7:i=3;break;
          case 0x0ef:i=4;break;
          case 0x0df:i=5;break;
          case 0x0bf:i=6;break;
          case 0x07f:i=7;break;
          default: i=8;           //若没有键按下,则灭所有段码
        }
      SMG_Data=tab[i];            //显示查表所得到的段码值
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -