久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 51單片機(jī)4*4矩陣鍵盤(pán)proteus仿真與源碼 [打印本頁(yè)]

作者: Loser007    時(shí)間: 2018-5-5 18:51
標(biāo)題: 51單片機(jī)4*4矩陣鍵盤(pán)proteus仿真與源碼
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


基于AT89S52單片機(jī)的4*4矩陣鍵盤(pán)程序
C++ Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80


/*----------------------------------------
    File:   key44.h
    Date:Loser007       May 5, 2018 12:59

----------------------------------------*/


#ifndef __KEY44_H__
#define __KEY44_H__
#pragma SAVE
#pragma REGPARMS
extern char Matrix_keyboard(void);

/*----------------------------------------
    Name:   Matrix_keyboard
    Features:   Get a case from the 4*4 keyboard
    Parameter: No
    Return:Key code (char)
    Instructions:Keyboard I/0 From P1^0 to P1^7
    Date:Loser007       May 5, 2018 10:40
----------------------------------------*/

char Matrix_keyboard(void)
{
    unsigned char Key = 0, X = 0, Y = 0;
    P1 = 0xF0;  //11110000
    X = P1 & 0xF0;  //Get row   (P1 XOR 11110000) Get Height
    if(X != 0xF0)
    {
        X = P1 ^ 0xF0;
        P1 = 0x0F;  //00001111
        Y = P1 & 0x0F;
        if(Y != 0x0F)
        {
            Y = P1 ^ 0x0F;  //Get Column    (P1 XOR 00001111) Get Low
            Key = X + Y;
        }
    }
    switch (Key)
    {
    // 1
    case 0x81:
        return 0;   //1000 0001
    case 0x82:
        return 1;   //1000 0010
    case 0x84:
        return 2;   //1000 0100
    case 0x88:
        return 3;   //1000 1000
    // 2
    case 0x41:
        return 4;   //0100 0001
    case 0x42:
        return 5;   //0100 0010
    case 0x44:
        return 6;   //0100 0100
    case 0x48:
        return 7;   //0100 1000
    // 3
    case 0x21:
        return 8;   //0010 0001
    case 0x22:
        return 9;   //0010 0010
    case 0x24:
        return 10;  //0010 0100
    case 0x28:
        return 11;  //0010 1000
    //4
    case 0x11:
        return 12;  //0001 0001
    case 0x12:
        return 13;  //0001 0010
    case 0x14:
        return 14;  //0001 0100
    case 0x18:
        return 15;  //0001 1000

    default:
        return 255;
    }
}
#endif



矩陣鍵盤(pán).rar

21.53 KB, 下載次數(shù): 26, 下載積分: 黑幣 -5

代碼


作者: Loser007    時(shí)間: 2018-5-5 18:52
嚴(yán)禁轉(zhuǎn)載 尤其是CSDN




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美一级大片免费观看 | 亚洲精品国产成人 | 国产精品免费观看 | 精品久久99 | 欧美成人一区二区 | 亚洲一区二区三区免费在线观看 | 国产一级片一区二区 | 五月天激情综合网 | 国产一区二区 | 日本在线一区二区三区 | 中午字幕在线观看 | 国产精品久久久久久中文字 | 成人免费视频久久 | 久久免费精品 | 日韩三级| 天天插天天操 | 日韩a在线 | 成人一区二区在线 | 午夜男人的天堂 | 国产精品亚洲精品日韩已方 | 国产精品久久久久久久久久免费看 | 成人在线观看免费 | 日韩欧美专区 | 久久免费观看一级毛片 | 国产精品一区一区三区 | 欧美在线a | 毛片综合 | 久久亚洲精品国产精品紫薇 | 国产日韩欧美另类 | h网站在线观看 | 欧美福利视频 | 天天操天天干天天曰 | 日韩av高清在线 | 久久99深爱久久99精品 | 久久美女视频 | 免费看黄视频网站 | 91 视频网站 | 国产精品免费一区二区三区四区 | 国产在线对白 | 99精品国产一区二区青青牛奶 | 欧美乱码精品一区二区三区 |