新聞中心

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

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

        作者: 時間:2010-01-11 來源:網(wǎng)絡(luò) 收藏
        0引言
        近年來,隨著電子技術(shù)和集成電路制造工藝的飛速發(fā)展,越來越多的領(lǐng)域應(yīng)用到以為控制核心的現(xiàn)代智能儀器設(shè)備,如果在這些以為核心的控制系統(tǒng)中配上交互界面,通過液晶顯示器和按鍵配合操作可更方便有效地完成各種功能選擇、參數(shù)設(shè)置和分析結(jié)果顯示,采用漢字顯示菜單,界面友好且直觀。隨著液晶顯示技術(shù)的進(jìn)步,高質(zhì)量的點(diǎn)陣液晶顯示模塊由于具有顯示信息豐富、功耗低、體積小、質(zhì)量小、無輻射以及使用壽命長等優(yōu)點(diǎn)被日趨廣泛地應(yīng)用于各種嵌入式系統(tǒng)中,同時低功耗特性也貫穿于中文界面的設(shè)計始終。現(xiàn)以電力系統(tǒng)配電變壓器監(jiān)測終端(TTU)的交互部分為例,介紹一種使用OCM12864-3型圖形點(diǎn)陣液晶顯示模塊實(shí)現(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ù)利用每個時鐘脈沖對存儲器進(jìn)行兩次數(shù)據(jù)存取操作,從而不再需要復(fù)雜的時鐘乘法和指令流水線方案。MSP430F14X系列MCU具有豐富的片上外圍模塊,片內(nèi)包括有精密硬件乘法器、多達(dá)60KB的FLASH,2KB的RAM、1個看門狗、6個P口(P1和P2還具有中斷功能)、12位A/D轉(zhuǎn)換器、2個16位定時器、高精度比較器、高速的USART通信端口,1個DCO內(nèi)部振蕩器和2個外部時鐘等常用資源,可實(shí)現(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點(diǎn)陣(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)容的點(diǎn)陣信息。通過選擇對應(yīng)的RAM 頁地址和列地址,微控制器可以訪問全部RAM 字節(jié)。顯示RAM 的每一位對應(yīng)顯示屏上的一個點(diǎn)。顯示的實(shí)現(xiàn),就是顯示RAM 內(nèi)容中相應(yīng)位為1,該點(diǎn)陣亮,相應(yīng)位為0,該點(diǎn)陣無顯示。對存儲器的讀取是從頭至尾的,但在屏幕上顯示的位置是可以設(shè)置的,通過對顯示起始行的設(shè)定來設(shè)定顯示位置[2]。

        1.3 硬件接口電路
        由于該款液晶顯示屏將接口電路直接引出,因此對于用戶而言,整體設(shè)計大大簡化,只需考慮單片機(jī)與接口電路間的連接即可。與OCM12864 的線路連接如圖1所示。該款液晶顯示模塊有13條信號線:(1)DB0一DB7:數(shù)據(jù)總線。(2)CS:片選信號,低電平有效。當(dāng)單片機(jī)訪問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.104case.com/article/173476.htm


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


        2.2.2建表

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


        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 富蕴县| 贡嘎县| 武城县| 芜湖县| 芷江| 乐山市| 丰都县| 建宁县| 论坛| 龙南县| 桂林市| 怀来县| 平潭县| 苍山县| 澄江县| 石林| 锡林浩特市| 桃园县| 乌兰浩特市| 乌拉特中旗| 呼玛县| 高平市| 抚顺市| 高邑县| 庆阳市| 五指山市| 田东县| 商河县| 阿巴嘎旗| 澎湖县| 娄底市| 武平县| 西乌| 长岛县| 四川省| 金秀| 桦南县| 西昌市| 盘锦市| 溧阳市| 华蓥市|