機電之家資源網(wǎng)
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
89C51的異步串行接口鍵盤設計
89C51的異步串行接口鍵盤設計
 更新時間:2009-12-29 16:22:13  點擊數(shù):0
【字體: 字體顏色

 :介紹了計算機異步串行接口鍵盤的特殊設計要求和工作原理,結合開發(fā)過程,討論分析了89C51芯片的結構、功能特點以及應用中需要注意的問題,并給出了計算機串行接口鍵盤的硬件原理圖及軟件流程圖。<!--摘要CH(結束)←-->
<!--→關鍵CH(開始)-->關鍵詞:89C51單片機;異步串行接口;鍵盤設計;E2PROM<!--關鍵CH(結束)←--><!--→標題EN(開始)-->

  
<!--關鍵EN(結束)←-->

    在信息處理系統(tǒng)中,顯示分系統(tǒng)是整個系統(tǒng)的人機界面。顯示器畫面呈現(xiàn)出的態(tài)勢圖形和數(shù)據(jù),是人們決策的重要依據(jù)。人工干預手段則是將人們的決策變?yōu)橄到y(tǒng)所能接收信息的必不可少的工具。因此人工干預手段的多寡及有效度直接影響著整個系統(tǒng)的有效度。特別是在處理信息量大,人機交互頻繁的系統(tǒng)中,對人工干預手段的要求更高。

  筆者結合工作實際,圍繞單片機89C51設計了通用異步串行接口鍵盤作為顯示分系統(tǒng)的擴展鍵盤。目的在于為顯示分系統(tǒng)增加一種干預手段。實踐表明:此鍵盤改善了系統(tǒng)的人機界面,提高了系統(tǒng)的處理效率。

1 設計要求與工作原理
1.1 設計要求
   
(1)擴展鍵盤鍵位編碼符合顯示分系統(tǒng)的約定! 
    (2)擴展鍵盤與顯示處理機通訊通過其異步串行接口來完成,波特率為9600 b/s。
  (3)擴展鍵盤與顯示處理機通訊的接口電平為RS232C標準。
    (4)波特率相對誤差應小于2.5%。
    (5)擴展鍵盤的電源要求:直流+5 V。
  (6)擴展鍵盤的環(huán)境溫度要求:-100~+500°C。

1.2 工作原理
   
擴展鍵盤工作原理如圖1所示。擴展鍵盤通過異步串 行接口與顯示處理機相連,與標準鍵盤一起,顯示處理機便擁有2個鍵盤。2個鍵盤可同時向顯示處理機發(fā)出干預命令。因此,顯示分系統(tǒng)增加了一條輸入干預命令的新途徑,縮短了干預命令的輸入時間,提高了人工干預的效率。

2 電路設計
   
擴展鍵盤由以下幾部分組成:
    ①單片機89C51及時鐘、復位電路。
 、赥TL電平到RS232C電平轉換芯片ICL232CPE,此芯片只需直流+5 V電源。
    ③工作指示電路。
    ④鍵位陣列部分(8×13)。
    擴展鍵盤電原理圖如圖2所示。


3  89C51的結構與性能特點
    89C51是MCS-51系列單片機的典型產(chǎn)品之一。其內(nèi)部具有的硬件資源如圖3所示。


    ①4 kB可編程的E2PROM。
    ②面向控制的8 b CPU。
    ③128 B內(nèi)部RAM數(shù)據(jù)存貯器。
    ④32 b雙向輸入/輸出線。
    ⑤1個全雙工的串行口。
    ⑥2個16 b定時器/計數(shù)器。
    ⑦5個中斷源,2個中斷優(yōu)先級。⑧時鐘發(fā)生器。
 、峥梢詫ぶ64 kB的程序存貯器和64 kB的外部數(shù)據(jù)存貯器。
  該鍵盤利用了89C51的片內(nèi)E2PROM作為程序存貯器,避免外擴存貯器占用單片機的輸入/輸出口資源;利用P3口的第二功能完成異步串行通訊功能;用一片ICL232CPE作為接口電平轉換芯片,便實現(xiàn)了鍵盤的全部硬件邏輯。硬件少,可靠性高。整個鍵盤采用+5 V直流電源;電路與鍵位陣列分離設計。本鍵盤還克服了以往鍵盤設計中鍵位少、不通用等缺點。

4 軟件功能流程圖
  軟件實現(xiàn)鍵位掃描、消除抖動、鍵碼轉換、鍵碼發(fā)送等功能。另外軟件也實現(xiàn)了換檔、按鍵連發(fā)功能。軟件功能流程圖如圖4所示。



5 應用中應注意的問題
  
在異型機種的串行通訊中,當規(guī)定了傳輸速率后,MCS-51
單片機系統(tǒng)中選取適當?shù)木w振蕩頻率至關重要。他與串行接口的工作方式、電源控制寄存器PCON的SMOD位、定時器T1一起決定著通訊的成敗。MCS-51單 片機串行接口工作在方式0時,其波特率固定不變,其大小為:晶振頻率/12。此方式為同步方式;工作在方式2時為異步方式,其波率為晶振頻率:①SMOD=0時,波特率為:晶振頻率/64;②當SMOD=1時,波特率為:晶振頻率/32;串行接口工作方式為1,3時為異步方式且其波特率是可變的,除了與SMOD位的取值有關外,主要取決于定時器1的溢出率。波特率可由下式確定:
    
而定時器1的溢出率又由計數(shù)速率和定時時間預置數(shù)X決定,即:
     

    此時T1工作方式2,即8位自動裝載方式。這種方式可以避免通過中斷服務程序來重新裝入初值,所得波特率也比較精確。式中X即為在TH1和TL1中裝入的初始計數(shù)值。定時器1的計數(shù)速率與定時器工作方式的選擇有關。當選定T1為定時工作方式時,其計數(shù)輸入脈沖為內(nèi)部時鐘信號,即每個機器周期使寄存器值加1。而每個機器周期為12個振蕩周期,故計數(shù)速率為晶振頻率的1/12。因此
    

    由于本擴展鍵盤與顯示處理機的串行通訊為異步方式,所以設置他的串行接口的工作方式為方式1,定時器1的工作方式為方式2。再根據(jù)波特率要求(9 600 b/s)求他的預置值。若系統(tǒng)晶體的振蕩頻率12 MHz時,當SMOD選為1時,TH1,TL1的初值計算如下:
     
    解上式可得:X1=250(FAH)或X2=249(F9H)
  將X置入TH1,TL1時,波特率發(fā)生器產(chǎn)生的實際的傳輸速率為:
   
或 波特率2=8 928.57 b/s,波特率誤差2=7%
無論置入哪個數(shù),PC機與單片機之間均無法完成正常的通訊。

    若采用11.059 2 MHz晶振,按照上面公式計算出X=250 FAH,實際的傳輸速率為9 599.83 b/s,其誤差為0.001 77%,PC機與單片機的通訊可正常進行。

    另外,SMOD位的選擇有時也能影響波特率的誤差。

    因此在波特率設置時,對SMOD位的選取也需慎重考慮。

  設計按鍵陣列時,應采用標準鍵盤的導電橡膠薄膜按鍵陣列,避免使用壽命短、常出現(xiàn)接觸不良現(xiàn)象的老式鍵。

6 結語
  此鍵盤功能設計還可進一步細化,如實現(xiàn)大寫鎖定、小鍵盤鎖定等。由于鍵盤與主機通訊數(shù)據(jù)量不大,故未采用USB口與主機通訊。稍加修改,完全可以用USB口與主機通訊。若此鍵盤用于一些不采用串行通訊的系統(tǒng)中時,可直接用TTL電平相連,省掉ICL232CPE芯片,電路更簡單,且P3口可采用并行輸出。

參考文獻

[1]何立民.MCS-51系列單片機應用系統(tǒng)設計[M].北京:北京航空航天大學出版社,1990.
[2]張友德.單片微型機原理、應用與實驗[M].上海:復旦大學出版社,2000.
[3]何立民.單片機應用技術選編(1)[M].北京:北京航空航天大學出版社,1992


  • 上一篇: AT89C2051的智能型汽車防撞報警器的設計
  • 下一篇: 沒有了
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網(wǎng)友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1