📄 键盘.c
字号:
0x80,0x08,0x10,0x41,0x8E,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x1C,0x10,0x40,0x87,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x37,0x30,0x67,0xC2,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x40,0xA0,0x6C,0x67,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x40,0x60,0x78,0x37,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0xC0,0x60,0x70,0x37,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0xC0,0x60,0x60,0x30,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x7F,0xC0,0x7F,0xE0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
unsigned char b[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF3,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xFF,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xFF,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xF7,0xFD,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x03,0xFB,0xFB,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x03,0x0D,0xF4,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x03,0x06,0xEC,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x02,0x07,0x18,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x03,0x07,0xB8,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x3E,0x01,0x80,0x00,0x01,0xC0,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x77,0x01,0x80,0x00,0x01,0xC0,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x03,0x81,0xE3,0x83,0x80,0x00,0x01,0xC0,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x07,0x03,0x9D,0xC7,0x00,0x00,0x0F,0xFC,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x06,0x07,0x7C,0xDE,0x00,0x00,0x0F,0xFC,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x0C,0x0C,0x00,0xFF,0x00,0x00,0x0E,0x1F,0xFF,0xE0,0x00,
0x00,0x00,0x00,0x00,0x00,0x1C,0x0F,0xFC,0xFF,0x00,0x00,0x0F,0xFF,0xFF,0xE0,0x00,
0x00,0x00,0x00,0x00,0x00,0x18,0x1F,0xFF,0xFF,0xC0,0x00,0x0F,0xFC,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x1F,0xFF,0xFF,0xFF,0xE0,0x00,0x0E,0x1C,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x3F,0xF0,0x0F,0xE1,0xE0,0x00,0x0F,0xFF,0x87,0x00,0x00,
0x00,0x0C,0x00,0x00,0x00,0x38,0x06,0x00,0xE1,0xC0,0x00,0x0F,0xFD,0xC7,0x00,0x00,
0x00,0x7F,0xF8,0x1F,0xE0,0x38,0x3E,0x00,0xFF,0x80,0x00,0x0E,0x1D,0xE7,0x00,0x00,
0x00,0x7F,0xFF,0xFF,0x90,0x38,0xFC,0x00,0xFF,0x80,0x00,0x0E,0x1C,0xE7,0x00,0x00,
0x00,0x60,0x1F,0xFF,0xF0,0x79,0xF0,0x00,0xE3,0x80,0x00,0x1F,0xFC,0x77,0x00,0x00,
0x00,0x61,0xFF,0xFF,0xFF,0xED,0xC0,0x00,0xF3,0xC0,0x00,0x1F,0xFC,0x07,0x00,0x00,
0x00,0x7F,0xFF,0xF3,0xFF,0xEC,0x00,0x01,0xFB,0xC0,0x00,0x00,0xFC,0x07,0x00,0x00,
0x00,0x7F,0xFF,0xF3,0x80,0xEC,0x00,0x01,0xFF,0x80,0x00,0x03,0xFC,0x07,0x00,0x00,
0x00,0x06,0x00,0x7E,0x00,0x0F,0xE0,0x01,0xC7,0x00,0x00,0x0F,0x9C,0x07,0x00,0x00,
0x00,0x07,0xFF,0xFF,0xC0,0x07,0x80,0x01,0xE7,0x80,0x00,0x3F,0x1C,0x0F,0x00,0x00,
0x00,0x00,0x3F,0xFF,0xE0,0x07,0x00,0x00,0xF7,0x80,0x00,0x1C,0xFC,0xFF,0x00,0x00,
0x00,0x00,0x0F,0xFC,0x70,0x03,0xC0,0x00,0xFF,0x80,0x00,0x00,0xF8,0xFE,0x00,0x00,
0x00,0x00,0x01,0xFE,0x30,0x01,0xF0,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x7F,0x30,0x00,0x7E,0x0F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x3F,0x3F,0xF0,0x1F,0xFF,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x1F,0xFF,0xFF,0x3F,0xF8,0xF0,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x0F,0xFC,0x0F,0xF3,0xF0,0x38,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x0F,0xFC,0x01,0xFC,0x38,0x1C,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x07,0xFC,0x00,0xE8,0x18,0x0C,0x00,0x00,0x0F,0xFF,0xFF,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xE8,0x38,0x0E,0x00,0x00,0x0F,0xFF,0xFF,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xE8,0x70,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xE8,0x60,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xEC,0xF0,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xF7,0x60,0x0C,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x70,0x1C,0x00,0x00,0x1F,0xFF,0xFF,0xC0,0x00,
0x00,0x00,0x00,0x00,0x00,0x01,0xFF,0x38,0x38,0x00,0x00,0x1F,0xFF,0xFF,0xC0,0x00,
0x00,0x00,0x00,0x00,0x00,0x07,0x87,0xF9,0xF0,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x07,0x01,0xE9,0xC0,0x00,0x00,0x00,0x07,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x00,0xE0,0x00,0x00,0x07,0x07,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x0C,0x01,0xC0,0x70,0x00,0x00,0x07,0x07,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x1C,0x01,0xE0,0x30,0x00,0x00,0x07,0x07,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x18,0x03,0x60,0x18,0x00,0x00,0x07,0x07,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x18,0x03,0x60,0x18,0x00,0x00,0x07,0x07,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x38,0x07,0x60,0x18,0x00,0x00,0x07,0x07,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0xF0,0x06,0x60,0x0C,0x00,0x00,0x07,0xFF,0xFF,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0xC0,0x06,0x60,0x0E,0x00,0x00,0x07,0xFF,0xFF,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0xC0,0x06,0x60,0x06,0x00,0x00,0x00,0x00,0x07,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0x80,0x06,0x60,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0xC0,0x0E,0x60,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0xF0,0xFC,0x70,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x7F,0xFC,0x3F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x1F,0x80,0x1F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
};
#define key (PIND&0x08)==0
#define data (PIND&0x04)==0x04
#define set_cs asm("sbi 0x18,2")
#define set_clk asm("sbi 0x18,3")
#define set_data asm("sbi 0x12,2")
#define cl_cs asm("cbi 0x18,2")
#define cl_clk asm("cbi 0x18,3")
#define cl_data asm("cbi 0x12,2")
#pragma interrupt_handler key_check:5
unsigned char k = 0x00; ;n = 0;
void key_check()
{
n=1;
send(0x15); /* 读键盘指令 */
k=receive()+61;
set_cs;
}
void led_init (void)
{
DDRB|= 0x0C; /* PB0和PB1为输入 */
set_cs;
send (0xA4);
}
void init_7279()
{
SREG|=0x80; /* 状态寄存器,全局中断允许 */
EIMSK|=0x08; /* 外部中断屏蔽寄存器 */
EICRA&=0x3f; /* 外部中断控制寄存器A,INTn的上
/* 升沿产生一个异步终端请求 */
DDRD&=0xf7; /* PD3为输入 */
DDRB|=0x0c;
PORTD&=0xfb; /* PD2输出为1 */
}
void send (unsigned char out_data)
{
unsigned char i;
DDRD|=0x04; /* PD2为输出 */
cl_cs; /* PB2输出为0 */
l_delay();
for(i=0;i<8;i++)
{
if(out_data&0x80)
{
set_data; /* PD2输出为1 */
}
else
{
cl_data; /* PD2输出为0 */
}
s_delay();
set_clk;
s_delay();
cl_clk;
s_delay();
out_data*=2; /* 数据向左移一位 */
}
cl_data;
}
unsigned char receive(void)
{
unsigned char i;
unsigned char in_data=0x00;
DDRD&=0xfb;
/* PD2为输入 */
for(i=0;i<8;i++)
{
set_clk;
s_delay();
in_data*=2; /* 数据左移一位 */
if(data)
{
in_data|=0x01;
}
cl_clk;
s_delay();
}
cl_data;
return(in_data);
}
void main()
{
unsigned char i = 0;
lcd_init();
lcd_clear();
init_7279();
s_delay();
send (0xA4);
while(1)
{
switch(k)
{
case 65:set_cs;send(0xc8);send(0x00);lcd_putsc(0,0,"北京欢迎你");break;
case 66:set_cs;send(0xc8);send(0x01);lcd_putsc(2,2,"福娃迎奥运");break;
case 67:set_cs;send(0xc8);send(0x02);lcd_w(0xf4);lcd_putsm(0,1,"运奥迎娃福你迎欢京北");break;
case 68:set_cs;send(0xc8);send(0x03);lcd_putse(0,0,a);move();break;
case 73:set_cs;send(0xc8);send(0x04);lcd_putse(0,0,b);move1();break;
case 74:set_cs;send(0xc8);send(0x05);lcd_putsc(0,0,"五");break;
case 75:set_cs;send(0xc8);send(0x06);lcd_putsc(0,0,"六");break;
case 76:set_cs;send(0xc8);send(0x07);lcd_putsc(0,0,"七");break;
case 81:set_cs;send(0xc8);send(0x08);lcd_putsc(0,0,"八");break;
case 82:set_cs;send(0xc8);send(0x09);lcd_putsc(0,0,"九");break;
case 83:set_cs;send(0xc8);send(0x0A);lcd_putsc(0,0,"拾");break;
case 84:set_cs;send(0xc8);send(0x0B);lcd_putsc(0,0,"十一");break;
case 89:set_cs;send(0xc8);send(0x0C);lcd_putsc(0,0,"十二");break;
case 90:set_cs;send(0xc8);send(0x0D);lcd_putsc(0,0,"十三");break;
case 91:set_cs;send(0xc8);send(0x0E);lcd_putsc(0,0,"十四");break;
case 92:set_cs;send(0xc8);send(0x0F);lcd_putsc(0,0,"十五");break;
default:break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -