<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于MSP430F149單片機的人機界面設(shè)計

          基于MSP430F149單片機的人機界面設(shè)計

          作者: 時間:2010-01-11 來源:網(wǎng)絡(luò) 收藏
          0引言
          近年來,隨著電子技術(shù)和集成電路制造工藝的飛速發(fā)展,越來越多的領(lǐng)域應(yīng)用到以為控制核心的現(xiàn)代智能儀器設(shè)備,如果在這些以為核心的控制系統(tǒng)中配上交互界面,通過液晶顯示器和按鍵配合操作可更方便有效地完成各種功能選擇、參數(shù)設(shè)置和分析結(jié)果顯示,采用漢字顯示菜單,界面友好且直觀。隨著液晶顯示技術(shù)的進步,高質(zhì)量的點陣液晶顯示模塊由于具有顯示信息豐富、功耗低、體積小、質(zhì)量小、無輻射以及使用壽命長等優(yōu)點被日趨廣泛地應(yīng)用于各種嵌入式系統(tǒng)中,同時低功耗特性也貫穿于中文界面的設(shè)計始終?,F(xiàn)以電力系統(tǒng)配電變壓器監(jiān)測終端(TTU)的交互部分為例,介紹一種使用OCM12864-3型圖形點陣液晶顯示模塊實現(xiàn)中文窗口菜單界面的方法。 1 系統(tǒng)的硬件結(jié)構(gòu)
          1.1 MSP430F14X微控制器簡介
          MSP430F14X微控制器是德州儀器公司新開發(fā)的一類具16位總線的,它真正的正交16位RISCCPU內(nèi)核,具有16個可單周期全尋址的16位寄存器,僅27條的精簡指令以及7種均采用雙重取數(shù)據(jù)技術(shù)(DDFT)的一致性尋址方式。DDFT技術(shù)利用每個時鐘脈沖對存儲器進行兩次數(shù)據(jù)存取操作,從而不再需要復(fù)雜的時鐘乘法和指令流水線方案。MSP430F14X系列MCU具有豐富的片上外圍模塊,片內(nèi)包括有精密硬件乘法器、多達60KB的FLASH,2KB的RAM、1個看門狗、6個P口(P1和P2還具有中斷功能)、12位A/D轉(zhuǎn)換器、2個16位定時器、高精度比較器、高速的USART通信端口,1個DCO內(nèi)部振蕩器和2個外部時鐘等常用資源,可實現(xiàn)對液晶顯示器的檢測、解調(diào)和顯示。與現(xiàn)代程序設(shè)計技術(shù)以及高級語言(如C語言)結(jié)合使用,使得MSP430的體系結(jié)構(gòu)更加高效,從而在工程技術(shù),特別是PDA產(chǎn)品開發(fā)中得以廣泛應(yīng)用 [1]。
          1.2 OCM12864-3型液晶顯示模塊簡介

          OCM12864是一種128×64點陣(EL背光)的液晶顯示器。它由兩片帶控制器的列驅(qū)動電路KS0108和一片行驅(qū)動電路KS0107組成主要硬件電路,KS0108將控制顯示屏分為左右半屏,通過CS1,CS2選擇。整個屏從上到下64行分為8頁,每列8行頁地址范圍為B8H-BFH,列地址范圍為40H-7FH,數(shù)據(jù)為縱向讀寫,即每頁的第一行對應(yīng)D0,第八行對應(yīng)D7。每個驅(qū)動芯片帶有64×64位(512 B)的RAM緩沖區(qū),其中存儲的數(shù)據(jù)即為被顯示內(nèi)容的點陣信息。通過選擇對應(yīng)的RAM 頁地址和列地址,微控制器可以訪問全部RAM 字節(jié)。顯示RAM 的每一位對應(yīng)顯示屏上的一個點。顯示的實現(xiàn),就是顯示RAM 內(nèi)容中相應(yīng)位為1,該點陣亮,相應(yīng)位為0,該點陣無顯示。對存儲器的讀取是從頭至尾的,但在屏幕上顯示的位置是可以設(shè)置的,通過對顯示起始行的設(shè)定來設(shè)定顯示位置[2]。

          1.3 硬件接口電路
          由于該款液晶顯示屏將接口電路直接引出,因此對于用戶而言,整體設(shè)計大大簡化,只需考慮單片機與接口電路間的連接即可。與OCM12864 的線路連接如圖1所示。該款液晶顯示模塊有13條信號線:(1)DB0一DB7:數(shù)據(jù)總線。(2)CS:片選信號,低電平有效。當(dāng)單片機訪問OCM-12864時,將其置低。(3)RS:數(shù)據(jù)/指令選擇信號,高電平:數(shù)據(jù) D0-D7將送入顯示RAM;低電平:數(shù)據(jù) D0-D7將送入指令寄存器執(zhí)行。(4)R/W:讀 寫選擇信號,高電平:讀數(shù)據(jù);低電平:寫數(shù)據(jù)。 (5)E:讀寫使能信號,高電平有效,下降沿鎖定數(shù)據(jù)。(6)RET:復(fù)位信號,低電平有效[3]。

          本文引用地址:http://www.ex-cimer.com/article/173476.htm


          由于MSP430的I/O口都是復(fù)用端口,因此必須將用到的引腳設(shè)為輸入/輸出口。此外,MSP430是3.3供電,而LCD是5V驅(qū)動的,我們可以在MSP430的輸出口對地接3.6V的嵌位二極管,在保證MSP的端口電壓不超過極限值的前提下,實現(xiàn)MSP430到LCD的電平轉(zhuǎn)換. 2 系統(tǒng)的軟件設(shè)計
          2.1基本驅(qū)動函數(shù)編寫首先使用C語言在頭文件中對OCM12864控制線進行定義,然后編寫LCD驅(qū)動函數(shù),這些函數(shù)包括模塊初始化、寫指令代碼、寫顯示數(shù)據(jù)、讀顯示數(shù)據(jù)、寫菜單項、清屏、清頁等函數(shù)。
          2.2 LCD顯示菜單設(shè)計
          2.2.1菜單 本系統(tǒng)應(yīng)用于無功補償控制器,要求顯示電網(wǎng)三相電壓、電流值,無功功率、有功功率、無功因數(shù),20次的電壓諧波含量,無功補償控制方式自動/手動選擇,參數(shù)設(shè)置等。針對顯示要求把整個系統(tǒng)設(shè)計成多級屏幕(窗口),又設(shè)計成多級主菜單,類似的功能放在一個主菜單菜單項下構(gòu)成子菜單目錄。如果菜單目錄項過多,多屏顯示此菜單目錄。通過分級,使操作人員能很直觀快速找到自己當(dāng)前需要的菜單項,液晶屏菜單界面設(shè)置如圖2所示。


          2.2.2建表

          字符或數(shù)字在點陣液晶中的顯示是通過寫相應(yīng)的內(nèi)碼(1點亮,0滅)實現(xiàn)的,結(jié)合整個菜單設(shè)計,需要顯示的文字并不多,可以先做好碼表,把用到的漢字對應(yīng)的內(nèi)碼保存在一個名為HZ_TAB的表中,每個16xl6點陣的字符需要32個byte表示;把要用到的數(shù)字0~9和字母對應(yīng)的16x8點陣內(nèi)碼保存在一個名NUM_JAB的表中,每個需要16個byte表示;把圖片保存在PIC_TAB表中,需要byte數(shù)根據(jù)大小而定。16x16點陣漢字和16x8點陣數(shù)字、字母和任意大小黑白圖片字模數(shù)據(jù)庫可由專門的字模提取軟件提取字模建立。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();