




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、智能儀器人機(jī)接口(1)1 第第3 3章章 智能儀器人機(jī)接口智能儀器人機(jī)接口 3.1 鍵盤與接口鍵盤與接口 3.2 LED顯示及接口顯示及接口 3.3 鍵盤鍵盤/LED顯示器接口設(shè)計(jì)顯示器接口設(shè)計(jì) 3.4 CRT顯示及接口顯示及接口 3.5 微型打印機(jī)及接口微型打印機(jī)及接口 智能儀器人機(jī)接口(1)2 第第3 3章章 智能儀器人機(jī)接口智能儀器人機(jī)接口 人機(jī)交互功能即用戶與儀器交換信息的功能。人機(jī)交互功能即用戶與儀器交換信息的功能。 這個(gè)功能有兩方面的含義:一是用戶對(duì)智能儀這個(gè)功能有兩方面的含義:一是用戶對(duì)智能儀 器進(jìn)行狀態(tài)干預(yù)和數(shù)據(jù)輸入;二是智能儀器向用戶報(bào)器進(jìn)行狀態(tài)干預(yù)和數(shù)據(jù)輸入;二是智能儀器向
2、用戶報(bào) 告運(yùn)行狀態(tài)與處理結(jié)果。告運(yùn)行狀態(tài)與處理結(jié)果。 實(shí)現(xiàn)智能儀器人實(shí)現(xiàn)智能儀器人機(jī)交互功能的部件有鍵盤、機(jī)交互功能的部件有鍵盤、 顯示器和打印機(jī)等,這些部件同智能儀器主體電路的顯示器和打印機(jī)等,這些部件同智能儀器主體電路的 連接是由人機(jī)接口電路來(lái)完成的連接是由人機(jī)接口電路來(lái)完成的. 人機(jī)接口技術(shù)是智能儀器設(shè)計(jì)的關(guān)鍵技術(shù)之一。人機(jī)接口技術(shù)是智能儀器設(shè)計(jì)的關(guān)鍵技術(shù)之一。 智能儀器人機(jī)接口(1)3 3.1 鍵盤與接口鍵盤與接口 含硬件與軟件兩部分。硬件指鍵盤的組織,即鍵盤結(jié)構(gòu)及含硬件與軟件兩部分。硬件指鍵盤的組織,即鍵盤結(jié)構(gòu)及 其與主機(jī)的連接方式;軟件是指對(duì)按鍵操作的識(shí)別與分析,稱其與主機(jī)的連接方
3、式;軟件是指對(duì)按鍵操作的識(shí)別與分析,稱 為鍵盤管理程序。為鍵盤管理程序。 鍵盤與接口的任務(wù)大體可分為下列幾項(xiàng):鍵盤與接口的任務(wù)大體可分為下列幾項(xiàng): (1) 識(shí)鍵:識(shí)鍵: 判斷是否有鍵按下。若有,則進(jìn)行譯碼;若無(wú),判斷是否有鍵按下。若有,則進(jìn)行譯碼;若無(wú), 則等待或轉(zhuǎn)做別的工作。則等待或轉(zhuǎn)做別的工作。 (2) 譯鍵:譯鍵: 識(shí)別出哪一個(gè)鍵被按下并求出被按下鍵的鍵值。識(shí)別出哪一個(gè)鍵被按下并求出被按下鍵的鍵值。 (3) 鍵值分析:鍵值分析: 根據(jù)鍵值,找出對(duì)應(yīng)處理程序的入口并執(zhí)根據(jù)鍵值,找出對(duì)應(yīng)處理程序的入口并執(zhí) 行之。行之。 本節(jié)側(cè)重討論本節(jié)側(cè)重討論 (1)和和(2)兩項(xiàng)工作,兩項(xiàng)工作, 下一節(jié)側(cè)
4、重討論鍵值分下一節(jié)側(cè)重討論鍵值分 析方法。析方法。 (1)和和(2)兩項(xiàng)工作通常合稱為掃描。兩項(xiàng)工作通常合稱為掃描。 智能儀器人機(jī)接口(1)4 3.1 鍵盤與接口鍵盤與接口 3.1.1 鍵盤輸入基礎(chǔ)知識(shí)鍵盤輸入基礎(chǔ)知識(shí) 一、一、 鍵盤的組織鍵盤的組織 鍵盤按其工作原理可分為編碼式鍵盤和非編碼式鍵盤。鍵盤按其工作原理可分為編碼式鍵盤和非編碼式鍵盤。 編碼式鍵盤由按鍵鍵盤和專用鍵盤編碼器兩部分構(gòu)成。當(dāng)鍵編碼式鍵盤由按鍵鍵盤和專用鍵盤編碼器兩部分構(gòu)成。當(dāng)鍵 盤中某一按鍵被按下時(shí),鍵盤編碼器會(huì)自動(dòng)產(chǎn)生對(duì)應(yīng)的按鍵代盤中某一按鍵被按下時(shí),鍵盤編碼器會(huì)自動(dòng)產(chǎn)生對(duì)應(yīng)的按鍵代 碼,碼, 并輸出選通脈沖信號(hào)與并輸
5、出選通脈沖信號(hào)與CPU 進(jìn)行信息聯(lián)絡(luò)。進(jìn)行信息聯(lián)絡(luò)。 非編碼鍵盤不含編碼器,當(dāng)某鍵按下時(shí),鍵盤只送出一個(gè)簡(jiǎn)非編碼鍵盤不含編碼器,當(dāng)某鍵按下時(shí),鍵盤只送出一個(gè)簡(jiǎn) 單的閉合信號(hào),單的閉合信號(hào), 對(duì)應(yīng)按鍵代碼的確定必須借助于軟件來(lái)完成。對(duì)應(yīng)按鍵代碼的確定必須借助于軟件來(lái)完成。 顯然,非編碼鍵盤的軟件是比較復(fù)雜的,并且要占用較多的顯然,非編碼鍵盤的軟件是比較復(fù)雜的,并且要占用較多的 CPU時(shí)間。但非編碼鍵盤可以任意組合、成本低、使用靈活,時(shí)間。但非編碼鍵盤可以任意組合、成本低、使用靈活, 因而智能儀器大多采用非編碼式鍵盤。因而智能儀器大多采用非編碼式鍵盤。 智能儀器人機(jī)接口(1)5 3.1.1 鍵盤輸
6、入基礎(chǔ)知識(shí)鍵盤輸入基礎(chǔ)知識(shí) 一、一、 鍵盤的組織鍵盤的組織 非編碼鍵盤有獨(dú)立式鍵盤、矩陣式鍵盤和交互式鍵盤之分。非編碼鍵盤有獨(dú)立式鍵盤、矩陣式鍵盤和交互式鍵盤之分。 獨(dú)立式鍵盤結(jié)構(gòu)的特點(diǎn)是一鍵一線,即每一個(gè)按鍵單獨(dú)占用獨(dú)立式鍵盤結(jié)構(gòu)的特點(diǎn)是一鍵一線,即每一個(gè)按鍵單獨(dú)占用 一根檢測(cè)線與主機(jī)相連,一根檢測(cè)線與主機(jī)相連, 矩陣式鍵盤結(jié)構(gòu)的特點(diǎn)是把檢測(cè)線分成兩組,一組為行線,矩陣式鍵盤結(jié)構(gòu)的特點(diǎn)是把檢測(cè)線分成兩組,一組為行線, 另一組為列線,按鍵放在行線和列線的交叉點(diǎn)上。另一組為列線,按鍵放在行線和列線的交叉點(diǎn)上。mn矩陣鍵矩陣鍵 盤與主機(jī)連接只需要盤與主機(jī)連接只需要m+n條線,顯然,當(dāng)需要的按鍵數(shù)目
7、大于條線,顯然,當(dāng)需要的按鍵數(shù)目大于8 時(shí),一般都采用矩陣式鍵盤。時(shí),一般都采用矩陣式鍵盤。 交互式鍵盤結(jié)構(gòu)的特點(diǎn)是,任意兩檢測(cè)線之間均可以放置一交互式鍵盤結(jié)構(gòu)的特點(diǎn)是,任意兩檢測(cè)線之間均可以放置一 個(gè)按鍵。很顯然,交互式鍵盤結(jié)構(gòu)所占用的檢測(cè)線比矩陣式還個(gè)按鍵。很顯然,交互式鍵盤結(jié)構(gòu)所占用的檢測(cè)線比矩陣式還 要少,但是這種鍵盤所使用的檢測(cè)線必須是具有位控功能的雙要少,但是這種鍵盤所使用的檢測(cè)線必須是具有位控功能的雙 向向I/O端口線。端口線。 智能儀器人機(jī)接口(1)6 智能儀器人機(jī)接口(1)7 3.1.1 鍵盤輸入基礎(chǔ)知識(shí)鍵盤輸入基礎(chǔ)知識(shí) 一、一、 鍵盤的組織鍵盤的組織 編程掃描工作方式、中斷
8、工作方式和定時(shí)掃描工作方式。編程掃描工作方式、中斷工作方式和定時(shí)掃描工作方式。 編程掃描工作方式:也稱查詢方式。編程掃描工作方式:也稱查詢方式。 中斷工作方式:中斷工作方式: (1) 定時(shí)掃描工作方式:定時(shí)掃描工作方式: 二、二、 鍵盤的工作方式鍵盤的工作方式 智能儀器人機(jī)接口(1)8 二、二、 鍵盤的工作方式鍵盤的工作方式 (1) 編程掃描工作方式:編程掃描工作方式: 該方式也稱查詢方式,它是利用該方式也稱查詢方式,它是利用 CPU在完成其他工作的空余調(diào)用鍵盤掃描程序,以響應(yīng)鍵輸入在完成其他工作的空余調(diào)用鍵盤掃描程序,以響應(yīng)鍵輸入 的要求。當(dāng)?shù)囊蟆.?dāng)CPU在運(yùn)行其他程序時(shí),它就不會(huì)再響應(yīng)鍵
9、輸入要在運(yùn)行其他程序時(shí),它就不會(huì)再響應(yīng)鍵輸入要 求,因此,采用該方式編程時(shí),求,因此,采用該方式編程時(shí), 應(yīng)考慮程序是否能對(duì)用戶的每應(yīng)考慮程序是否能對(duì)用戶的每 次按鍵都會(huì)做出及時(shí)的響應(yīng)。次按鍵都會(huì)做出及時(shí)的響應(yīng)。 (2) 中斷工作方式:中斷工作方式: 當(dāng)鍵盤中有按鍵按下時(shí),硬件會(huì)產(chǎn)生當(dāng)鍵盤中有按鍵按下時(shí),硬件會(huì)產(chǎn)生 中斷申請(qǐng)信號(hào),中斷申請(qǐng)信號(hào),CPU響應(yīng)中斷申請(qǐng)后對(duì)鍵盤進(jìn)行掃描,并轉(zhuǎn)入響應(yīng)中斷申請(qǐng)后對(duì)鍵盤進(jìn)行掃描,并轉(zhuǎn)入 與按下鍵相應(yīng)的鍵功能處理程序。優(yōu)點(diǎn):由于在無(wú)鍵按下時(shí)不與按下鍵相應(yīng)的鍵功能處理程序。優(yōu)點(diǎn):由于在無(wú)鍵按下時(shí)不 進(jìn)行鍵掃描,進(jìn)行鍵掃描,CPU工作效率高,并能確保對(duì)用戶的每次按
10、鍵操工作效率高,并能確保對(duì)用戶的每次按鍵操 作做出迅速的響應(yīng)。作做出迅速的響應(yīng)。 (3) 定時(shí)掃描工作方式:定時(shí)掃描工作方式: 利用專門定時(shí)器產(chǎn)生定時(shí)中斷申利用專門定時(shí)器產(chǎn)生定時(shí)中斷申 請(qǐng)信號(hào)。由于每次按鍵的持續(xù)時(shí)間一般不小于請(qǐng)信號(hào)。由于每次按鍵的持續(xù)時(shí)間一般不小于100ms,為了不,為了不 漏檢,定時(shí)中斷的周期一般應(yīng)小于漏檢,定時(shí)中斷的周期一般應(yīng)小于100ms 。 智能儀器人機(jī)接口(1)9 三、三、 鍵抖動(dòng)及消除鍵抖動(dòng)及消除 當(dāng)按鍵被按下或釋放時(shí),按鍵觸點(diǎn)的彈性會(huì)產(chǎn)生一種抖動(dòng)當(dāng)按鍵被按下或釋放時(shí),按鍵觸點(diǎn)的彈性會(huì)產(chǎn)生一種抖動(dòng) 現(xiàn)象。即當(dāng)按鍵按下時(shí),觸點(diǎn)不會(huì)迅速可靠地接通;當(dāng)按鍵釋現(xiàn)象。即當(dāng)按
11、鍵按下時(shí),觸點(diǎn)不會(huì)迅速可靠地接通;當(dāng)按鍵釋 放時(shí),觸點(diǎn)也不會(huì)立即斷開(kāi),而是要經(jīng)過(guò)一段時(shí)間的抖動(dòng)才能放時(shí),觸點(diǎn)也不會(huì)立即斷開(kāi),而是要經(jīng)過(guò)一段時(shí)間的抖動(dòng)才能 穩(wěn)定下來(lái)。抖動(dòng)時(shí)間視按鍵材料不同一般為穩(wěn)定下來(lái)。抖動(dòng)時(shí)間視按鍵材料不同一般為5ms10ms。 智能儀器人機(jī)接口(1)10 鍵抖動(dòng)可能導(dǎo)致計(jì)算機(jī)將一次按鍵操作識(shí)別為多次操作,為鍵抖動(dòng)可能導(dǎo)致計(jì)算機(jī)將一次按鍵操作識(shí)別為多次操作,為 克服這種由鍵抖動(dòng)所致的誤判,常采用如下措施:克服這種由鍵抖動(dòng)所致的誤判,常采用如下措施: (1) 硬件電路消除法:利用硬件電路消除法:利用RS觸發(fā)器來(lái)吸收按鍵的抖動(dòng)如圖觸發(fā)器來(lái)吸收按鍵的抖動(dòng)如圖 所示。一旦有按鍵按下時(shí)
12、,觸發(fā)器就立即翻轉(zhuǎn),觸點(diǎn)的抖動(dòng)便所示。一旦有按鍵按下時(shí),觸發(fā)器就立即翻轉(zhuǎn),觸點(diǎn)的抖動(dòng)便 不會(huì)再對(duì)輸出產(chǎn)生影響,按鍵釋放時(shí)亦然。不會(huì)再對(duì)輸出產(chǎn)生影響,按鍵釋放時(shí)亦然。 (2) 軟件延時(shí)法:當(dāng)判定按鍵按下時(shí),用軟件延時(shí)軟件延時(shí)法:當(dāng)判定按鍵按下時(shí),用軟件延時(shí)10ms 20ms,等待按鍵穩(wěn)定后重新再判一次,以躲過(guò)觸點(diǎn)抖動(dòng)期。,等待按鍵穩(wěn)定后重新再判一次,以躲過(guò)觸點(diǎn)抖動(dòng)期。 智能儀器人機(jī)接口(1)11 四、四、 鍵連擊的處理鍵連擊的處理 當(dāng)按下某按鍵時(shí),對(duì)應(yīng)的功能分析程序會(huì)得以執(zhí)行。如果當(dāng)按下某按鍵時(shí),對(duì)應(yīng)的功能分析程序會(huì)得以執(zhí)行。如果 在操作者釋放按鍵之前,對(duì)應(yīng)的功能得以多次執(zhí)行,如同操作在操作者釋
13、放按鍵之前,對(duì)應(yīng)的功能得以多次執(zhí)行,如同操作 者在連續(xù)不斷操作該鍵一樣,這種現(xiàn)象就稱為連擊。者在連續(xù)不斷操作該鍵一樣,這種現(xiàn)象就稱為連擊。 連擊現(xiàn)象可用圖(a)所示流 程圖的軟件方法來(lái)解決, 把連擊現(xiàn)象加以合理利用, 有時(shí)會(huì)給操作者帶來(lái)方便。例 如在某些簡(jiǎn)易儀器沒(méi)安排09 數(shù)字按鍵,而合理利用連擊現(xiàn) 象,只設(shè)置一只調(diào)整按鍵,采 用加1(或減1 )的方法來(lái)調(diào)整 有關(guān)參數(shù)。具體實(shí)現(xiàn)軟件流程 圖如圖(b)所示, 智能儀器人機(jī)接口(1)12 五、五、 無(wú)鎖鍵、自鎖鍵及互鎖鍵無(wú)鎖鍵、自鎖鍵及互鎖鍵 無(wú)鎖鍵即按鍵。當(dāng)鍵按下時(shí),按鍵的兩個(gè)觸頭接通;松開(kāi)無(wú)鎖鍵即按鍵。當(dāng)鍵按下時(shí),按鍵的兩個(gè)觸頭接通;松開(kāi) 時(shí),
14、兩個(gè)觸頭斷開(kāi),恢復(fù)開(kāi)路。無(wú)鎖鍵在邏輯上等效于單穩(wěn)態(tài)。時(shí),兩個(gè)觸頭斷開(kāi),恢復(fù)開(kāi)路。無(wú)鎖鍵在邏輯上等效于單穩(wěn)態(tài)。 自鎖鍵在邏輯上等效于雙穩(wěn)態(tài)。當(dāng)?shù)谝淮伟聪聲r(shí)自鎖鍵在邏輯上等效于雙穩(wěn)態(tài)。當(dāng)?shù)谝淮伟聪聲r(shí)(包括松開(kāi)包括松開(kāi) 后后),其按鍵兩個(gè)觸頭接通;第二次按下及松開(kāi)后,兩個(gè)觸頭又,其按鍵兩個(gè)觸頭接通;第二次按下及松開(kāi)后,兩個(gè)觸頭又 斷開(kāi),不斷地按此規(guī)律動(dòng)作。自鎖鍵常用在儀器二選一選擇開(kāi)斷開(kāi),不斷地按此規(guī)律動(dòng)作。自鎖鍵常用在儀器二選一選擇開(kāi) 關(guān)等場(chǎng)合,例如,交關(guān)等場(chǎng)合,例如,交/直流耦合選擇等。直流耦合選擇等。 互鎖鍵是指一組具有互鎖關(guān)系的按鍵開(kāi)關(guān)。當(dāng)這一組按鍵互鎖鍵是指一組具有互鎖關(guān)系的按鍵開(kāi)關(guān)。當(dāng)這
15、一組按鍵 開(kāi)關(guān)之一被選擇時(shí)開(kāi)關(guān)之一被選擇時(shí)(即對(duì)應(yīng)的開(kāi)關(guān)接通即對(duì)應(yīng)的開(kāi)關(guān)接通),與該鍵有互鎖關(guān)系的其,與該鍵有互鎖關(guān)系的其 他鍵都將斷開(kāi)?;蛘哒f(shuō),具有互鎖關(guān)系的這組按鍵,某時(shí)刻最他鍵都將斷開(kāi)?;蛘哒f(shuō),具有互鎖關(guān)系的這組按鍵,某時(shí)刻最 多只能有一個(gè)鍵被選擇?;ユi鍵在儀器中的應(yīng)用場(chǎng)合也較多,多只能有一個(gè)鍵被選擇?;ユi鍵在儀器中的應(yīng)用場(chǎng)合也較多, 例如,某儀器具有例如,某儀器具有5擋量程,則對(duì)應(yīng)這擋量程,則對(duì)應(yīng)這5擋量程的按鍵開(kāi)關(guān)必須擋量程的按鍵開(kāi)關(guān)必須 是互鎖鍵,因?yàn)閮x器在某一時(shí)刻只允許選擇一擋量程。是互鎖鍵,因?yàn)閮x器在某一時(shí)刻只允許選擇一擋量程。 電子儀器需要用到無(wú)鎖鍵、自鎖鍵、互鎖鍵等按鍵類型
16、電子儀器需要用到無(wú)鎖鍵、自鎖鍵、互鎖鍵等按鍵類型 智能儀器人機(jī)接口(1)13 五、五、 無(wú)鎖鍵、自鎖鍵及互鎖鍵無(wú)鎖鍵、自鎖鍵及互鎖鍵 傳統(tǒng)儀器中,無(wú)鎖、自鎖及互鎖的功能都是通過(guò)采用不同傳統(tǒng)儀器中,無(wú)鎖、自鎖及互鎖的功能都是通過(guò)采用不同 機(jī)械結(jié)構(gòu)的無(wú)鎖鍵、自鎖鍵及互鎖鍵來(lái)實(shí)現(xiàn)的。機(jī)械結(jié)構(gòu)的無(wú)鎖鍵、自鎖鍵及互鎖鍵來(lái)實(shí)現(xiàn)的。 智能儀器中,儀器面板上的按鍵開(kāi)關(guān)一般只使用機(jī)械結(jié)構(gòu)智能儀器中,儀器面板上的按鍵開(kāi)關(guān)一般只使用機(jī)械結(jié)構(gòu) 最簡(jiǎn)單的無(wú)鎖鍵,即通常所說(shuō)的常態(tài)為開(kāi)路的按鍵開(kāi)關(guān)。最簡(jiǎn)單的無(wú)鎖鍵,即通常所說(shuō)的常態(tài)為開(kāi)路的按鍵開(kāi)關(guān)。 智能儀器自鎖及互鎖的開(kāi)關(guān)功能需要借助軟件設(shè)置特定的智能儀器自鎖及互鎖的開(kāi)關(guān)
17、功能需要借助軟件設(shè)置特定的 標(biāo)志位等辦法,使無(wú)鎖鍵也具有自鎖及互鎖的功能。標(biāo)志位等辦法,使無(wú)鎖鍵也具有自鎖及互鎖的功能。 通過(guò)軟件使無(wú)鎖鍵也具有自鎖及互鎖功能的方法將結(jié)合具通過(guò)軟件使無(wú)鎖鍵也具有自鎖及互鎖功能的方法將結(jié)合具 體儀器討論。體儀器討論。 智能儀器人機(jī)接口(1)14 3.1.2 鍵盤接口電路及控制程序鍵盤接口電路及控制程序 一、一、 獨(dú)立式鍵盤接口電路及程序設(shè)計(jì)獨(dú)立式鍵盤接口電路及程序設(shè)計(jì) 非編碼鍵盤按照與主機(jī)連接方式的不同,有非編碼鍵盤按照與主機(jī)連接方式的不同,有 獨(dú)立式、矩陣式和交互式之分。本節(jié)將對(duì)其接口獨(dú)立式、矩陣式和交互式之分。本節(jié)將對(duì)其接口 電路及程序設(shè)計(jì)分別予以討論。電路
18、及程序設(shè)計(jì)分別予以討論。 二、二、 矩陣式鍵盤接口電路及程序矩陣式鍵盤接口電路及程序 三、三、 交互式鍵盤接口電路及編程方法交互式鍵盤接口電路及編程方法 智能儀器人機(jī)接口(1)15 一、一、 獨(dú)立式鍵盤接口電路及程序設(shè)計(jì)獨(dú)立式鍵盤接口電路及程序設(shè)計(jì) 獨(dú)立式鍵盤的每個(gè)按鍵占用一根測(cè)試線,它們可以直接與獨(dú)立式鍵盤的每個(gè)按鍵占用一根測(cè)試線,它們可以直接與 單片機(jī)單片機(jī)IO 線相接或通過(guò)輸入口與數(shù)據(jù)線相接,結(jié)構(gòu)很簡(jiǎn)單。線相接或通過(guò)輸入口與數(shù)據(jù)線相接,結(jié)構(gòu)很簡(jiǎn)單。 這些測(cè)試線相互獨(dú)立無(wú)編碼關(guān)系,因而鍵盤軟件不存在譯碼問(wèn)這些測(cè)試線相互獨(dú)立無(wú)編碼關(guān)系,因而鍵盤軟件不存在譯碼問(wèn) 題,一旦檢測(cè)到某測(cè)試線上有鍵閉
19、合,便可直接轉(zhuǎn)入到相應(yīng)的題,一旦檢測(cè)到某測(cè)試線上有鍵閉合,便可直接轉(zhuǎn)入到相應(yīng)的 鍵功能處理程序進(jìn)行處理。鍵功能處理程序進(jìn)行處理。 一個(gè)實(shí)際三個(gè)按一個(gè)實(shí)際三個(gè)按 鍵的獨(dú)立式鍵盤接口鍵的獨(dú)立式鍵盤接口 電路如右圖所示:電路如右圖所示: 智能儀器人機(jī)接口(1)16 一、一、 獨(dú)立式鍵盤接口電路及程序設(shè)計(jì)獨(dú)立式鍵盤接口電路及程序設(shè)計(jì) 首先判斷有無(wú)鍵按下; 若檢測(cè)到有鍵按下,延時(shí)10ms避開(kāi)抖動(dòng)的影響,查詢是哪 一鍵被按下并執(zhí)行相關(guān)的操作。 然后再用軟件查詢等待按鍵的釋放,當(dāng)判明鍵釋放后,用 軟件延時(shí)10ms后再返回。 第二次延時(shí)的作用是: 一方面避開(kāi)按鍵釋放時(shí)觸點(diǎn) 抖動(dòng)的影響;另一方面也具 有防連擊的
20、功能。 該軟件對(duì)兩個(gè)以上的鍵 被同時(shí)按下(串鍵)具有判低 序號(hào)按鍵有效的功能。 智能儀器人機(jī)接口(1)17 獨(dú)立式鍵盤接口獨(dú)立式鍵盤接口 軟件流程圖軟件流程圖 智能儀器人機(jī)接口(1)18 上例CPU經(jīng)常處于空掃描狀態(tài)。為進(jìn)一步提高CPU效率,可 采用中斷工作方式,即只有當(dāng)鍵盤中有鍵被按下時(shí),才執(zhí)行掃描 工作。下圖為采用中斷方式處理只按鍵的接口電路圖 智能儀器人機(jī)接口(1)19 一、一、 獨(dú)立式鍵盤接口電路及程序設(shè)計(jì)獨(dú)立式鍵盤接口電路及程序設(shè)計(jì) 當(dāng)無(wú)鍵按下時(shí),條測(cè)試線均為高電平,經(jīng)與非門及反相器 后仍為高電平,不會(huì)產(chǎn)生中斷。當(dāng)其中任一鍵按下時(shí),INT0變?yōu)榈?電平,向8031申請(qǐng)中斷。8031響
21、應(yīng)后便進(jìn)入中斷服務(wù)程序, 然后 用掃描方法尋找到申請(qǐng)中斷的功能鍵并執(zhí)行相應(yīng)功能處理程序。 智能儀器人機(jī)接口(1)20 一、一、 獨(dú)立式鍵盤接口電路及程序設(shè)計(jì)獨(dú)立式鍵盤接口電路及程序設(shè)計(jì) ORG 0000H AJMP MAIN ; 上電后轉(zhuǎn)主程序上電后轉(zhuǎn)主程序 ORG 0003H ; 外部中斷外部中斷0入口入口 AJMP KEYJMP ; 指向中斷服務(wù)程序指向中斷服務(wù)程序 ORG 0100H MAIN: SETB IT0 ; 選擇邊沿觸發(fā)方式選擇邊沿觸發(fā)方式 SETB EX0 ; 允許外部中斷允許外部中斷0 SETB EA ; 允許允許CPU中斷中斷 MOV DPTR,#EF00H ; 送送81
22、55命令口地址命令口地址 MOV A, #02H MOVX DPTR, A ; 控制字寫入控制字寫入 HERE: AJMP HERE ; 模擬主程序模擬主程序 當(dāng)其中任一鍵按下時(shí),當(dāng)其中任一鍵按下時(shí),INT0變?yōu)榈碗娖?,向變?yōu)榈碗娖?,?031申請(qǐng)中斷。申請(qǐng)中斷。8031響應(yīng)后響應(yīng)后 便進(jìn)入中斷服務(wù)程序,便進(jìn)入中斷服務(wù)程序, 用掃描的方法尋找到申請(qǐng)中斷的功能鍵并執(zhí)行相應(yīng)鍵用掃描的方法尋找到申請(qǐng)中斷的功能鍵并執(zhí)行相應(yīng)鍵 功能處理程序。功能處理程序。 能完成上述工作的程序清單如下:能完成上述工作的程序清單如下: 智能儀器人機(jī)接口(1)21 ORG 0120H ; 中斷服務(wù)程序中斷服務(wù)程序 KEYJ
23、MP:MOV R3, #08H ; 設(shè)循環(huán)次數(shù)設(shè)循環(huán)次數(shù) MOV DPTR,#0EF01H ; 送送A口地址口地址 MOV R4, #00H ; 計(jì)數(shù)器清零計(jì)數(shù)器清零 MOVX A, DPTR ; 讀入按鍵狀態(tài)讀入按鍵狀態(tài) KEYAD1:RRC A ; 狀態(tài)字右移一位狀態(tài)字右移一位 JNC KEYAD2 ; C=0,轉(zhuǎn),轉(zhuǎn)KEYAD2 INC R4 ; 計(jì)數(shù)器加計(jì)數(shù)器加1 DJNZ R3, KEYAD1 KEYRET:RETI KEYAD2:MOV DPTR, #JMPTBL MOV A, R4 RL A JMP A+DPTR ; 轉(zhuǎn)相應(yīng)功能處理轉(zhuǎn)相應(yīng)功能處理 JMPTBL:AJMP SB0
24、; 入口地址表入口地址表 AJMP SB1 AJMP SB2 AJMP SB3 AJMP SB4 AJMP SB5 AJMP SB6 AJMP SB7 SB0: ;S0鍵功能程序鍵功能程序 JMP KEYRET ;S0鍵執(zhí)行完返回鍵執(zhí)行完返回 SB1: ;S1鍵功能程序鍵功能程序 JMP KEYRET SB7: ;S7鍵功能程序鍵功能程序 JMP KEYRET 智能儀器人機(jī)接口(1)22 二、二、 矩陣式鍵盤接口電路及程序矩陣式鍵盤接口電路及程序 當(dāng)采用矩陣式鍵盤時(shí),為了編程方便,應(yīng)將矩陣鍵盤中當(dāng)采用矩陣式鍵盤時(shí),為了編程方便,應(yīng)將矩陣鍵盤中 的每一個(gè)按鍵按一定的順序編號(hào),這種按順序排列的編號(hào)
25、叫的每一個(gè)按鍵按一定的順序編號(hào),這種按順序排列的編號(hào)叫 順序碼,也稱鍵值。順序碼,也稱鍵值。 為了求得矩陣式鍵盤中被按下鍵的鍵值,常用的方法有為了求得矩陣式鍵盤中被按下鍵的鍵值,常用的方法有 行掃描法和線路反轉(zhuǎn)法。線路反轉(zhuǎn)法識(shí)別鍵值的速度較快,行掃描法和線路反轉(zhuǎn)法。線路反轉(zhuǎn)法識(shí)別鍵值的速度較快, 但必須借助于可編程的通用接口芯片。但必須借助于可編程的通用接口芯片。 本節(jié)介紹兩種鍵盤接口電路及控制軟件,本節(jié)介紹兩種鍵盤接口電路及控制軟件, 一種是采用編程掃描工作方式的行掃描法來(lái)識(shí)別鍵值,一種是采用編程掃描工作方式的行掃描法來(lái)識(shí)別鍵值, 另一種是采用中斷工作方式的線路反轉(zhuǎn)法來(lái)識(shí)別鍵值。另一種是采用
26、中斷工作方式的線路反轉(zhuǎn)法來(lái)識(shí)別鍵值。 智能儀器人機(jī)接口(1)23 二、矩陣式鍵盤接口電路及程序二、矩陣式鍵盤接口電路及程序 1. 行掃描法行掃描法 該圖為該圖為48矩陣鍵盤與單片機(jī)接口電路。矩陣鍵盤與單片機(jī)接口電路。8155的端口的端口C 工作于工作于 輸出方式,用于行掃描。端口輸出方式,用于行掃描。端口A工作于輸入方式,用來(lái)讀入列值。工作于輸入方式,用來(lái)讀入列值。 由圖可知,由圖可知,8155的命令的命令/ 狀態(tài)寄存器、端口狀態(tài)寄存器、端口A、端口、端口B和端口和端口C的地的地 址分別為址分別為0100H、0101H、0102H和和0103H。 智能儀器人機(jī)接口(1)24 采用編程掃描工作方
27、式的行掃描法步驟如下:采用編程掃描工作方式的行掃描法步驟如下: (1) 判是否有鍵按下。使端口判是否有鍵按下。使端口 C所有的行輸出均為低電平,然所有的行輸出均為低電平,然 后從端口后從端口A讀入列值。如果沒(méi)有鍵按下,讀入值應(yīng)為讀入列值。如果沒(méi)有鍵按下,讀入值應(yīng)為FFH,如果,如果 有鍵按下,則不為有鍵按下,則不為FFH。 (2) 若有鍵按下,則延時(shí)若有鍵按下,則延時(shí)10ms,再判斷是否確實(shí)有鍵按下。,再判斷是否確實(shí)有鍵按下。 (3) 若確實(shí)有鍵按下,則求出按下鍵的鍵值。其實(shí)現(xiàn)方法是對(duì)若確實(shí)有鍵按下,則求出按下鍵的鍵值。其實(shí)現(xiàn)方法是對(duì) 鍵盤進(jìn)行逐行掃描。即先令鍵盤進(jìn)行逐行掃描。即先令PC0為為
28、0,讀入列值,若列值等于,讀入列值,若列值等于FFH, 說(shuō)明該行無(wú)鍵按下,再令說(shuō)明該行無(wú)鍵按下,再令PC1為為0,對(duì)下一行進(jìn)行掃描;若列值不,對(duì)下一行進(jìn)行掃描;若列值不 等于等于FFH,說(shuō)明該行有鍵按下,求出其鍵值。,說(shuō)明該行有鍵按下,求出其鍵值。 求鍵值時(shí)要設(shè)置行值寄存器和列值寄存器。每掃完一行,若無(wú)求鍵值時(shí)要設(shè)置行值寄存器和列值寄存器。每掃完一行,若無(wú) 鍵按下,則行值寄存器加上鍵按下,則行值寄存器加上08H;若有鍵按下,行值寄存器保持;若有鍵按下,行值寄存器保持 原值,轉(zhuǎn)而求相應(yīng)的列值。求列值的方法是,將列值右移,每移原值,轉(zhuǎn)而求相應(yīng)的列值。求列值的方法是,將列值右移,每移 位一次列值寄存
29、器加位一次列值寄存器加1,直至移出位為低電平為止。最后將行值,直至移出位為低電平為止。最后將行值 和列值相加即得鍵值。若需要十進(jìn)制鍵值,可進(jìn)行和列值相加即得鍵值。若需要十進(jìn)制鍵值,可進(jìn)行DAA修正。修正。 (4) 為保證按鍵每閉合一次為保證按鍵每閉合一次CPU只做一次處理,程序需等閉合只做一次處理,程序需等閉合 的鍵釋放后再對(duì)其做處理的鍵釋放后再對(duì)其做處理 智能儀器人機(jī)接口(1)25 ORG 0200H KEYPR:MOV DPTR, #0100H ; 8155初始化初始化 MOV A,#0CH MOVX DPTR, A ; 控制字寫入控制字寫入 MOV R3, #00H ; 列寄存器清零列寄
30、存器清零 MOV R4, #00H ; 行寄存器清零行寄存器清零 ACALL KEXAM ; 檢查有無(wú)鍵按下檢查有無(wú)鍵按下 JZ KEND ; 無(wú)鍵按下返回?zé)o鍵按下返回 ACALL D10ms ACALL KEXAM ; 再次檢查有無(wú)鍵按下再次檢查有無(wú)鍵按下 JZ KEND MOV R2 #0FEH ; 輸出使輸出使X0為為0 KEY1: MOV DPTR, #0103H ; 送送C口地址口地址 MOV A, R2 MOVX DPTR, A ; 掃描某一行掃描某一行 MOV DPTR, #0101H ; 送送A口地址口地址 MOVX A, DPTR ; 讀列值模型讀列值模型 CPL A ANL
31、 A, #0FFH JNZ KEY2 ; 有鍵按下,求列值有鍵按下,求列值 智能儀器人機(jī)接口(1)26 MOV A, R4 ; 無(wú)鍵按下,行無(wú)鍵按下,行+8 ADD A, #08H MOV R4,A MOV A, R2 ; 求下列為低電平模型求下列為低電平模型 RL A MOV R2,A JB ACC.4, KEY1 ; 判是否已全掃描判是否已全掃描 AJMP KEND KEY2: CPL A ; 恢復(fù)列模型恢復(fù)列模型 KEY3: INC R3 RRC A JC KEY3 KEY4: ACALL D10ms ACALL KEXAM JNZ KEY4 ; 等待鍵釋放等待鍵釋放 MOV A, R4
32、 ; 計(jì)算鍵值計(jì)算鍵值 ADD A, R3 MOV BUFF, A ; 鍵值存入鍵值存入BUFF KEDN:RET BUFF: EQU 30H 智能儀器人機(jī)接口(1)27 D10ms:MOV R5,#14H ; 延時(shí)子程序延時(shí)子程序 DL: MOV R6,#0FFH DL0: DJNZ R6,DL0 DJNZ R5,DL RET KEXAM:MOV DPTR,#0103H ;檢查是否有鍵按下子程序;檢查是否有鍵按下子程序 MOV A, #00H MOVX DPTR, A MOV DPTR,#0101H MOVX A, DPTR CPL A ANL A,#0FFH RET 智能儀器人機(jī)接口(1)
33、28 二、矩陣式鍵盤接口電路及程序二、矩陣式鍵盤接口電路及程序 2. 線路反轉(zhuǎn)法線路反轉(zhuǎn)法 這種方法需要采用可編程的輸入這種方法需要采用可編程的輸入/輸出接口輸出接口8255,8155等,等, 若采用單片機(jī),也可直接與單片機(jī)的若采用單片機(jī),也可直接與單片機(jī)的I/O口相接。下面口相接。下面鍵鍵 盤電路為例來(lái)說(shuō)明線路反轉(zhuǎn)法的原理。盤電路為例來(lái)說(shuō)明線路反轉(zhuǎn)法的原理。 智能儀器人機(jī)接口(1)29 交互式鍵盤的控制程序一般都采用查詢方式。為了編程方交互式鍵盤的控制程序一般都采用查詢方式。為了編程方 便,對(duì)鍵盤中的按鍵進(jìn)行了編碼,每個(gè)按鍵安排了一個(gè)便,對(duì)鍵盤中的按鍵進(jìn)行了編碼,每個(gè)按鍵安排了一個(gè)2位數(shù)位數(shù)
34、 的掃描碼,其第一位數(shù)代表該鍵所位于的列線號(hào),第二位數(shù)代的掃描碼,其第一位數(shù)代表該鍵所位于的列線號(hào),第二位數(shù)代 表該鍵所位于的行線號(hào)。表該鍵所位于的行線號(hào)。 輪流使某一輪流使某一I/O端口線為輸出,輸出低電平,并記錄其對(duì)應(yīng)端口線為輸出,輸出低電平,并記錄其對(duì)應(yīng) 的列線號(hào)為的列線號(hào)為i;同時(shí)讓其他;同時(shí)讓其他I/O端口線為輸入,以判別對(duì)應(yīng)列中端口線為輸入,以判別對(duì)應(yīng)列中 的按鍵是否有鍵按下。的按鍵是否有鍵按下。 若有鍵按下就記錄對(duì)應(yīng)的行線號(hào)若有鍵按下就記錄對(duì)應(yīng)的行線號(hào)j, 則可根椐記錄的則可根椐記錄的i,j求出按下鍵的掃描求出按下鍵的掃描 碼,其值為碼,其值為KD =i10H +j。 具體實(shí)現(xiàn)程
35、序略。具體實(shí)現(xiàn)程序略。 智能儀器人機(jī)接口(1)30 一、一、 直接分析法直接分析法 直接分析法就是根據(jù)當(dāng)前按鍵的鍵值,把控制直接分支到相應(yīng)處理程直接分析法就是根據(jù)當(dāng)前按鍵的鍵值,把控制直接分支到相應(yīng)處理程 序的入口,而無(wú)須知道在此之前的按鍵情況。序的入口,而無(wú)須知道在此之前的按鍵情況。 圖圖3-10 顯示出用直接分析法設(shè)計(jì)的鍵盤分析程序的典型結(jié)構(gòu)。直接分顯示出用直接分析法設(shè)計(jì)的鍵盤分析程序的典型結(jié)構(gòu)。直接分 析法的核心是一張如圖析法的核心是一張如圖3-11所示的一維轉(zhuǎn)移表。轉(zhuǎn)移表內(nèi)登記各處理程序所示的一維轉(zhuǎn)移表。轉(zhuǎn)移表內(nèi)登記各處理程序 的入口。根據(jù)鍵值查閱轉(zhuǎn)移表,即可獲得相應(yīng)的處理程序入口。的
36、入口。根據(jù)鍵值查閱轉(zhuǎn)移表,即可獲得相應(yīng)的處理程序入口。 智能儀器人機(jī)接口(1)31 一、一、 直接分析法直接分析法 簡(jiǎn)單多義鍵的分析程序簡(jiǎn)單多義鍵的分析程序 仍可采用直接分析法,但仍可采用直接分析法,但 這時(shí)要用多張轉(zhuǎn)移表,在這時(shí)要用多張轉(zhuǎn)移表,在 組成一個(gè)命令的按鍵序列組成一個(gè)命令的按鍵序列 中,前幾個(gè)按鍵起著引導(dǎo)中,前幾個(gè)按鍵起著引導(dǎo) 的作用,把控制引向某張的作用,把控制引向某張 合適的轉(zhuǎn)移表。合適的轉(zhuǎn)移表。 基于上述思想的分析程序框基于上述思想的分析程序框 圖可用圖圖可用圖3-12來(lái)說(shuō)明。圖中,來(lái)說(shuō)明。圖中,A, B 兩鍵為雙義鍵,兩鍵為雙義鍵,MODE 鍵用鍵用 來(lái)把控制方向引向轉(zhuǎn)移表
37、來(lái)把控制方向引向轉(zhuǎn)移表2,以,以 區(qū)別區(qū)別A鍵、鍵、B鍵的兩種含義。鍵的兩種含義。 智能儀器人機(jī)接口(1)32 二、狀態(tài)分析法二、狀態(tài)分析法 直接分析法的優(yōu)點(diǎn)是簡(jiǎn)明直觀,缺點(diǎn)是命令的識(shí)別和處理程直接分析法的優(yōu)點(diǎn)是簡(jiǎn)明直觀,缺點(diǎn)是命令的識(shí)別和處理程 序的執(zhí)行交錯(cuò)在一起,相互牽制,層次不清楚,當(dāng)采用多用鍵,序的執(zhí)行交錯(cuò)在一起,相互牽制,層次不清楚,當(dāng)采用多用鍵, 復(fù)用次數(shù)較多時(shí),這一矛盾尤其突出。復(fù)用次數(shù)較多時(shí),這一矛盾尤其突出。 用狀態(tài)分析法可以克服這些缺點(diǎn)。用狀態(tài)分析法可以克服這些缺點(diǎn)。 狀態(tài)分析法將鍵盤分析程序作為時(shí)序系統(tǒng),在一定的條件下?tīng)顟B(tài)分析法將鍵盤分析程序作為時(shí)序系統(tǒng),在一定的條件下
38、系統(tǒng)可以處于某種狀態(tài),當(dāng)條件改變后,它的狀態(tài)可以發(fā)生變遷,系統(tǒng)可以處于某種狀態(tài),當(dāng)條件改變后,它的狀態(tài)可以發(fā)生變遷, 即從一個(gè)狀態(tài)變到另一個(gè)狀態(tài)。即從一個(gè)狀態(tài)變到另一個(gè)狀態(tài)。 如果把鍵盤輸入作為分析程序的輸入條件,每當(dāng)一個(gè)按鍵按如果把鍵盤輸入作為分析程序的輸入條件,每當(dāng)一個(gè)按鍵按 下時(shí),分析程序?qū)⒏鶕?jù)它的現(xiàn)行狀態(tài)和輸入條件,決定產(chǎn)生何種下時(shí),分析程序?qū)⒏鶕?jù)它的現(xiàn)行狀態(tài)和輸入條件,決定產(chǎn)生何種 相應(yīng)動(dòng)作以及變遷到哪一個(gè)新?tīng)顟B(tài)。在不同的狀態(tài)下,同一按鍵相應(yīng)動(dòng)作以及變遷到哪一個(gè)新?tīng)顟B(tài)。在不同的狀態(tài)下,同一按鍵 又可能會(huì)具有不同的含義。引入狀態(tài)概念后,只需開(kāi)辟存儲(chǔ)單元又可能會(huì)具有不同的含義。引入狀態(tài)概
39、念后,只需開(kāi)辟存儲(chǔ)單元 “記憶記憶”當(dāng)前狀態(tài),不必記住以前按鍵的情況,就能對(duì)當(dāng)前按鍵當(dāng)前狀態(tài),不必記住以前按鍵的情況,就能對(duì)當(dāng)前按鍵 的含義做出正確的解釋,簡(jiǎn)化程序設(shè)計(jì)。的含義做出正確的解釋,簡(jiǎn)化程序設(shè)計(jì)。 智能儀器人機(jī)接口(1)33 二、狀態(tài)分析法二、狀態(tài)分析法 一般來(lái)說(shuō),狀態(tài)分析法可分為以下四步進(jìn)行:一般來(lái)說(shuō),狀態(tài)分析法可分為以下四步進(jìn)行: (1) 用狀態(tài)圖準(zhǔn)確表述按鍵操作序列的定義;用狀態(tài)圖準(zhǔn)確表述按鍵操作序列的定義; (2)由上述狀態(tài)圖導(dǎo)出的狀態(tài)表。)由上述狀態(tài)圖導(dǎo)出的狀態(tài)表。 狀態(tài)表狀態(tài)表是鍵盤分析狀態(tài)表狀態(tài)表是鍵盤分析 程序的核心。程序的核心。 (3) 固化狀態(tài)表:為了讓微處理器能
40、使用狀態(tài)表,應(yīng)將其轉(zhuǎn)固化狀態(tài)表:為了讓微處理器能使用狀態(tài)表,應(yīng)將其轉(zhuǎn) 變成可供微處理器查詢的形式。變成可供微處理器查詢的形式。 (4) 設(shè)計(jì)鍵盤分析程序的設(shè)計(jì)設(shè)計(jì)鍵盤分析程序的設(shè)計(jì) 智能儀器人機(jī)接口(1)34 二、狀態(tài)分析法二、狀態(tài)分析法 為了便于理解,下面以某一種函數(shù)發(fā)生器為例說(shuō)明為了便于理解,下面以某一種函數(shù)發(fā)生器為例說(shuō)明 狀態(tài)分析法具體實(shí)施步驟。狀態(tài)分析法具體實(shí)施步驟。 某函數(shù)發(fā)生器面板按鍵布局示意圖某函數(shù)發(fā)生器面板按鍵布局示意圖 智能儀器人機(jī)接口(1)35 二、狀態(tài)分析法二、狀態(tài)分析法 (1) 用狀態(tài)圖準(zhǔn)確表述按鍵操作序列的定義;用狀態(tài)圖準(zhǔn)確表述按鍵操作序列的定義; 智能儀器人機(jī)接口(
41、1)36 二、狀態(tài)分析法二、狀態(tài)分析法 (2)由上述狀態(tài)圖導(dǎo)出的狀態(tài)表。)由上述狀態(tài)圖導(dǎo)出的狀態(tài)表。 狀態(tài)表狀態(tài)表是鍵盤分析狀態(tài)表狀態(tài)表是鍵盤分析 程序的核心。(詳細(xì)內(nèi)容見(jiàn)表程序的核心。(詳細(xì)內(nèi)容見(jiàn)表3.2 ) 智能儀器人機(jī)接口(1)37 二、狀態(tài)分析法二、狀態(tài)分析法 表中表中FNKEY一欄中所采用按鍵的編碼是功能鍵碼,而不是順序碼一欄中所采用按鍵的編碼是功能鍵碼,而不是順序碼(鍵值鍵值)。這樣。這樣 做是為了縮小程序中狀態(tài)表的規(guī)模。做是為了縮小程序中狀態(tài)表的規(guī)模。 按鍵的鍵值與功能鍵碼的關(guān)系如表按鍵的鍵值與功能鍵碼的關(guān)系如表3-3所示。所示。10個(gè)數(shù)字鍵屬于同一性質(zhì),用個(gè)數(shù)字鍵屬于同一性質(zhì),
42、用 FNKY為為1代表。為了區(qū)別不同的數(shù)字鍵,又定義了數(shù)字鍵碼代表。為了區(qū)別不同的數(shù)字鍵,又定義了數(shù)字鍵碼NUMB。 智能儀器人機(jī)接口(1)38 二、狀態(tài)分析法二、狀態(tài)分析法 (3) 固化狀態(tài)表:為了讓微處理器能使用狀態(tài)表,應(yīng)將其轉(zhuǎn)固化狀態(tài)表:為了讓微處理器能使用狀態(tài)表,應(yīng)將其轉(zhuǎn) 變成可供微處理器查詢的形式(詳細(xì)內(nèi)容見(jiàn)表變成可供微處理器查詢的形式(詳細(xì)內(nèi)容見(jiàn)表P73-74 ) 為了讓微處理器能使用狀態(tài)表,按一定的格式將表為了讓微處理器能使用狀態(tài)表,按一定的格式將表3-2構(gòu)造成三張表:主表構(gòu)造成三張表:主表 (儀器操作狀態(tài)表),狀態(tài)表入口地址表和處理子程序入口地址表。(儀器操作狀態(tài)表),狀態(tài)表入
43、口地址表和處理子程序入口地址表。 )主表:)主表: 智能儀器人機(jī)接口(1)39 )狀態(tài)表入口地址表)狀態(tài)表入口地址表 )處理子程序入口地址表。)處理子程序入口地址表。 智能儀器人機(jī)接口(1)40 二、狀態(tài)分析法二、狀態(tài)分析法 (4) 設(shè)計(jì)鍵盤分析設(shè)計(jì)鍵盤分析 程序的設(shè)計(jì)程序的設(shè)計(jì) 智能儀器人機(jī)接口(1)41 3.2 LED 顯示及接口顯示及接口 3.2.1 LED顯示原理顯示原理 3.2.2 七段七段LED顯示及接口顯示及接口 3.2.3 點(diǎn)陣點(diǎn)陣LED顯示及接口顯示及接口 LED 即發(fā)光二極管,它是一種由某些特殊的半導(dǎo)體材料制即發(fā)光二極管,它是一種由某些特殊的半導(dǎo)體材料制 作成的作成的PN結(jié)
44、,由于參雜濃度很高,當(dāng)正向偏置時(shí),會(huì)產(chǎn)生大量結(jié),由于參雜濃度很高,當(dāng)正向偏置時(shí),會(huì)產(chǎn)生大量 的電子的電子空穴復(fù)合,把多余的能釋放變?yōu)楣饽?。空穴?fù)合,把多余的能釋放變?yōu)楣饽?。LED顯示器具顯示器具 有工作電壓低、體積小、壽命長(zhǎng)(約十萬(wàn)小時(shí))、響應(yīng)速度快有工作電壓低、體積小、壽命長(zhǎng)(約十萬(wàn)小時(shí))、響應(yīng)速度快 (小于(小于1s),), 顏色豐富(紅、黃、綠等)等特點(diǎn),是智能儀顏色豐富(紅、黃、綠等)等特點(diǎn),是智能儀 器最常使用的顯示器。器最常使用的顯示器。 智能儀器人機(jī)接口(1)42 3.2.1 LED顯示原理顯示原理 LED的正向工作壓降一般在的正向工作壓降一般在1.2V2.6V,發(fā)光工作電流在,
45、發(fā)光工作電流在 5mA20mA,發(fā)光強(qiáng)度基本上與正向電流成正比,故電路須,發(fā)光強(qiáng)度基本上與正向電流成正比,故電路須 串聯(lián)適當(dāng)?shù)南蘖麟娮?。串?lián)適當(dāng)?shù)南蘖麟娮?。LED很適于脈沖工作狀態(tài),在平均電流很適于脈沖工作狀態(tài),在平均電流 相同的情況下,脈沖工作狀態(tài)比直流工作狀態(tài)產(chǎn)生的亮度增強(qiáng)相同的情況下,脈沖工作狀態(tài)比直流工作狀態(tài)產(chǎn)生的亮度增強(qiáng) 20左右。左右。 LED顯示器有單個(gè)、七段和點(diǎn)陣式等幾種類型。顯示器有單個(gè)、七段和點(diǎn)陣式等幾種類型。 一、一、 單個(gè)單個(gè)LED顯示器顯示器 二、二、 七段七段LED顯示器顯示器 三、三、 點(diǎn)陣式點(diǎn)陣式LED顯示器顯示器 智能儀器人機(jī)接口(1)43 3.2.1 LED
46、顯示原理顯示原理 一、一、 單個(gè)單個(gè)LED顯示器顯示器單個(gè)LED顯示器常用于 顯示儀器的狀態(tài)。 圖316為單個(gè)LED顯示 器接口電路。儀器內(nèi)微處理 器經(jīng)數(shù)據(jù)總線D0D7輸出待 顯示的代碼,送至輸出接口。 設(shè)輸出端Q0為低電平,則對(duì) 應(yīng)的LED顯示器正向?qū)ú?發(fā)亮,反之則熄滅。 74LS374 作為輸出口最 多驅(qū)動(dòng)八個(gè)LED顯示器,表 示儀器的八個(gè)狀態(tài)信息。 智能儀器人機(jī)接口(1)44 3.2.2 七段七段 LED 顯示及接口顯示及接口 七段七段LED顯示器由多個(gè)顯示器由多個(gè)LED組成一個(gè)陣列,并封裝于一個(gè)組成一個(gè)陣列,并封裝于一個(gè) 標(biāo)準(zhǔn)的外殼中。為適用于不同的驅(qū)動(dòng)電路,有共陽(yáng)極和共陰極標(biāo)準(zhǔn)的
47、外殼中。為適用于不同的驅(qū)動(dòng)電路,有共陽(yáng)極和共陰極 兩種結(jié)構(gòu)。兩種結(jié)構(gòu)。 七段七段LED顯示器可組成顯示器可組成09數(shù)字和多種字母,這種顯示中數(shù)字和多種字母,這種顯示中 還提供有一個(gè)小數(shù)點(diǎn),所以實(shí)際共有八段。還提供有一個(gè)小數(shù)點(diǎn),所以實(shí)際共有八段。 智能儀器人機(jī)接口(1)45 3.2.2 七段七段 LED 顯示及接口顯示及接口 為了顯示某個(gè)數(shù)或字符,就要點(diǎn)亮對(duì)應(yīng)的段,這就需要譯為了顯示某個(gè)數(shù)或字符,就要點(diǎn)亮對(duì)應(yīng)的段,這就需要譯 碼。譯碼有硬件譯碼和軟件譯碼之分。碼。譯碼有硬件譯碼和軟件譯碼之分。 硬件譯碼顯示電路見(jiàn)圖硬件譯碼顯示電路見(jiàn)圖3-18所示。所示。BCD碼轉(zhuǎn)換為對(duì)應(yīng)的七碼轉(zhuǎn)換為對(duì)應(yīng)的七 段
48、字型碼(簡(jiǎn)稱段碼)這項(xiàng)工作由七段譯碼段字型碼(簡(jiǎn)稱段碼)這項(xiàng)工作由七段譯碼/驅(qū)動(dòng)器驅(qū)動(dòng)器74LS47完完 成。硬件譯碼電路的計(jì)算機(jī)開(kāi)銷時(shí)間較小,但硬件開(kāi)支大。成。硬件譯碼電路的計(jì)算機(jī)開(kāi)銷時(shí)間較小,但硬件開(kāi)支大。 軟件譯碼顯示電路見(jiàn)圖軟件譯碼顯示電路見(jiàn)圖3-19所示。與硬件電路相比,軟件所示。與硬件電路相比,軟件 譯碼顯示電路省去硬件譯碼器,其譯碼工作由軟件來(lái)完成。譯碼顯示電路省去硬件譯碼器,其譯碼工作由軟件來(lái)完成。 微處理器有較強(qiáng)的邏輯控制能力,采用軟件譯碼并不復(fù)雜。微處理器有較強(qiáng)的邏輯控制能力,采用軟件譯碼并不復(fù)雜。 采用軟件譯碼不僅可使硬件電路簡(jiǎn)化,而且其譯碼邏輯可隨編采用軟件譯碼不僅可使
49、硬件電路簡(jiǎn)化,而且其譯碼邏輯可隨編 程設(shè)定,不受硬件譯碼邏輯的限制。所以智能儀器使用較多的程設(shè)定,不受硬件譯碼邏輯的限制。所以智能儀器使用較多的 是軟件譯碼方式。是軟件譯碼方式。 智能儀器人機(jī)接口(1)46 硬件譯碼顯示電路(共陽(yáng)極接法)硬件譯碼顯示電路(共陽(yáng)極接法) 軟件譯碼顯示電路(共陰極接法)軟件譯碼顯示電路(共陰極接法) 智能儀器人機(jī)接口(1)47 硬件譯碼顯示電路(共陽(yáng)極接法)硬件譯碼顯示電路(共陽(yáng)極接法) 軟件譯碼顯示電路(共陰極接法)軟件譯碼顯示電路(共陰極接法) 智能儀器人機(jī)接口(1)48 0 1 2 3 4 5 6 7 a b c d e f g ep +5V D7 Dp D
50、6 g D5 f D4 e D3 d D2 c D1 b D0 a 代碼代碼 0 1 2 3 1 1 0 0 0 0 0 0 C0H 1 1 1 1 1 0 0 1 F9H 1 0 1 0 0 1 0 0 A4H 1 0 1 1 0 0 0 0 B0H 軟件譯碼法軟件譯碼法 ( BCD碼碼七段顯示代碼七段顯示代碼 ) a b d c e f g dp a b d c e f g dp a b d c e f g dp a b d c e f g dp a b d c e f g dp 09 的七段顯示代碼的七段顯示代碼 : C0H,F(xiàn)9H,A4H,B0H . D7-D0 共陽(yáng)極接法為例共陽(yáng)極接
51、法為例 智能儀器人機(jī)接口(1)49 字符字符 共陰極段碼共陰極段碼 共陽(yáng)極段碼共陽(yáng)極段碼 字符字符 共陰極段碼共陰極段碼 共陽(yáng)極段碼共陽(yáng)極段碼 0 3FH C0H A 77H 88H 1 06H F9H B 7CH 83H 2 5BH A4H C 39H C6H 3 4FH B0H D 5EH A1H 4 66H 99H E 79H 86H 5 6DH 92H F 71H 8EH 6 7DH 82H H 76H 09H 7 07H F8H P 73H 8CH 8 7FH 80H U 3EH C1H 9 6FH 90H 滅滅 00H FFH LED LED 顯示器字段碼表顯示器字段碼表 3.2.
52、2 七段七段 LED 顯示及接口顯示及接口 智能儀器人機(jī)接口(1)50 3.2.2 七段七段 LED 顯示及接口顯示及接口 七段七段LED顯示系統(tǒng)有靜態(tài)顯示和動(dòng)態(tài)顯示之分。顯示系統(tǒng)有靜態(tài)顯示和動(dòng)態(tài)顯示之分。 在靜態(tài)顯示系統(tǒng)中,在靜態(tài)顯示系統(tǒng)中, 每位顯示器都應(yīng)有各自的鎖存器、譯每位顯示器都應(yīng)有各自的鎖存器、譯 碼器(采用軟件譯碼時(shí)譯碼器可省去),以鎖存各自待顯示數(shù)碼器(采用軟件譯碼時(shí)譯碼器可省去),以鎖存各自待顯示數(shù) 字的字的BCD碼或反碼。因此,靜態(tài)顯示系統(tǒng)的每次顯示能夠保持碼或反碼。因此,靜態(tài)顯示系統(tǒng)的每次顯示能夠保持 不變,僅在待顯數(shù)字需要改變時(shí),才更新其鎖存的內(nèi)容。其優(yōu)不變,僅在待顯數(shù)
53、字需要改變時(shí),才更新其鎖存的內(nèi)容。其優(yōu) 點(diǎn)是占用機(jī)時(shí)少,顯示穩(wěn)定可靠。缺點(diǎn)是當(dāng)顯示的位數(shù)較多時(shí),點(diǎn)是占用機(jī)時(shí)少,顯示穩(wěn)定可靠。缺點(diǎn)是當(dāng)顯示的位數(shù)較多時(shí), 占用占用I/O口較多。口較多。 在動(dòng)態(tài)顯示系統(tǒng)中,微處理器或控制器應(yīng)定時(shí)地對(duì)各個(gè)顯在動(dòng)態(tài)顯示系統(tǒng)中,微處理器或控制器應(yīng)定時(shí)地對(duì)各個(gè)顯 示器進(jìn)行掃描,顯示器件分時(shí)輪流工作。其優(yōu)點(diǎn)是硬件少,占示器進(jìn)行掃描,顯示器件分時(shí)輪流工作。其優(yōu)點(diǎn)是硬件少,占 用用I/O口少。缺點(diǎn)是占用機(jī)時(shí)長(zhǎng),只要不執(zhí)行顯示程序,就立刻口少。缺點(diǎn)是占用機(jī)時(shí)長(zhǎng),只要不執(zhí)行顯示程序,就立刻 停止顯示。停止顯示。 隨著大規(guī)模集成電路的發(fā)展,目前已有采用硬件對(duì)顯示器隨著大規(guī)模集成電路
54、的發(fā)展,目前已有采用硬件對(duì)顯示器 進(jìn)行自動(dòng)掃描的專用顯示芯片,使電路既簡(jiǎn)單又少占用機(jī)時(shí)。進(jìn)行自動(dòng)掃描的專用顯示芯片,使電路既簡(jiǎn)單又少占用機(jī)時(shí)。 智能儀器人機(jī)接口(1)51 一、一、 靜態(tài)顯示接口電路及顯示程序舉例靜態(tài)顯示接口電路及顯示程序舉例 智能儀器人機(jī)接口(1)52 ORG 8000H DISP: MOV R1,30H ;R1存小數(shù)點(diǎn)信息存小數(shù)點(diǎn)信息 MOV R0,#31H ;R0指向顯緩單元指向顯緩單元 MOV R2,#04H ;R1指示循環(huán)次數(shù)指示循環(huán)次數(shù) MOV DPTR,#4000H ;顯示地址送;顯示地址送DPTR LOOP: MOV A,R0 ;取數(shù)進(jìn)行譯碼;取數(shù)進(jìn)行譯碼 PU
55、SH DPH PUSH DPL MOV DPTR,#SEG MOVC A,A+DPTR ;取對(duì)應(yīng)段碼;取對(duì)應(yīng)段碼 BIT 3,R1 ;判小數(shù)點(diǎn)位;判小數(shù)點(diǎn)位 JNZ L1 ANL 7FH ;小數(shù)點(diǎn)位處理;小數(shù)點(diǎn)位處理 L1: POP DPL POP DPH MOVX DPTR,A ;段碼送顯;段碼送顯 INC R0 ;調(diào)整;調(diào)整 INC DPTR ;調(diào)整;調(diào)整 MOV A, R1 ;R1左移一位左移一位 RL A MOV R1, A DJNZ R2, LOOP ; 顯示是否完成顯示是否完成 RET SEG: DB 0C0H, 0F9H, 0A4H ; 0,1,2 DB 0B0H, 99H, 9
56、2H ; 3,4,5 DB 82H, 0F8H, 80HH ; 6,7,8 DB 90H, 0FFH, 0BFH ; 9,空,空, 智能儀器人機(jī)接口(1)53 二、二、 動(dòng)態(tài)掃描顯示接口電路及顯示程序舉例動(dòng)態(tài)掃描顯示接口電路及顯示程序舉例 智能儀器人機(jī)接口(1)54 DIS: MOV R0,#30H ; R0指向顯緩指向顯緩 MOV R2,#20H ; R2存位選碼存位選碼 DIS1: MOV A,R0 ; 取數(shù)進(jìn)行譯碼取數(shù)進(jìn)行譯碼 MOV DPTR,#SEG MOVC A,A+DPTR ; 取段碼取段碼 MOV DPTR,#0FD01H MOVX DPTR, A ; 段碼送段碼送A口口 MO
57、V A, R2 INC DPTR MOVX DPTR, A ; 位選碼送位選碼送B口口 ACALL DIMS ; 延時(shí)延時(shí)35ms MOV A, R2 JB ACC.0, DIS2 ; 是否顯示完畢是否顯示完畢 INC R0 ; 未完,未完, 取下位取下位 MOV A, R2 RR A ; 下位位選碼下位位選碼 MOV R2, A AJMP DIS1 DIS2: RET DIMS: MOV R3,#70H ; 延時(shí)子程序延時(shí)子程序 DL1: NOP DJNZ R3, DL1 RET SEG: DB 3FH,06H,5BH,4FH;0,1,2,3 DB 66H,6DH,7DH,07H ; 4,5
58、,6,7 DB 7FH,6FH,77H,7CH ; 8,9,A,B DB 39H,5EH,79H,71H ; C,D,E,F(xiàn) 智能儀器人機(jī)接口(1)55 在靜態(tài)顯示方式下,在靜態(tài)顯示方式下,LED 顯示器各顯示段的工作電流是恒顯示器各顯示段的工作電流是恒 定的,在動(dòng)態(tài)顯示方式下,定的,在動(dòng)態(tài)顯示方式下,LED顯示器各顯示段的工作電流是顯示器各顯示段的工作電流是 脈動(dòng)的。因此,后者脈動(dòng)工作電流的幅值應(yīng)遠(yuǎn)大于前者恒定工脈動(dòng)的。因此,后者脈動(dòng)工作電流的幅值應(yīng)遠(yuǎn)大于前者恒定工 作電流的幅值。作電流的幅值。 設(shè)前者的恒定電流為設(shè)前者的恒定電流為8mA,考慮脈動(dòng)工作電流情況下發(fā)光,考慮脈動(dòng)工作電流情況下發(fā)
59、光 效率優(yōu)于恒定電流的情況,則六位動(dòng)態(tài)顯示方式下的段驅(qū)動(dòng)工效率優(yōu)于恒定電流的情況,則六位動(dòng)態(tài)顯示方式下的段驅(qū)動(dòng)工 作電流應(yīng)為作電流應(yīng)為38mA(80.86)。對(duì)于位驅(qū)動(dòng)電路來(lái)說(shuō),它必)。對(duì)于位驅(qū)動(dòng)電路來(lái)說(shuō),它必 須能負(fù)載一個(gè)數(shù)字顯示器各個(gè)顯示段工作電流的總和。須能負(fù)載一個(gè)數(shù)字顯示器各個(gè)顯示段工作電流的總和。 所以它所以它 的最大位驅(qū)動(dòng)脈動(dòng)負(fù)載電流應(yīng)約為的最大位驅(qū)動(dòng)脈動(dòng)負(fù)載電流應(yīng)約為300mA。但由于位驅(qū)動(dòng)是分。但由于位驅(qū)動(dòng)是分 時(shí)多路工作,所以它的最大平均負(fù)載電流為時(shí)多路工作,所以它的最大平均負(fù)載電流為50mA。 在動(dòng)態(tài)顯示系統(tǒng)中,一位數(shù)字的顯示持久時(shí)間不允許超過(guò)在動(dòng)態(tài)顯示系統(tǒng)中,一位數(shù)字的顯
60、示持久時(shí)間不允許超過(guò) 其額定值,更不允許系統(tǒng)長(zhǎng)久地停止掃描刷新,否則,某一個(gè)其額定值,更不允許系統(tǒng)長(zhǎng)久地停止掃描刷新,否則,某一個(gè) 數(shù)字顯示器和位驅(qū)動(dòng)電路將因長(zhǎng)時(shí)間流過(guò)較大的恒定電流而被數(shù)字顯示器和位驅(qū)動(dòng)電路將因長(zhǎng)時(shí)間流過(guò)較大的恒定電流而被 損壞。同時(shí),動(dòng)態(tài)顯示方式所能容許的顯示數(shù)字的個(gè)數(shù)是有限損壞。同時(shí),動(dòng)態(tài)顯示方式所能容許的顯示數(shù)字的個(gè)數(shù)是有限 的(一般的(一般N16),這是由于顯示系統(tǒng)所能容許最大脈動(dòng)工作電),這是由于顯示系統(tǒng)所能容許最大脈動(dòng)工作電 流是有限的。而靜態(tài)顯示方式無(wú)上述限制。流是有限的。而靜態(tài)顯示方式無(wú)上述限制。 智能儀器人機(jī)接口(1)56 3.2.3 點(diǎn)陣點(diǎn)陣 LED 顯示
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 年度購(gòu)貨合同范本
- 科技創(chuàng)新在城市旅游規(guī)劃中的實(shí)踐
- 九年級(jí)班會(huì)課件 中考百日沖刺
- 小孩買東西合同范本
- 設(shè)備補(bǔ)充合同范本
- 鄉(xiāng)村旅游規(guī)劃合同范本
- 拆除定額合同范本
- 電子商務(wù)平臺(tái)在物流領(lǐng)域的創(chuàng)新優(yōu)化
- 電影院音效系統(tǒng)設(shè)計(jì)與安裝的標(biāo)準(zhǔn)化流程
- 生態(tài)修復(fù)土方工程施工方案
- 定量包裝商品培訓(xùn)
- 毛戈平-+毛戈平深度報(bào)告:再論毛戈平商業(yè)模式與核心壁壘:個(gè)人IP+化妝學(xué)校+線下服務(wù)
- 第二章美容手術(shù)的特點(diǎn)及其實(shí)施中的基本原則美容外科學(xué)概論講解
- 山東省濰坊市2024-2025學(xué)年高三上學(xué)期1月期末考試生物試卷含答案
- 2025年“春訓(xùn)”學(xué)習(xí)心得體會(huì)例文(3篇)
- 中央2025年公安部部分直屬事業(yè)單位招聘84人筆試歷年參考題庫(kù)附帶答案詳解
- 人教版(2025新版)七年級(jí)下冊(cè)數(shù)學(xué)第七章 相交線與平行線 單元測(cè)試卷(含答案)
- 樂(lè)理知識(shí)考試題庫(kù)130題(含答案)
- 前言 馬克思主義中國(guó)化時(shí)代化的歷史進(jìn)程與理論成果
- 《消防安全評(píng)估檢查記錄》
- XXX廣播電視網(wǎng)絡(luò)公司關(guān)于推進(jìn)網(wǎng)格承包經(jīng)營(yíng)方案
評(píng)論
0/150
提交評(píng)論