采用編程掃描鍵盤的工作方式
發(fā)布時間:2014/1/4 19:24:33 訪問次數(shù):1114
鍵盤中究竟哪一個鍵被按下,是通過列TAJD337K010RNJ線逐列置低電平后檢查行輸入狀態(tài)來確定的。其方法是:先令列線Pl.o輸出低電平“o”,Pl.l~P1.3全部輸出高電平“1”,讀行線P1.4~ P1.7的輸入電平。如果讀得某行線為“0”電平,則可確認對應于該行線與列線Pl.0相交處的鍵被按下,否則Pl.0列上無鍵按下。如果Pl.o列線上無鍵按下,接著令Pl.l輸出低電平“0”,其余為高電平“1” ,再讀行線P1.4~P1.7,判斷其是否全為“1”,若是,表示被按鍵也不在此列,依次類推直至列線P1.3。如果所有列線均判斷完,仍未出現(xiàn)行線P1.4一P1.7讀入值有“0”的情況,則表示此次并無鍵按下。這秭逐列檢查鍵盤狀態(tài)的過程稱為對鍵盤進行掃描。
在單片機應用系統(tǒng)中,掃描鍵盤只是CPU的工作任務之一。在實際應用中,要想做到既能及時響應鍵操作,又不過多地占用CPU的工作時間,就要根據(jù)應用系統(tǒng)中CPU的忙閑情況,選擇適當?shù)逆I盤工作方式。鍵盤的工作方式一般有編程掃描方式和中斷掃描方式兩種。
編程掃描方式是利用CPU在完成其他工作的空余,調用鍵盤掃描子程序來響應鍵輸入要求。在執(zhí)行鍵功能程序時,CPU不再響應鍵輸入的要求。
采用編程掃描鍵盤的工作方式,雖然也能響應鍵入的命令或數(shù)據(jù),但是這種方式不管鍵盤上有無按鍵按下,CPU總要定時掃描鍵盤,而應用系統(tǒng)在工作時,并不經(jīng)常需要鍵輸入,因此CPU經(jīng)常處于空掃描狀態(tài)。為了提高CPU的工作效率,可采用中斷掃描工作方式,即只有在鍵盤有鍵按下時,才發(fā)中斷請求,CPU響應中斷請求后,轉至中斷服務程序,進行鍵盤掃描,識別鍵碼。
鍵盤中究竟哪一個鍵被按下,是通過列TAJD337K010RNJ線逐列置低電平后檢查行輸入狀態(tài)來確定的。其方法是:先令列線Pl.o輸出低電平“o”,Pl.l~P1.3全部輸出高電平“1”,讀行線P1.4~ P1.7的輸入電平。如果讀得某行線為“0”電平,則可確認對應于該行線與列線Pl.0相交處的鍵被按下,否則Pl.0列上無鍵按下。如果Pl.o列線上無鍵按下,接著令Pl.l輸出低電平“0”,其余為高電平“1” ,再讀行線P1.4~P1.7,判斷其是否全為“1”,若是,表示被按鍵也不在此列,依次類推直至列線P1.3。如果所有列線均判斷完,仍未出現(xiàn)行線P1.4一P1.7讀入值有“0”的情況,則表示此次并無鍵按下。這秭逐列檢查鍵盤狀態(tài)的過程稱為對鍵盤進行掃描。
在單片機應用系統(tǒng)中,掃描鍵盤只是CPU的工作任務之一。在實際應用中,要想做到既能及時響應鍵操作,又不過多地占用CPU的工作時間,就要根據(jù)應用系統(tǒng)中CPU的忙閑情況,選擇適當?shù)逆I盤工作方式。鍵盤的工作方式一般有編程掃描方式和中斷掃描方式兩種。
編程掃描方式是利用CPU在完成其他工作的空余,調用鍵盤掃描子程序來響應鍵輸入要求。在執(zhí)行鍵功能程序時,CPU不再響應鍵輸入的要求。
采用編程掃描鍵盤的工作方式,雖然也能響應鍵入的命令或數(shù)據(jù),但是這種方式不管鍵盤上有無按鍵按下,CPU總要定時掃描鍵盤,而應用系統(tǒng)在工作時,并不經(jīng)常需要鍵輸入,因此CPU經(jīng)常處于空掃描狀態(tài)。為了提高CPU的工作效率,可采用中斷掃描工作方式,即只有在鍵盤有鍵按下時,才發(fā)中斷請求,CPU響應中斷請求后,轉至中斷服務程序,進行鍵盤掃描,識別鍵碼。
上一篇:什么是行列式按鍵接口電路