国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

N+1鍵盤(pán)的兩次原理改

2016-08-31 09:46:16孫海童
關(guān)鍵詞:鍵值中斷按鍵

孫海童

(江蘇國(guó)光信息產(chǎn)業(yè)股份有限公司, 常州213015)

?

孫海童

(江蘇國(guó)光信息產(chǎn)業(yè)股份有限公司, 常州213015)

近年來(lái),經(jīng)常出現(xiàn)計(jì)劃在原有硬件基礎(chǔ)上增加新功能,卻發(fā)現(xiàn)單片機(jī)的I/O資源不夠用的情況,雖然改為使用N+1方式的鍵盤(pán)可以節(jié)省不少口線資源,但理論上的N+1在實(shí)際工作中有一定缺陷,不能適應(yīng)不同的硬件及結(jié)構(gòu)。筆者根據(jù)工作中實(shí)際情況兩次改進(jìn)電路,使之能適應(yīng)不同的硬件和結(jié)構(gòu)。

N+1鍵盤(pán)電路;I/O資源;單片機(jī)

引 言

本設(shè)計(jì)主要是在原產(chǎn)品硬件基礎(chǔ)上增加新功能,而新的功能會(huì)占據(jù)一些I/O資源,經(jīng)過(guò)查詢資料,發(fā)現(xiàn)前人做過(guò)縮減鍵盤(pán)I/O口的工作,借鑒其方法,發(fā)現(xiàn)與預(yù)期有差距。不斷比較自己設(shè)計(jì)電路與之前電路的不同,發(fā)現(xiàn)細(xì)微差別會(huì)導(dǎo)致不同預(yù)期結(jié)果。根據(jù)項(xiàng)目需要,從原理上改進(jìn)兩次電路,可達(dá)到預(yù)期要求。

1 常見(jiàn)N+1鍵盤(pán)原理

1.1常見(jiàn)鍵盤(pán)介紹

鍵盤(pán)輸入作為最常用的輸入設(shè)備仍有其不可替代的作用。鍵盤(pán)的結(jié)構(gòu)通常有兩種形式:線性鍵盤(pán)和矩陣鍵盤(pán)。在不同的場(chǎng)合下,這兩種鍵盤(pán)均得到了廣泛的應(yīng)用。

線性鍵盤(pán)由若干個(gè)獨(dú)立的按鍵組成,每個(gè)按鍵的一端與微機(jī)的一個(gè)I/O口相連,有多少個(gè)鍵就要有多少根連線與微機(jī)的I/O口相連,因此,只適用于按鍵少的場(chǎng)合。

矩陣鍵盤(pán)的按鍵按N行M列排列,每個(gè)按鍵占據(jù)行列的一個(gè)交點(diǎn),需要的I/O口數(shù)目是N+M,容許的最大按鍵數(shù)是N×M。顯然,矩陣鍵盤(pán)可以減少與微機(jī)接口的連線數(shù),簡(jiǎn)化結(jié)構(gòu),是一般微機(jī)常用的鍵盤(pán)結(jié)構(gòu)。根據(jù)矩陣鍵盤(pán)識(shí)鍵和譯鍵方法的不同,矩陣鍵盤(pán)又可以分為非編碼鍵盤(pán)和編碼鍵盤(pán)兩種:

① 非編碼鍵盤(pán)。非編碼鍵盤(pán)主要用軟件的方法識(shí)鍵和譯鍵,根據(jù)掃描方法的不同,可以分為行掃描法、列掃描法和反轉(zhuǎn)法3種。

② 編碼鍵盤(pán)。編碼鍵盤(pán)主要用硬件來(lái)實(shí)現(xiàn)鍵的掃描和識(shí)別,通常使用8279專(zhuān)用接口芯片,在硬件上要求較高。

1.2新型N+1鍵盤(pán)的硬件和軟件原理實(shí)現(xiàn)

有些特殊情況下,在組成一個(gè)最小單片機(jī)系統(tǒng)的過(guò)程中,由于通用的I/O口有限,而又需要大量的按鍵輸入,這就要求一種新的鍵盤(pán)結(jié)構(gòu),即用盡量少的I/O口來(lái)實(shí)現(xiàn)盡可能多的鍵盤(pán)輸入。經(jīng)過(guò)分析,實(shí)際上用N+1個(gè)I/O口,輔以適當(dāng)?shù)慕涌陔娐?,是可以?shí)現(xiàn)N×N個(gè)按鍵的?,F(xiàn)以6個(gè)端口實(shí)現(xiàn)5×5的按鍵為例來(lái)描述。

圖1 5×5按鍵矩陣的示意圖

圖1所示為用6個(gè)I/O口來(lái)實(shí)現(xiàn)25個(gè)按鍵的示意圖。具體的物理實(shí)現(xiàn)電路如圖2所示。

圖2 用6個(gè)I/O口實(shí)現(xiàn)5×5按鍵矩陣的原理圖

由圖1和圖2可見(jiàn),硬件部分分為兩塊:一塊是普通鍵盤(pán)矩陣,另外一塊是中斷和接口電路,主要由相應(yīng)數(shù)目的二極管和電阻組成。針對(duì)6個(gè)I/O口的情況,實(shí)現(xiàn)5×5的按鍵矩陣的中斷和接口電路共需要10個(gè)二極管、12個(gè)電阻和1只三極管。

10個(gè)二極管按其在電路中所起的作用可分為兩組:第一組包括D6、D7、D8、D9和D10,用于保證按鍵信息的單一流向;第二組包括D1、D2、D3、D4和D5,它們?cè)陔娐飞蠈?duì)NPN三極管的基極構(gòu)成“或”的邏輯關(guān)系,對(duì)單片機(jī)進(jìn)行初始化。除了PORT6(要求其具有中斷功能)以外,其余的I/O口均被置成高電平,這樣當(dāng)有鍵按下時(shí),三極管的基極由低變高,三極管導(dǎo)通;集電極由高電平跳變成低電平,向單片機(jī)發(fā)出中斷信號(hào),從而啟動(dòng)鍵盤(pán)掃描程序。

按鍵的識(shí)別主要靠軟件來(lái)實(shí)現(xiàn),需要編寫(xiě)鍵盤(pán)掃描程序。為了更好地說(shuō)明鍵盤(pán)掃描的過(guò)程,假設(shè)編號(hào)為S12的鍵被按下,掃描程序已經(jīng)啟動(dòng),掃描的具體過(guò)程如表1所列。

鍵盤(pán)掃描程序流程圖如圖3所示。應(yīng)用在實(shí)際電路中,在鍵盤(pán)按鍵為全金屬接觸的情況下,得到了良好的效果,但在后續(xù)的降低成本工作中發(fā)現(xiàn)此N+1鍵盤(pán)存在缺陷。

表1 鍵盤(pán)掃描過(guò)程

注:Pi為PORT,O為輸出,I為輸入,H為高電平,L為低電平。

圖3 鍵盤(pán)掃描程序流程圖

2 N+1鍵盤(pán)在實(shí)際使用中缺陷及改進(jìn)

2.1缺陷現(xiàn)象及原因

圖4 鍵盤(pán)原理圖

為了降低成本,鍵盤(pán)改為導(dǎo)電橡膠按鍵,出現(xiàn)了奇怪的現(xiàn)象,按下鍵后要么出現(xiàn)相應(yīng)的鍵值,要么出現(xiàn)其他鍵值,后來(lái)發(fā)現(xiàn)這些鍵值有規(guī)律,為對(duì)角線上的按鍵鍵值。

經(jīng)分析,原因?yàn)樵I盤(pán)導(dǎo)電橡膠按鍵有不確定的接觸電阻分壓,且電路圖因含中斷信號(hào)放大電路,造成中斷和口線對(duì)電壓的靈敏度判斷不一致,所以按鍵偶爾會(huì)出現(xiàn)其他鍵值(對(duì)角線上鍵值)。

2.2改進(jìn)辦法

在圖2中將3904去掉,不接VCC,直接接中斷口線,口線接地電阻,這樣中斷和口線的電壓靈敏度判斷一致,中斷改為上升沿觸發(fā),按鍵不會(huì)再有其他鍵值出現(xiàn)。電阻全部變?yōu)?0 kΩ(其他阻值不建議,筆者實(shí)驗(yàn)過(guò)有問(wèn)題),最終中斷線上電壓比0.8倍基準(zhǔn)電壓要高0.1 V,高于0.7倍基準(zhǔn)電壓,可以認(rèn)定為高,中斷由下降沿觸發(fā)改為上升沿觸發(fā)。

3 N+1鍵盤(pán)再次遇到的問(wèn)題及改進(jìn)

3.1再次遇到的問(wèn)題

在后續(xù)的開(kāi)發(fā)工作中想沿用之前改良過(guò)的N+1電路,又發(fā)現(xiàn)了新的問(wèn)題。新的項(xiàng)目中由于成本和歷史原因,CPU必須使用51單片機(jī),而51單片機(jī)的中斷必須為低電平觸發(fā),上述改良的N+1電路完全不起作用。只得重新思考能否再次改良N+1電路(仍舊是導(dǎo)電橡膠按鍵)。

3.2再次改進(jìn)

經(jīng)過(guò)多次反復(fù)試驗(yàn),在51 MCU電路下,原接地的部分都用20 kΩ接VCC拉高,二極管全部反向。經(jīng)過(guò)驗(yàn)證,此電路可以應(yīng)用在ARM和任意51單片機(jī)類(lèi)型中,通用性更強(qiáng),且電壓無(wú)論是5 V還是3.3 V均可使用,在筆者的項(xiàng)目產(chǎn)品中已經(jīng)有數(shù)百萬(wàn)臺(tái)產(chǎn)品驗(yàn)證過(guò)。

鍵盤(pán)原理圖如圖4所示。

匯編程序略——編者注。

結(jié) 語(yǔ)

經(jīng)過(guò)兩次更改后,最新的N+1改進(jìn)電路可以適應(yīng)不同種CPU,能夠極大地滿足硬件設(shè)計(jì)應(yīng)用,有效地減少I(mǎi)/O口線資源,增強(qiáng)電路的穩(wěn)定性及實(shí)用性,在其應(yīng)用過(guò)程中表現(xiàn)出了獨(dú)有的優(yōu)越性,解決了原N+1鍵盤(pán)與實(shí)際應(yīng)用不適應(yīng)問(wèn)題。

編者注:本文為期刊縮略版,全文見(jiàn)本刊網(wǎng)站www.mesnet.com.cn。

[1] 張雪峰, 李榮源, 袁海文.一種用N+1個(gè)I/O口實(shí)現(xiàn)的N×N矩陣式鍵盤(pán)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2001(11).

Sun Haitong

(Jiangsu Guoguang Electronic Information Technology Co.,Ltd.,Changzhou 213015,China)

In the recent years,it is found that the I/O resources are not enough when increasing the new function on the original hardware.In the paper,the N+1 keyboard system is used to save a lot of port line resources,but the theory of N+1 has some defects in practical work,it can not adapt to all the hardwares and structures.According to the actual situation,the author takes measures twice to improve the circuit to adapt to the different hardwares and structures.

N+1 keyboard circuit;I/O resources;microcontroller

TP29

A

(責(zé)任編輯:楊迪娜2015-10-22)

猜你喜歡
鍵值中斷按鍵
基于有限狀態(tài)機(jī)的按鍵檢測(cè)程序設(shè)計(jì)
電子制作(2021年3期)2021-06-16 03:14:26
非請(qǐng)勿進(jìn) 為注冊(cè)表的重要鍵值上把“鎖”
跟蹤導(dǎo)練(二)(5)
千里移防,衛(wèi)勤保障不中斷
解放軍健康(2017年5期)2017-08-01 06:27:44
一鍵直達(dá) Windows 10注冊(cè)表編輯高招
一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計(jì)
電子制作(2016年1期)2016-11-07 08:43:05
按鍵的多種狀態(tài)檢測(cè)及消抖處理方法
家電科技(2013年4期)2013-07-09 10:55:08
AT89C51與中斷有關(guān)的寄存器功能表解
FPGA內(nèi)嵌PowerPC的中斷響應(yīng)分析
解析某型號(hào)手機(jī)按鍵檢測(cè)程序的缺陷
兰考县| 庄浪县| 元江| 周至县| 石泉县| 宿松县| 红原县| 明溪县| 正安县| 涟源市| 隆昌县| 冀州市| 红安县| 从化市| 拉萨市| 杭锦后旗| 道孚县| 冀州市| 徐水县| 西青区| 金昌市| 柳州市| 天台县| 襄汾县| 北票市| 墨竹工卡县| 金昌市| 江永县| 来安县| 合作市| 安溪县| 名山县| 恭城| 新昌县| 麻栗坡县| 玉环县| 上蔡县| 许昌县| 溧水县| 科技| 专栏|