單片機開關(guān)量輸入接口
1.扳鍵開關(guān)與單片機的接口
扳鍵開關(guān)(或鈕子開關(guān)類器件)可將高電平或低電平經(jīng)單片機的I/O引腳置入單片機,以實現(xiàn)操作分檔、參數(shù)設(shè)定等人機聯(lián)系的功能。
圖1與后面的程序是扳鍵類開關(guān)應(yīng)用的示例:根據(jù)8個開關(guān)中哪一個開關(guān)閉合并使相應(yīng)口線為低電平而轉(zhuǎn)去執(zhí)行相應(yīng)的個工作程序。各開關(guān)通過擴(kuò)展輸入口74LS244與80C51的P0口連接,開關(guān)合上時將向P0口的相應(yīng)引腳送低電平;反之,開關(guān)打開時送高電平。
圖1 扳鍵開關(guān)與單片機的接口
讀扳鍵開關(guān)狀態(tài)程序段:
2.撥盤開關(guān)與單片機的接口
(1)撥盤開關(guān)
撥盤開關(guān)有很多種,常見的是BCD碼撥盤開關(guān),如圖2所示。撥動正面的撥盤,可制定一個十進(jìn)制數(shù)(在開關(guān)正面有該數(shù)的數(shù)碼指示),并轉(zhuǎn)換成BCD碼(呈現(xiàn)在背面8、4、2、1引腳上)而輸入計算機。撥盤開關(guān)用于參數(shù)設(shè)定,非常直觀方便。
若引腳A接高電平,當(dāng)置定某十進(jìn)制數(shù)時,撥動撥盤會使引腳A與8、4、2、1四個引腳有一定的接通關(guān)系,與引腳A接通的將輸出高電平,不與引腳A接通的輸出低電平,從而轉(zhuǎn)換成與該十進(jìn)制數(shù)相當(dāng)?shù)腂CD碼(8421碼)。例如,撥置數(shù)字5時,8、4、2、1腳輸出數(shù)字編碼0101,其他類推。
當(dāng)然也可反過來,即引腳A接低電平,這時得到的是與十進(jìn)制數(shù)相當(dāng)?shù)腂CD碼的反碼。將所得的碼取反后可以獲得相應(yīng)的BCD碼。這種接法也比較多見。
如要將n位十進(jìn)制數(shù)置入計算機,就需要使用n片撥盤開關(guān)并列在一起,組合成一個撥盤開關(guān)組。
圖2 兩片撥盤開關(guān)與80C51的接口
(2)撥盤開關(guān)接口示例
圖2是兩片撥盤開關(guān)接口示例:通過撥盤開關(guān)將2位十進(jìn)制數(shù)置入單片機,其十位數(shù)與個位數(shù)讀入后將分別暫存于片內(nèi)RAM的21H、20H單元。
接口程序如下:
編輯:admin 最后修改時間:2018-05-16