📄 main.c
字号:
#include<reg52.h>
#include<lcdxianshi.c>
#include <func.h>
void (*current_operation_index)();
uchar func_index=0;
//#define ad0809 XBYTE //数据采集存储
//#define
typedef struct
{
uchar current;
uchar up;
uchar down;
uchar enter;
void (*current_operation)();
} key_table;
key_table code table[28]=
{
{0,7,1,3,(*jiemian)},
{1,0,2,4,(*jiemian1)},
{2,1,8,5,(*jiemian2)},
{3,0,3,3,(*dianyashow)},
{4,0,4,4,(*bijiaohanshu)},
{5,0,6,5,(*boxinghanshu)},
{6,0,6,6,(*boxing1hanshu)},
{7,0,7,7,(*cuowuhanshu)},
{8,0,5,8,(*cuowuhanshu1)}
};
void main(void)
{ clear_LCD();
smNop();
initial_LCD();
smNop();
clear_LCD();
while(1)
{ uchar key;
delay(10);
key=keyscan1(); //读取键盘值
if(key!=0)
{ key=keyscan1();
switch(key)
{
case 0x18:
func_index=table[func_index].up; //向上翻
break;
case 0x12:
func_index=table[func_index].enter;//回车
break;
case 0x14:
func_index=table[func_index].down;//向下翻
break;
default:
break;
}
clear_LCD(); //清屏
delay(250);
}
key=0; //必须此处清零,不然无限执行SWITCH
current_operation_index=table[func_index].current_operation;
(*current_operation_index)();//执行当前操作函数
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -