<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 關(guān)于A(yíng)RM7的鍵盤(pán)與VFD顯示器接口技術(shù)

關(guān)于A(yíng)RM7的鍵盤(pán)與VFD顯示器接口技術(shù)

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

  儀表行業(yè)以及工業(yè)生產(chǎn)過(guò)程對實(shí)時(shí)性、處理速度、智能化等方面有了更高的要求,而ARM微處理器具有功耗低、指令吞吐量高、實(shí)時(shí)中斷響應、處理器宏單元性?xún)r(jià)比高等特點(diǎn),因此,將ARM微處理器引入產(chǎn)品和工業(yè)生產(chǎn)的開(kāi)發(fā)設計中已經(jīng)成為一種必然趨勢。

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

  1 硬件電路的實(shí)現

  考慮到未來(lái)市場(chǎng)對功耗、處理速度、實(shí)時(shí)性、多功能、多任務(wù)處理等方面會(huì )有更高的要求,本設計采用基于周立功公司MiniARM的M2020—FNU20嵌入式核心板(微處理器為L(cháng)PC2220)及其M22A開(kāi)發(fā)板。M22A開(kāi)發(fā)板的板上資源主要有:

  ◆μC/OS—II實(shí)時(shí)操作系統;

  ◆TCP/IP協(xié)議、FAT32文件管理系統;

  ◆UART、I2C、SPI通信接口;

  ◆JTAG接口支持在線(xiàn)調試;

  ◆工業(yè)級10M以太網(wǎng)控制接口CSB900A—IQ;

  ◆2 MB NOR Flash程序存儲器等。

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


  2 軟件設計

  軟件采用模塊化設計方法,使用基于優(yōu)先級的系統調度法來(lái)實(shí)現各個(gè)模塊。每個(gè)模塊設置為一個(gè)任務(wù),如taskO為讀鍵值模塊,taskl為顯示模塊等。給每個(gè)模塊設置一個(gè)固定的優(yōu)先級,當任務(wù)執行完后自動(dòng)掛起,掛起的時(shí)間長(cháng)短可以自己設定。任務(wù)掛起后進(jìn)入等待狀態(tài),掛起時(shí)間一到,任務(wù)自動(dòng)進(jìn)入就緒狀態(tài)。

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

  2.1 HTl6511的讀/寫(xiě)程序

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


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

tcp/ip相關(guān)文章:tcp/ip是什么



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

關(guān)鍵詞: ARM7 VFD 顯示器接口

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>