新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于32位微處理器的液晶顯示系統設計

        基于32位微處理器的液晶顯示系統設計

        作者: 時間:2013-12-05 來源:網絡 收藏

        1 引言

        近年來隨著低成本高性能的出現,越來越多的工程設計人員把目光投向32位嵌入式產品的開發中。目前arm系列在低功耗移動通信設備方面占有絕對優勢;Motorola的MC683xx系列和Cold Fire系列主要用于工控、智能化儀表和汽車電子等領域;SoC技術是系統開發越來越傾向于32位CPU為核心,日益顯示出其巨大的優越性。顯示器件是嵌入式系統進行人機交互的重要設備,液晶顯示器具有體積小、微功耗、低輻射、性能可靠等優點,已經成為工程技術人員進行系統設計的首選。但目前常用的多種液晶顯示控制器還僅是基于8位總線并且管理顯示存儲器空間較小,在系統有大量高速實時數據的情況下就有些吃力, “顯示瓶頸”有待解決。對此本文提出了一種基于16位總線的大規模點陣圖形液晶顯示控制器SED1353和32位微處理器相結合的,有效地解決上述問題。

        2 SED1353圖形液晶顯示控制器簡介及其接口原理

        SED1353圖形液晶顯示控制器作為計算機系統控制液晶顯示模塊的專用芯片,具有8 位/16位計算機總線接口;內置調色板,最大支持256 種色彩或16 級灰度的液晶顯示屏;具有管理128KB顯示存儲器空間的能力,可支持最大分辨率為1024×1024點陣液晶顯示模塊,提供了比較寬的應用領域。

        SED1353 是一種可以由微處理器管理顯示存儲器的液晶顯示控制芯片,即微處理器可以采用訪問外部存儲器的方法直接對顯示存儲器和它的16個內部寄存器進行設置讀取。相比由控制器管理顯示存儲器方式的液晶顯示控制器(典型芯片如SED1335) ,SED1353的優點是顯而易見的,它不需要反復寫指令再寫數據完成對顯示存儲器和內部寄存器的管理,控制效率大為提高。由于要分配一定地址空間給顯示存儲器,SED1353控制器的缺點是占系統資源比較多。微處理器在訪問SED1353的內部寄存器時,地址總線分為三部分:A15~A10組合作為寄存器片選信號I/ OCS ;A9~A4作為基地址且需要與上電時的VD12~VD7比較,相等才進行內部譯碼選通寄存器;A3~A0作為16個寄存器AUX[ 0~ F ]的地址。微處理器訪問顯示存儲器時,地址總線分為兩部分:A19~A17高位地址對應顯示存儲器的128KB地址空間,與VD15~VD13設置相等才內部譯碼選通顯示存儲器;A16 等地址線組合作為顯示存儲器片選信號MEMCS # ,以對顯示存儲器單元進行操作。

        3  硬件系統設計

        3.1 與SED1353的接口電路設計

        通過地址總線、數據總線,/CS8片選信號、數據傳輸寬度信號SIZ0 、A0及讀寫控制R/W, 外圍器件接口應答信號/DSACK1 ,同SED1353進行異步數據傳送。SED1353的I/O地址空間分配為$200000~$23FFFF。其中SED1353的16 個8位寄存器地址為$200000~$20000F ;顯示存儲器占用128KB地址空間,即$220000 ~$23FFFF。

        /CS8 允許的地址空間塊大小設置為256KB , 起始地址$200000。/DSACD1指明外部外圍器件寬度為16 位;可訪問管理/ 用戶級空間;允許進行讀寫訪問。故CS8基址寄存器和選擇寄存器編程為: CSBAR8=$2005 ;CSOR8=$7BF0。與SED1353 的接口電路如圖1 所示。圖1還給出了SED1353與液晶屏LM64P83L 的接口電路。SED1353通過顯示存儲器的數據總線VD15~VD0 的復位上電設置自己的I/ O 地址。設數值1 表示該端接一個10kΩ 電阻上拉至高電平,0 表示不接上拉電阻, x 表示任意。故設置VD15 ~VD13 = 001 ;VD12~VD4=000000xxx ;其中VD3~VD0 =1 ,表示16位數據總線、直接訪問方式、M68000 時序及總線高低字節交換。

        3.2 地址譯碼GAL 的設計

        當MC68332 的字或長字數據傳送到SED1353的I/O偶數地址(受對準限制)時,需要使BHE# 、AB0/UDS#同時低電平有效。單字節傳輸雖然不受對準限制,但單字節數據傳送到SED1353的I/O奇數地址時(如訪問SED1353內部8位寄存器) ,需要使SED1353的BHE#低電平有效,AB0/UDS#高電平無效;此外,MC68332設置定義的CS8定義的地址空間包括了內部寄存器和顯示存儲器的地址空間,此時還不能將各自的片選信號分開。因此可通過可編程邏輯器件來解決這一問題,GAL將依據下列等式編程:

        IOCS # = ! ( ! CS8 ! A17 ! A16 A15 ! A14 ! A13 ! A12 ! A11 ! A10)
        MEMCS#=CS8  
        BHE#=SIZ0 ! A0

        4 軟件設計

        4.1 MC68332 的硬件初始化程序設計

        MC68332 的復位向量和初始化程序駐留在ROM中,在系統復位后MC68332從異常情況向量表中取出向量后在管理方式下執行初始化程序來定義相關地址、常數及其他參數。首先進行硬件初始化,依次初始化全局寄存器、各模塊和外部設備等。MC68332地址空間的分配如下: 尋址空間的$000000 ~$0FFFFF分配為ROM存儲區, $100000~$13FFFF 為SRAM 存儲區, $200000~$23FFFF為顯示存儲區, $240000~$FFDFFF分配給其他外設(如串行通信模塊的MC68HC681等) 。通過設備BAR 寄存器, 把片上RAM 定位在$FFE000~$FFE7FF。通過設置SIM 模塊的MCR 寄存器,把$FFF000~$FFFFFF 存儲區作為模塊寄存器區。硬件初始化完成后,MC68332通過設置用戶堆棧指針地址USP、狀態寄存器SR以及程序計數器PC將控制權交給應用程序。應用程序一般工作在用戶方式下。本文中使用的液晶屏為SHARP 公司的LM64P83L ,STN單色雙屏結構640 ×480 點陣。限于篇幅,只列出SED1353硬件初始化程序清單。


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 娱乐| 伊宁县| 莱阳市| 上思县| 蒙自县| 温宿县| 天峨县| 杭锦后旗| 称多县| 新乡县| 饶平县| 正宁县| 抚顺市| 资源县| 上林县| 宣威市| 勐海县| 永善县| 金昌市| 香格里拉县| 乌什县| 定日县| 阆中市| 赣州市| 虹口区| 化隆| 上林县| 夏津县| 修水县| 潞城市| 潞西市| 灵宝市| 安阳市| 交口县| 离岛区| 弋阳县| 新巴尔虎左旗| 辽宁省| 伊宁市| 凤庆县| 吉水县|