新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 以DSP為核心的嵌入式系統人機接口設計

        以DSP為核心的嵌入式系統人機接口設計

        作者: 時間:2016-12-21 來源:網絡 收藏

        1 引言

        人機接口是嵌入式控制系統的重要組成部分,用于人機之間實時交換控制系統并返回系統狀態。嵌入式系統大都采用液晶屏和鍵盤作為人機接口的輸入、輸出設備。這里設計的人機接口作為數據采集系統的組成部分,為系統控制和運行監測提供方便,而其本身在各種嵌入式控制系統中又具有廣泛的實用性。

        2 液晶屏顯示功能的實現

        這里采用的液晶顯示器為RT320240B。該顯示器的控制器使用SEIKO EPSON公司生產的SED1335型控制器。DSP訪問SED1335時,無需判斷其是否空閑,SED1335能夠隨時準備接受DSP的訪問并按照內部時序及時正確傳輸DSP發送的指令、數據。考慮到RT320240B是大屏幕液晶顯示器,顯示數據采集波形需較快的屏幕刷新速度,這里采用并行數據發送方式,從而在硬件設計上提高液晶屏幕的刷新速度。

        2.1 SED1335控制器

        SED1335型液晶顯示控制器由振蕩器、功能邏輯電路、顯示RAM、管理電路字符庫及其管理電路,以及產生驅動時序的時序發生器組成。振蕩器工作頻率在1~10 MHz范圍內可選。SED1335的顯示RAM具有以下特性:

        (1)文本顯示特性 顯示RAM區專用于文本方式顯示,該顯示RAM區每個字節的數據都認為是字符代碼,SED1335將使用該字符代碼確定字符庫中字符首地址,再將相應字模數據傳送到液晶顯示模塊。在液晶屏上出現該字符的8×8點陣塊即文本顯示RAM的一個字節對應顯示屏上的8×8點陣。

        (2)圖形顯示特性顯示RAM區專用于圖形方式顯示,該顯示RAM區每個字節的數據直接被送到液晶顯示模塊上,每個位的電平狀態決定顯示屏上一個點的顯示狀態,1為顯示,0為不顯示。所以圖形顯示RAM的一個字節對應顯示屏上的8×1點陣。

        (3)字符發生器SED1335管理內存字符發生器CGROM,該字符發生器固化160種5×7點陣字符的字模SED1335,由于SED1335僅能處理8位字符代碼,所以一次最多只能顯示及建立256種字符并在SED1335的字符表中給出內部字符發生器的全部內容,同時給出外擴字符發生器的字符代碼范圍80H~9FH和E0H~FFH,共64種。

        2.2 液晶屏顯示硬件電路設計

        考慮到SED1335控制器的特點以及顯示波形對速度的要求,應用并行數據總線的方法。而DSP2812的外擴數據總線剛好符合并行傳輸數據需要。I/O數據緩沖接口A0選用外擴地址總線的最低位地址總線A0,通過XINTF,將指令碼寫入“*******1”的外擴地址中,并將數據寫入“*******1”的外擴地址中,因此巧妙方便地解決了A0端口的設定,同時為編程帶來方便。基于上述考慮進行設計,液晶屏的硬件連接電路如圖1所示。

        2.3 液晶屏顯示軟件設計

        液晶屏顯示功能是通過向指定的內存區域進行寫操作來實現的。通過讀指令讀取顯示緩存區中的內容,并與寫入數據相比較,就可有效地檢測顯示器緩存區RAM功能,結合各種SED1335控制器所提供的指令,全面檢測液晶顯示器。

        結合DSP自身特點所設計的系統硬件電路,在編寫軟件程序時首先要定義數據段LCDCMD、LCDDATA,并在主程序中進行說明:

        #pragma DATA_SECTION(LCDCMD,“LCD_CMDFile”)

        #pragma DATA_SECTION(LCDDATA,“LCD_DATAFile”)

        然后在CMD中為這兩個數據段分配地址:

        LCD DATA:origin=0x0080000,length=0x00001

        LCD CMD:origin=0x0080001,length=0x00001


        圖2為液晶屏顯示軟件設計流程。

        尺寸相同的普通串口液晶刷屏速度一般為2~3 s,利用并口外擴數據總線設計方法可將刷屏速度提高到0.5 s,符合設計要求,若采用匯編語言開發該設計,刷屏速度將更快。

        3 PS/2鍵盤功能的實現

        3.1 PS/2接口簡介

        本設計采用帶有PS/2接口的掃描式鍵盤。PS/2接口鍵盤遵循雙向同步串行協議,但主機在總線上總是具有優先權,只需將時鐘拉低就可在任何時候抑制來自鍵盤的通訊。物理PS/2接口是兩類連接器中的一種,5引腳的DIN或6引腳的mini-DIN,目前常用的連接器為mini-DIN6引腳插頭,17鍵小鍵盤也是該連接器。

        3.2 PS/2接口硬件電路設計

        PS/2接口只需2根數據線,連接簡單,圖3為PS/2接口硬件連接電路。

        3.3 PS/2接口鍵盤軟件設計

        DSP處理器監控按鍵矩陣,若發現有按鍵被按下釋放或按住,將發送掃描碼信息包到計算機。其中,掃描碼有通碼和斷碼兩種類型。當按下或按住按鍵時,發送通碼;當釋放按鍵時,則發送斷碼。每個按鍵分配有唯一的通碼和斷碼,則主機可通過查找唯一的掃描碼測定具體的按鍵。鍵盤上的每個按鍵的通斷碼組成掃描碼集,PS/2接口鍵盤默認使用第二套掃描碼。

        鍵盤遵循一種每幀包含11位的串行協議,這些位分別為:1個起始位,總為0;8個數據位,低位在前;1個校驗位,奇校驗;1個停止位,總為1。為了減小系統開銷,該設計采用中斷方式,在中斷程序中檢測掃描碼,其部分程序代碼如下:


        為減小誤碼率,在判斷通碼后再檢測斷碼,使得DSP處理器獲得更準確的判斷。

        4 結論

        本文介紹一種以DSP為核心的嵌入式人機接口設計,經實踐證明,該設計方案簡沽實用,用途廣泛。基于該系統設計思路,根據實際需要和處理器特點會有多種設計方案,并結合BIOS系統的開發將使多任務間的調度更方便。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 涡阳县| 德清县| 依兰县| 汉沽区| 宁陕县| 迁西县| 宁阳县| 新泰市| 海林市| 河池市| 汉川市| 武平县| 垣曲县| 湖州市| 武威市| 泉州市| 陵水| 常熟市| 五原县| 永嘉县| 尼勒克县| 荣成市| 册亨县| 屏东市| 嵊泗县| 江北区| 深泽县| 江源县| 抚松县| 连江县| 黄浦区| 黎平县| 丁青县| 云阳县| 金塔县| 淅川县| 安溪县| 临漳县| 马尔康县| 贞丰县| 乌拉特后旗|