<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    ARM7的鍵盤與VFD顯示器接口技術

    發布時間:2010-4-25 18:25    發布者:李寬
    關鍵詞: VFD , 技術 , 鍵盤 , 接口 , 顯示器
    引言

    儀表行業以及工業生產過程對實時性、處理速度、智能化等方面有了更高的要求,而ARM微處理器具有功耗低、指令吞吐量高、實時中斷響應、處理器宏單元性價比高等特點,因此,將ARM微處理器引入產品和工業生產的開發設計中已經成為一種必然趨勢。

    在工業控制和產品設計中,一般都要求具有供操作的鍵盤和可視化界面。傳統顯示模塊的設計一般都是采用I/O口外擴驅動電路連接而成,顯示器一般都采用 LEDLCD,要么成本低但實現起來比較復雜,要么實現起來簡單成本卻很高。筆者綜合考慮了成本、實現的難易程度、功能以及穩定性等方面的要求,提出了一種實現起來較容易且具有較高對比度和精度的VFD顯示的方法。

    1 硬件電路的實現

    考慮到未來市場對功耗、處理速度、實時性、多功能、多任務處理等方面會有更高的要求,本設計采用基于周立功公司MiniARM的M2020—FNU20嵌入式核心板(微處理器為LPC2220)及其M22A開發板。M22A開發板的板上資源主要有:

        ◆μC/OS—II實時操作系統;
        ◆TCP/IP協議、FAT32文件管理系統;
        ◆UART、I2C、SPI通信接口;
        ◆JTAG接口支持在線調試;
        ◆工業級10M以太網控制接口CSB900A—IQ;
        ◆2 MB NOR Flash程序存儲器等。

    另外,現代工業控制和產品生產大都需要可供操作的鍵盤以及可視化界面。本設計采用HTl6511芯片驅動鍵盤和顯示?紤]到工業生產中各種不利環境的影響,本設計采用具有較高對比度,且具有很好的可靠性與環境適應性的VFD(真空熒光顯示器)進行顯示。HTl6511是一個典型的VFD驅動芯片,由5個 led輸出口、1個控制電路、1個顯示存儲器(內部)和1個按鍵掃描電路組成。微處理器通過三線串行接口對HTl6511進行串行數據輸入、輸出。圖1是系統硬件電路框圖,主要包括LPC2220與驅動芯片HTl6511的連接。HTl6511與VFD顯示器的連接,使用HTl6511外擴的12×4的按鍵掃描電路以及指示燈和開關電路。



    2 軟件設計

    軟件采用模塊化設計方法,使用基于優先級的系統調度法來實現各個模塊。每個模塊設置為一個任務,如taskO為讀鍵值模塊,taskl為顯示模塊等。給每個模塊設置一個固定的優先級,當任務執行完后自動掛起,掛起的時間長短可以自己設定。任務掛起后進入等待狀態,掛起時間一到,任務自動進入就緒狀態。

    開發板內嵌了μC/0S—II實時操作系統。本設計采用可剝奪型內核。若系統正在執行一個優先級較低的任務,且有一個或多個優先級較高的任務就緒時,優先級較低的任務將被打斷,去執行優先級最高的任務。執行完成后,系統不會馬上返回中斷的地方,而是執行當前就緒任務中具有最高優先級的任務;當沒有更高優先級任務就緒時,系統才返回原來中斷的地方。若程序中某些模塊(如讀鍵值、推顯等)不希望被打斷,就需要在進入該模塊的開始處關閉中斷,執行完后再打開中斷。以下是各個功能模塊的實現。

    2.1 HTl6511的讀/寫程序

    圖2為HTl6511的數據讀/寫時序。其中,tcw為時鐘脈沖寬度,最小值為400 ns;tsu為數據上傳時間,最小值為100 ns;th是數據保持時間,最小值為lOO ns;tcs為時鐘調整時間,最小值為1μs;tph1和tplh都是數據傳遞延遲時間,tph1最大值為300 ns,tplh最大值為100 ns。



    從圖2中可以看出,讀/寫數據時必須置CS為低;寫數據(D1)過程中,在時鐘(CLK)的下降沿往數據線上送數,送完數后需要將CLK置高,且要保持一個tcw的時間;在讀數據時,需要先將CLK置高一段時間,然后再拉低一段時間,才開始從數據線上讀取數據。

    以下程序為向HTl6511寫一個字符:




    2.2 主要驅動程序

    驅動程序主要包括顯示驅動和按鍵驅動。

    圖3為HTl65l1的顯示驅動一般命令時序。圖中,命令1設置顯示模式;命令2設置讀/寫數據模式;命令3設置讀/寫數據的起始地址;數據1到n為需要讀/寫的數據;命令4設置VFD的顯示亮度。



    顯示驅動程序主要包括向HTl6511寫命令和寫控制顯示的數據;而按鍵驅動程序則主要是從HTl6511讀取鍵值,再拼接為有效鍵值。由圖3中時序可知,應先設置顯示模式,然后設置讀/寫數據模式和讀/寫數據的起始地址,再發送數據,最后設置顯示亮度。每發送一個命令或數據之后都需要一段延時。

    顯示驅動程序為:





    結語

    在實際應用中,只需要將HTCS、HTCLK、HTD0、HTDI定義為微處理器的一般雙向I/O口。根據使用的VFD真值表確定顯示數據或字母的字形碼。用一個數組disp口來存儲這些字形碼,并使用上述的update_disp()函數將數組發送到HTl6511驅動芯片,即可完成顯示。對于按鍵掃描,使用read_key()函數已經讀到按鍵值,并放在data寄存器中。

    本設計采用ARM微處理器實現了多功能鍵盤顯示,具有實現容易、性價比高、顯示精度高、顯示對比度高、反應速度快等優點。因此,該設計適用于很多要求較高的工業應用場合。HTl6511的驅動模塊適用于各種類型的微處理器。本設計采用ARM7微處理器來實現,主要是考慮到現代產品和工業過程設計中對功耗、處理速度以及功能的高要求。本設計具有一定的通用性,適應工業生產發展的總趨勢。

    參考文獻

       1. 杜春雷 ARM 體系結構與編程 2003
       2. 何立民 嵌入式系統的實時性問題 [期刊論文] -單片機與嵌入式系統應用2004(9)
       3. 周立功.張華 深入淺出ARM7--LPC213x/214x 2005
       4. Holtek HT16511 1/8 to 1/16 Duty VFD Controller 2004

    作者:西安科技大學 王崇峰  黃夢濤
    來源:單片機與嵌入式系統應用 2009 (1)
    本文地址:http://www.portaltwn.com/thread-10789-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • 我們是Microchip
    • 想要避免發生災難,就用MPLAB SiC電源仿真器!
    • 更佳設計的解決方案——Microchip模擬開發生態系統
    • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
    • 貿澤電子(Mouser)專區

    相關視頻

    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷