新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于89C51單片機(jī)的數(shù)字視頻監(jiān)控系統(tǒng)鍵盤(pán)及報(bào)警控制卡設(shè)計(jì)

基于89C51單片機(jī)的數(shù)字視頻監(jiān)控系統(tǒng)鍵盤(pán)及報(bào)警控制卡設(shè)計(jì)

作者: 時(shí)間:2012-12-13 來(lái)源:網(wǎng)絡(luò) 收藏

監(jiān)控錄像系統(tǒng)中最重要的輸入設(shè)備之一,是人機(jī)接口的重要組成部分。目前常用的工業(yè)控制計(jì)算機(jī)除配置電子鎖開(kāi)關(guān)防止非法輸入外,與PC鍵盤(pán)并沒(méi)有多大區(qū)別。這種鍵盤(pán)不僅鍵數(shù)多,操作不靈活,而且通常只能作為輸入設(shè)備,主機(jī)無(wú)法通過(guò)鍵盤(pán)與外設(shè)進(jìn)行通信。本文在分析PC機(jī)鍵盤(pán)通信方式的基礎(chǔ)上,出以為核心的鍵盤(pán)及,該卡具有鍵盤(pán)通信和輸入輸出兩種功能,采用標(biāo)準(zhǔn)PCI卡的結(jié)構(gòu),但不占用主機(jī)硬件資源。其中,部分有4路輸入和4路輸出,可以與標(biāo)準(zhǔn)的報(bào)警傳感器相連;鍵盤(pán)部分有16個(gè)鍵,通信方式與PC機(jī)完全兼容。采用這種,不僅可以節(jié)省中常用的專用報(bào)警解碼器,而且能夠?qū)崿F(xiàn)在不占用主機(jī)硬件資源的情況下實(shí)現(xiàn)與外設(shè)的雙向通信,利用這個(gè)特性,可以及時(shí)發(fā)現(xiàn)系統(tǒng)的異常情況并加以解決,從而大大提高目前普遍采用的基于WINDOWS操作系統(tǒng)的視頻監(jiān)控錄像系統(tǒng)的可靠性。

本文引用地址:http://butianyuan.cn/article/170660.htm

1 鍵盤(pán)與主機(jī)的通信方式

主機(jī)通過(guò)鍵盤(pán)接口與鍵盤(pán)聯(lián)絡(luò),主機(jī)與鍵盤(pán)的通信,實(shí)際上是鍵盤(pán)接口與鍵盤(pán)的通信。PC機(jī)鍵盤(pán)接口采用Intel8042芯片作為控制器,接收鍵盤(pán)掃描碼以及向鍵盤(pán)發(fā)送命令。除了電源線和地線之外,鍵盤(pán)與主機(jī)之間還有兩條雙向通信線:時(shí)鐘線和數(shù)據(jù)線。采用串行傳送方式,在時(shí)鐘脈沖作用下同步地收發(fā)數(shù)據(jù),既可以向主機(jī)傳送鍵盤(pán)響應(yīng)或鍵盤(pán)掃描碼,也可以接收來(lái)自主機(jī)的鍵盤(pán)命令。主機(jī)通過(guò)設(shè)置數(shù)據(jù)線和時(shí)鐘線的狀態(tài),指導(dǎo)鍵盤(pán)收發(fā)數(shù)據(jù):

(1)時(shí)鐘線為低電平,禁止鍵盤(pán)傳送數(shù)據(jù);

(2)時(shí)鐘線為高電平,數(shù)據(jù)線為低電平,通知鍵盤(pán)接收命令或參數(shù);

(3)時(shí)鐘線和數(shù)據(jù)線都為高電平,允許鍵盤(pán)傳送數(shù)據(jù);

1.1 鍵盤(pán)向主機(jī)發(fā)送數(shù)據(jù)

由于鍵盤(pán)輸入是異步的,且具有實(shí)時(shí)性,所以主機(jī)系統(tǒng)以中斷方式支持鍵符的隨機(jī)輸入。每當(dāng)鍵盤(pán)接口接收完從鍵盤(pán)送來(lái)的串行掃描碼時(shí),即向中斷系統(tǒng)發(fā)出一個(gè)鍵盤(pán)中斷,若CPU響應(yīng)該中斷,則由鍵盤(pán)中斷程序讀取此掃描碼,經(jīng)轉(zhuǎn)換后成為系統(tǒng)掃描碼,存到鍵盤(pán)緩沖區(qū)。鍵盤(pán)發(fā)送數(shù)據(jù)時(shí),數(shù)據(jù)線和時(shí)鐘線都由鍵盤(pán)控制。鍵盤(pán)發(fā)送一個(gè)字節(jié)的數(shù)據(jù)格式如圖1所示。

圖1 鍵盤(pán)串行數(shù)據(jù)格式

鍵盤(pán)首先檢測(cè)時(shí)鐘線和數(shù)據(jù)線的狀態(tài),當(dāng)兩者皆為高電平時(shí),開(kāi)始傳送數(shù)據(jù)。依次傳送起始位、8位數(shù)據(jù)位(低位在前)、校驗(yàn)位和停止位。每傳送一位,時(shí)鐘線同步地產(chǎn)生一個(gè)脈沖。當(dāng)主機(jī)收到該脈沖后,將時(shí)鐘線置成低電平并保持一段時(shí)間,禁止鍵盤(pán)繼續(xù)發(fā)碼,以便于檢驗(yàn)該數(shù)據(jù)的正確性,并產(chǎn)生中斷、進(jìn)行代碼轉(zhuǎn)換和執(zhí)行相應(yīng)的操作。如果檢驗(yàn)出錯(cuò),就向鍵盤(pán)傳送重發(fā)命令0FEH,要求重送,鍵盤(pán)向主機(jī)發(fā)送數(shù)據(jù)采用奇校驗(yàn)方式。

1.2 鍵盤(pán)接收主機(jī)命令和參數(shù)

主機(jī)首先將時(shí)鐘線置為低電平,隨后將數(shù)據(jù)線置為低電平,延時(shí)大約200μs后,將時(shí)鐘線置為高電平。當(dāng)鍵盤(pán)檢測(cè)到這一狀態(tài)后,開(kāi)始接收主機(jī)命令,接收數(shù)據(jù)格式與發(fā)送的一樣。鍵盤(pán)依次接收1個(gè)起始位、8個(gè)數(shù)據(jù)位、1個(gè)校驗(yàn)位、1個(gè)停止位。特別值得注意的是,在接收鍵盤(pán)命令或參數(shù)時(shí),雖然數(shù)據(jù)是由主機(jī)發(fā)向鍵盤(pán)的,但是時(shí)鐘脈沖是由鍵盤(pán)產(chǎn)生的。主機(jī)在時(shí)鐘線上每接收一個(gè)脈沖的下降沿,就在數(shù)據(jù)線上輸出一位數(shù)據(jù)。如果接收正確,在時(shí)鐘線和數(shù)據(jù)線都成為高電平后,鍵盤(pán)將向主機(jī)發(fā)一個(gè)應(yīng)答信號(hào)(0FAH),否則向主機(jī)發(fā)一個(gè)0FEH信號(hào),要求重發(fā)。主機(jī)收到0FEH信號(hào)后,把剛才輸出過(guò)的數(shù)據(jù)重新發(fā)送一次。如果這一過(guò)程持續(xù)三次后,鍵盤(pán)仍然不能正確接收,主機(jī)就放棄傳送這個(gè)數(shù)據(jù),轉(zhuǎn)去執(zhí)行下面的程序或顯示錯(cuò)誤信息。主機(jī)命令和參數(shù)也采用奇校驗(yàn)方式。

2 系統(tǒng)硬件電路

本系統(tǒng)采用與PC鍵盤(pán)接口相連,圖2給出了系統(tǒng)硬件電路原理。其中P3.0和P3.1分別與主機(jī)鍵盤(pán)接口的時(shí)鐘線CLK和數(shù)據(jù)線DATA相連,P2口與4×4鍵盤(pán)矩陣相連,P0口經(jīng)過(guò)驅(qū)動(dòng)后與輸入輸出報(bào)警設(shè)備相連接。為保證鍵盤(pán)可靠工作,系統(tǒng)配置了看門(mén)狗電路MAX813L,另外,系統(tǒng)還配置了蜂鳴器,每次按鍵均有聲音提示。

圖2 系統(tǒng)硬件電路原理

DIY機(jī)械鍵盤(pán)相關(guān)社區(qū):機(jī)械鍵盤(pán)DIY



上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉