色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

4*4矩陣鍵盤的工作原理

CHANBAEK ? 來源:博客園-立冬以東 ? 作者:博客園-立冬以東 ? 2023-02-15 13:52 ? 次閱讀

MCU讀取按鍵是否按下,往往需要進行消抖,而消抖措施有很多種, 可以利用電容電路,可以用數電里學的觸發器電路, 這些可以說都是在硬件層面來消抖的。 但是有更簡單便宜的軟件消抖措施。

軟件消抖也分為延時重采樣和持續采樣兩種方式。

延時重采樣就是在采樣到按鍵被按下信號后,延時約10ms后,再次采樣,如果扔檢測到是按下,則就會判定為按鍵確實被按下“一次”。

持續采樣就是當采樣到按鍵被按下信號后,在一段時間內連續檢測,如果一直沒變,則判定為被按下一次。

一個4*4的矩陣鍵盤的原理就是,四行串聯在四位IO口,四列串聯在四位IO口

以上圖解釋,先將PD = 1111 1110 ,即將第一列置低,然后取PD的高四位,若檢測到高四位不是1111,比如是1101,說明第三行雖然一開始是置高的,但是被強制拉低了,所以說明S13鍵被按下了。

然后將PD循環左移,將第二列置低,以此類推。

這其中還要加上延時重采樣消抖,就可以進行矩陣鍵盤的檢測了。

舉個栗子

1 #include 52.h>
 2 #include 
 3 
 4 #define uint unsigned int
 5 #define uchar unsigned char
 6 
 7 uchar key = 0;
 8 uchar table[]={
 9     0x3f, 0x06, 0x5b, 0x4f,
10     0x66, 0x6d, 0x7d, 0x07,
11     0x7f, 0x6f, 0x77, 0x7c,
12     0x39, 0x5e, 0x79, 0x71
13 };
14 
15 void init()
16 {
17     P1 = 0x00;
18     P0 = 0x00;
19 }
20 
21 void delayms(uint xms)
22 {
23     uint i, j;
24     for(i = 0; i < xms; i++)
25         for(j = 0; j < 110; j++);
26 }
27 
28 void keys()
29 {
30     uchar temp;
31     uint i;
32     for(i = 0; i < 4; i++){
33         P2 = _crol_(0xfe, i);
34         temp = P2;
35         temp &= 0xf0;
36         if(temp != 0xf0){
37             delayms(10);
38             temp = P2;
39             temp &= 0xf0;
40             if(temp != 0xf0){
41                 switch(temp)
42                 {
43                     case 0xe0 : key = 0+4*i; break;
44                     case 0xd0 : key = 1+4*i; break;
45                     case 0xb0 : key = 2+4*i; break;
46                     case 0x70 : key = 3+4*i; break;
47                 }
48                 while(temp != 0xf0){
49                     temp = P2;
50                     temp &= 0xf0;
51                 }
52             }
53         }
54     }
55 }
56 
57 void display(uchar key)
58 {
59     P1 = table[key];
60 }
61 
62 void main()
63 {
64     init();
65     while(1){
66         keys();
67         display(key);
68     }
69 }

代碼實現功能是檢測4*4鍵盤,每個按鍵代表一個數字,顯示在屏幕上。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17123

    瀏覽量

    350992
  • 信號
    +關注

    關注

    11

    文章

    2789

    瀏覽量

    76730
  • 觸發器
    +關注

    關注

    14

    文章

    2000

    瀏覽量

    61132
  • 矩陣鍵盤
    +關注

    關注

    7

    文章

    206

    瀏覽量

    31454
  • 電容電路
    +關注

    關注

    1

    文章

    11

    瀏覽量

    3104
收藏 人收藏

    評論

    相關推薦

    4*4矩陣鍵盤設計及源代碼

    4*4矩陣鍵盤設計及源代碼 一 實驗目的1 學習使用4X4 掃描鍵盤的設計方法;2 實踐對比按
    發表于 02-08 16:30 ?472次下載

    4×4矩陣鍵盤識別技術

    4×4矩陣鍵盤識別技術 1. 實驗任務 如圖4.14.2所示,用AT89S51的并行口P1接4×4
    發表于 04-16 10:26 ?5368次閱讀
    <b class='flag-5'>4</b>×<b class='flag-5'>4</b><b class='flag-5'>矩陣</b>式<b class='flag-5'>鍵盤</b>識別技術

    4×4矩陣式非編碼鍵盤電路

    4×4矩陣式非編碼鍵盤電路 輸入鍵盤控制電路采用4×4
    發表于 02-21 15:04 ?4987次閱讀
    <b class='flag-5'>4</b>×<b class='flag-5'>4</b><b class='flag-5'>矩陣</b>式非編碼<b class='flag-5'>鍵盤</b>電路

    4×4矩陣鍵盤工作原理

    發表于 07-31 10:28 ?9次下載

    4×4矩陣鍵盤工作原理與編程

    發表于 08-09 16:24 ?31次下載

    基于51單片機對4*4矩陣鍵盤掃描

    基于51單片機,對4*4矩陣鍵盤掃描,并用7段數碼管顯示按鍵信息。
    發表于 11-24 13:55 ?86次下載

    4x4矩陣鍵盤程序及原理圖PCB

    4x4矩陣鍵盤程序及原理圖PCB,供大家下載。
    發表于 12-21 18:25 ?0次下載

    單片機新手入門實例詳解之三_4×4矩陣鍵盤工作原理與編程

    本文介紹了如何在ME300B型51/AVR單片機學習系統上使用數碼管顯示4X4矩陣鍵盤的鍵值。
    發表于 03-28 15:23 ?32次下載

    4x4矩陣鍵盤工作原理及掃描程序

    矩陣鍵盤的動態掃描確實略顯復雜,不可能就是讀一個端口數據,然后馬上就出來結果。這需要對依次每一行的按鍵進行掃描、判斷,然后得出結果。本文主要介紹了矩陣鍵盤掃描以及
    的頭像 發表于 02-24 15:30 ?24.2w次閱讀
    <b class='flag-5'>4x4</b><b class='flag-5'>矩陣</b><b class='flag-5'>鍵盤</b><b class='flag-5'>工作原理</b>及掃描程序

    什么是矩陣鍵盤4*4鍵盤的原理軟件設計分析

    矩陣鍵盤又稱為行列式鍵盤,它是用4條I/O線作為行線,4條I/O線作為列線組成的鍵盤。 在行線
    發表于 06-26 09:26 ?3.9w次閱讀

    基于51單片機的4*4矩陣鍵盤字符輸入

    使用4*4矩陣鍵盤和一個數碼管在4*4矩陣
    發表于 06-26 09:56 ?1.1w次閱讀

    4*4矩陣鍵盤工作原理和實現的詳細資料介紹

    在單片機按鍵使用過程中,當鍵盤中按鍵數量較多時為了減少端口的占用通常將按鍵排列成矩陣 形式如下圖所示,在矩陣鍵盤中每條水平線和垂直線在交叉處不直接連通而是通過一個按鍵加以連接,到底這
    發表于 12-26 08:00 ?151次下載
    <b class='flag-5'>4</b>*<b class='flag-5'>4</b><b class='flag-5'>矩陣</b><b class='flag-5'>鍵盤</b>的<b class='flag-5'>工作原理</b>和實現的詳細資料介紹

    怎樣連接4×4帶Arduino的矩陣鍵盤以及如何從鍵盤獲取數據

    在本教程中,我們將學習4×4矩陣鍵盤以及Arduino鍵盤接口的工作原理
    的頭像 發表于 07-30 10:16 ?2.4w次閱讀

    4*4矩陣鍵盤驅動程序

    4*4矩陣鍵盤驅動程序
    發表于 11-15 11:51 ?7次下載
    <b class='flag-5'>4</b>*<b class='flag-5'>4</b><b class='flag-5'>矩陣</b><b class='flag-5'>鍵盤</b>驅動程序

    帶有stm32的宏鍵盤4x4矩陣

    電子發燒友網站提供《帶有stm32的宏鍵盤4x4矩陣.zip》資料免費下載
    發表于 07-28 14:19 ?5次下載
    帶有stm32的宏<b class='flag-5'>鍵盤</b><b class='flag-5'>4x4</b><b class='flag-5'>矩陣</b>
    主站蜘蛛池模板: 亚洲精品视频在线播放| 真实国产乱子伦精品一区二区三区| 亚洲中字幕永久在线观看| 99久久99久久精品免费看子 | 寂寞夜晚视频高清观看免费| 两性午夜刺激爽爽视频| 色橹| 一久久| 粉嫩极品国产在线观看| 精品一产品大全| 色女仆影院| 91久久偷偷看嫩草影院无费| 国产乱子影视频上线免费观看 | 午夜福利32集云播| 亚洲视频在线免费| 成人免费观看www视频| 久久人妻无码毛片A片麻豆| 四房色播手机版| 99免费视频观看| 精品久久日日躁夜夜躁AV| 日本美女阴道| 68日本xxxxxxxx79| 国内外成人免费在线视频| 日本伦子欲| 2021精品高清卡1卡2卡3麻豆| 国产午夜电影在线观看不卡| 漂亮的保姆3中文版完整版| 一起碰一起噜一起草视频| 国产精品免费观看视频| 欧美精品专区免费观看| 影888午夜理论不卡| 国产精品爽爽久久久久久无码| 久久婷五月综合色啪网| 亚洲精品动漫免费二区| 高H高肉强J短篇校园| 牛和人交videos欧美| 野花日本韩国视频免费高清观看| 国产精品毛片在线视频| 日本色高清| 九九久久精品| 亚洲AV无码A片在线观看蜜桃|