一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

3天內(nèi)不再提示

如何設(shè)計一個節(jié)約單片機端口資源的鍵盤電路

Wildesbeast ? 來源:福星電子網(wǎng) ? 作者:福星電子網(wǎng) ? 2020-05-05 12:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

新型鍵盤電路

鍵盤電路是單片機應(yīng)用系統(tǒng)最常用的人機接口,往往要占用較多的I/O端口,利用本文介紹的電路,可以最大限度地減少鍵盤電路對I/O端口的點用。本電路特別適合一些引腳少、結(jié)構(gòu)緊湊的單片機,可為其節(jié)省寶貴的I/O資源。

這里以3根I/O線為例,普通接法只能接3個鍵,即使是采用改進后的組合接法[1],最多也只能接7個鏈,本文介紹的電路是在組合接法的基礎(chǔ)上增加了3個二極管,并采用了新的接法。其軟件處理使用了端口訪問和掃描檢測兩種方法,從而使按鍵數(shù)可達到16個,同時由于采用了組合邏輯來直接對端口進行讀取,因此極大地簡經(jīng)了程序的處理過程,同時也節(jié)省了寶貴的存儲器和CPU運算資源。圖1是該電路的電路原理圖。

2 軟件過程和程序

該電路在程序處理時,由處理器首先向I/O1~I/O3寫高電平,然后讀入。如果非全“1”,說明,K0~K6中有鍵按下,此時可根據(jù)讀入的端口狀態(tài)判斷鍵的狀態(tài),如果讀入的結(jié)果為全“1”,則I/O1~I/O3輪流輸出低電平,再讀入,這樣就可根據(jù)另外兩根I/O線的狀態(tài)來判別是K7~K15中的哪一個鍵被按下。重復調(diào)用鍵盤處理子程序可將讀取的鍵值與上次的值進行比較,甚至兩次讀數(shù)相同為止,這樣即可消除按鍵抖動所造成的誤讀。該電路選用的單片機為 AT89C2051,用C51語言編寫的按鍵電路處理程序如下:

#include《c:eg51.h》

#define uchar unsigned char

uchar getkey(void);

uchar keyvol;

void main(void)

{

keyvol=getkey(); /*調(diào)用鍵處理函數(shù),返回的數(shù)據(jù)等于16表示同有鍵按下,0至15對應(yīng)k0至K15*/

}

以下為鍵盤處理子程序:

uchar getkey(void)

{

uchar x

P1=P1|0x07; /*I/O1至I/O3寫“1”*/

xP1&0x07; /*讀入I/O1至I/O3并屏蔽其它位*/

if(x= =10)

{

P1=P1|0x07;

P1=P1&0xfd; /*I/O2寫“0”*/

x=P1&0x07;

x=(x+1)/2+10; /*屏蔽I/O2并轉(zhuǎn)換K10至K12的鍵值*/

if(x = =13)

{

P1=P1|0x07;

P1=P1&0xfb; /*I/O3寫“0”*/

x=P1&0x07;

x=x+13; /*屏蔽I/O3并轉(zhuǎn)換K13至K15的鍵值*/

}

}

}

return x;

}

利用該鍵盤電路并根據(jù)邏輯組合原理可推斷開n條I/O線可組合的按鍵數(shù)N為:

N=(2n-1)+(2 n-1 -1)n

表1給出了2至4條I/O線可組合的按鍵數(shù)。

表1 2~4條I/O線可組合的按鍵數(shù)

I/O線 可組合按鍵

2 5

3 16

4 43

3 結(jié)束語

這種新型鍵盤電路在使用時非常穩(wěn)定可靠,節(jié)省大量的I/O端口,而且程序處理也很簡潔,速率比4×4的掃描式電路還要快,因此,該電路特別適合一些引腳較少的單片機,如PIC12C508、Z86E03以及AT89C2051等。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6067

    文章

    44991

    瀏覽量

    650423
  • AT89C2051
    +關(guān)注

    關(guān)注

    7

    文章

    170

    瀏覽量

    66894
  • 鍵盤電路
    +關(guān)注

    關(guān)注

    3

    文章

    29

    瀏覽量

    20041
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    基于單片機的矩陣鍵盤檢測案例

    /O端口資源,導致單片機與其它外部設(shè)備無法連接。在這種情況下,可以使用矩陣鍵盤,實現(xiàn)多個按鍵與單片機的連接,而且不浪費
    的頭像 發(fā)表于 10-31 14:35 ?1903次閱讀
    基于<b class='flag-5'>單片機</b>的矩陣<b class='flag-5'>鍵盤</b>檢測案例

    如何實現(xiàn)基于單片機鍵盤檢測

    鍵盤單片機與用戶交互設(shè)備之,用戶通過鍵盤輸入數(shù)據(jù)或命令到單片機。最簡單的鍵盤僅有
    的頭像 發(fā)表于 10-31 14:39 ?2756次閱讀
    如何實現(xiàn)基于<b class='flag-5'>單片機</b>的<b class='flag-5'>鍵盤</b>檢測

    利用單片機A D端口擴展鍵盤點改進

    利用單片機A/D 端口擴展鍵盤點改進
    發(fā)表于 05-15 13:12 ?15次下載

    單片機鍵盤上的應(yīng)用

    單片機鍵盤上的應(yīng)用 鍵盤擔負著向系統(tǒng)發(fā)出命令和查詢系統(tǒng)工作狀態(tài)的重任。由于各種單片機所提供的片內(nèi)外資源不同,所以在進行
    發(fā)表于 03-29 14:34 ?39次下載

    節(jié)約單片機端口資源鍵盤電路

    鍵盤電路單片機應(yīng)用系統(tǒng)最常用的人機接口,往往要占用較多的I/O端口,利用本文介紹的電路,可以最大限度地減少
    發(fā)表于 09-28 17:55 ?2430次閱讀
    <b class='flag-5'>節(jié)約</b><b class='flag-5'>單片機</b><b class='flag-5'>端口</b><b class='flag-5'>資源</b>的<b class='flag-5'>鍵盤</b><b class='flag-5'>電路</b>

    節(jié)約端口線及器件的新型鍵盤

    鍵盤電路單片機應(yīng)用系統(tǒng)最常用的人機接口,往往要占用較多的I/O端口, 現(xiàn)在有些很節(jié)約I/O資源
    發(fā)表于 10-10 11:27 ?1408次閱讀
    <b class='flag-5'>節(jié)約</b><b class='flag-5'>端口</b>線及器件的新型<b class='flag-5'>鍵盤</b>

    節(jié)約單片機端口資源鍵盤電路

    I/0 端 口是單片機實現(xiàn)對目標控制的端口,般小型單片機的 I/0 端口都十分寶貴。文中介紹了
    發(fā)表于 03-29 10:21 ?13次下載

    種新的單片機和AT通用鍵盤的接口

    本文介紹種C505CA單片機與AT通用鍵盤的新的接口電路,該接口電路既能接收AT
    發(fā)表于 03-30 17:02 ?9次下載

    單片機控制系統(tǒng)鍵盤顯示電路設(shè)計

    單片機控制系統(tǒng)鍵盤顯示電路設(shè)計
    發(fā)表于 01-23 20:48 ?24次下載

    設(shè)計節(jié)約端口線器件的新型鍵盤的詳細資料概述

    鍵盤電路單片機應(yīng)用系統(tǒng)最常用的人機接口,往往要占用較多的I/O端口, 現(xiàn)在有些很節(jié)約I/O資源
    的頭像 發(fā)表于 11-09 11:00 ?4271次閱讀
    設(shè)計<b class='flag-5'>一</b><b class='flag-5'>個</b><b class='flag-5'>節(jié)約</b><b class='flag-5'>端口</b>線器件的新型<b class='flag-5'>鍵盤</b>的詳細資料概述

    節(jié)約單片機端口資源鍵盤電路電路圖和程序詳細說明

    鍵盤電路單片機應(yīng)用系統(tǒng)最常用的人機接口,往往要占用較多的I/O端口,利用本文介紹的電路,可以最大限度地減少
    的頭像 發(fā)表于 01-26 11:25 ?4246次閱讀
    <b class='flag-5'>節(jié)約</b><b class='flag-5'>單片機</b><b class='flag-5'>端口</b><b class='flag-5'>資源</b><b class='flag-5'>鍵盤</b><b class='flag-5'>電路</b>的<b class='flag-5'>電路</b>圖和程序詳細說明

    單片機鍵盤檢測與應(yīng)用

    非編碼鍵盤通常又分為獨立鍵盤和矩陣鍵盤兩大類。所謂獨立鍵盤是指按鍵在與單片機相連時,每一個按鍵都
    的頭像 發(fā)表于 09-18 16:34 ?5727次閱讀

    實例制作51單片機連接PS2鍵盤講解

    實例制作51單片機連接PS2鍵盤講解(單片機原理及應(yīng)用技術(shù))-該文檔為實例制作
    發(fā)表于 07-22 12:11 ?39次下載
    實例制作<b class='flag-5'>一</b><b class='flag-5'>個</b>51<b class='flag-5'>單片機</b>連接PS2<b class='flag-5'>鍵盤</b>講解

    51單片機之矩陣鍵盤

    獨立鍵盤單片機連接時,每一個按鍵都需要單片機I/O口若某
    發(fā)表于 11-12 10:51 ?12次下載
    51<b class='flag-5'>單片機</b>之矩陣<b class='flag-5'>鍵盤</b>

    基于51單片機的矩陣鍵盤設(shè)計

    矩陣鍵盤,是種在節(jié)省端口的前提下控制大量按鍵的種方法,對于傳統(tǒng)的獨立對地鍵盤,
    的頭像 發(fā)表于 01-17 16:23 ?6069次閱讀
    基于51<b class='flag-5'>單片機</b>的矩陣<b class='flag-5'>鍵盤</b>設(shè)計