單片機(jī)方案中編碼與鍵盤識(shí)別
在單片機(jī)設(shè)計(jì)過程中,有時(shí)需要依靠鍵盤輸入的支持。這就需要進(jìn)行識(shí)別按鍵技術(shù),在本文當(dāng)中,小編將為大家介紹識(shí)別鍵盤的常見方法、盤的編碼、以及單片機(jī)系統(tǒng)中鍵盤系統(tǒng)的工作方式。感興趣的朋友快來看一看吧。
本文引用地址:http://www.ex-cimer.com/article/201808/386141.htm在實(shí)際應(yīng)用中,識(shí)別按鍵的方法是非常多的,其中最常見的方法是掃描法。當(dāng)按鍵按下,與此鍵相連的行線與列線導(dǎo)通,行線在無鍵按下時(shí)處在高電平。如果讓所有的列線也處在高電平,那么按鍵按下與否不會(huì)引起行線電平的變化,因此必須使所有列線處在低電平。只有這樣,在有鍵按下時(shí)該鍵所在的行電平才會(huì)由高電平變?yōu)榈碗娖?。CPU根據(jù)行電平的變化,便能判定相應(yīng)的行有鍵按下。
鍵盤的編碼
對(duì)于獨(dú)立式按鍵鍵盤,因按鍵數(shù)量少,可根據(jù)實(shí)際需要靈活編碼。對(duì)于矩陣式鍵盤,按鍵的位置由行號(hào)和列號(hào)惟一確定,因此可分別對(duì)行號(hào)和列號(hào)進(jìn)行二進(jìn)制編碼,然后將兩值合成一個(gè)字節(jié),高4位是行號(hào),低4位是列號(hào)。
鍵盤的工作方式
對(duì)鍵盤的響應(yīng)取決于鍵盤的工作方式,鍵盤的工作方式應(yīng)根據(jù)實(shí)際應(yīng)用系統(tǒng)中CPU的工作狀況而定,其選取的原則是既要保證CPU能及時(shí)響應(yīng)按鍵操作,又不要過多占用CPU的工作時(shí)間。通常鍵盤的工作方式有三種,即編程掃描、定時(shí)掃描和中斷掃描。
1、編程掃描方式
編程掃描方式是利用CPU完成其它工作的空余時(shí)間,調(diào)用鍵盤掃描子程序來響應(yīng)鍵盤輸入的要求。在執(zhí)行鍵功能程序時(shí),CPU不再響應(yīng)鍵輸入要求,直到CPU重新掃描鍵盤為止。
2、定時(shí)掃描方式
定時(shí)掃描方式就是每隔一段時(shí)間對(duì)鍵盤掃描一次,它利用單片機(jī)內(nèi)部的定時(shí)器產(chǎn)生一定時(shí)間(例如10ms)的定時(shí),當(dāng)定時(shí)時(shí)間到就產(chǎn)生定時(shí)器溢出中斷。CPU響應(yīng)中斷后對(duì)鍵盤進(jìn)行掃描,并在有鍵按下時(shí)識(shí)別出該鍵,再執(zhí)行該鍵的功能程序。
3、中斷掃描方式
采用上述兩種鍵盤掃描方式時(shí),無論是否按鍵,CPU都要定時(shí)掃描鍵盤,而單片機(jī)應(yīng)用系統(tǒng)工作時(shí),并非經(jīng)常需要鍵盤輸入,因此,CPU經(jīng)常處于空掃描狀態(tài)。
中斷模式適合在需要提升工作效率最大化的情況中使用,當(dāng)采用中斷模式時(shí),如果沒有按鍵按下,那么CPU會(huì)針對(duì)自己的工作進(jìn)行處理,但如果按鍵被按下,則產(chǎn)生了中斷請(qǐng)求,此時(shí)CPU就會(huì)主動(dòng)執(zhí)行針對(duì)鍵盤的子程序掃描,并對(duì)鍵號(hào)進(jìn)行鍵盤識(shí)別。這樣便能大大加強(qiáng)效率。
評(píng)論