国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于MSP430單片機的微功耗中文人機界面設計

發布時間:2009-6-20 14:03    發布者:MSP430
在現代便攜式智能儀器或手持設備中,中文人機界面成為一種事實上的行業標準。能顯示漢字的圖形點陣液晶和可輸入數字的小鍵盤已成為智能設備必不可少的組成部分。同時作為便攜式設備基本要求的低功耗特性也貫穿于中文人機界面的設計始終。
這種低功耗中文人機交互界面需要設計者在選取MCU和具體元器件上有特殊考慮。微功耗、小體積應作為選擇相關器件的首要要求。
設計中,筆者采用MSP430F149單片機作為系統的MCU,通過選擇合適的液晶顯示模塊在3V電平構建了一個低功耗的中文人機界面。此中文人機界面構成了微功耗數據采集系統的重要組成部分。
一、MSP430系列FLASH型單片機的微功耗特點
德州儀器公司(TI)推出的MSP430F14x系列是超低功耗Flash16RISC指令集單片機。它采用馮-紐曼結構,RAMROM和全部外圍模塊都位于同一個地址空間內。其具有豐富的片內外圍,性價比極高。

MSP430F14x
系列是TIMSP430F1x系列(FLASH存儲器型)單片機中功能最強大的子系列。F14x具有更大的程序和數據存儲區、更多的外圍模塊,其片內甚至還包括一個硬件乘法器。同時F14x系列單片機開發工具簡便,固化于FLASH存儲器內的程序易于在線升級和調試,非常適合于開發消費類便攜式電子產品。

MSP430F14x
單片機集中體現了現代單片機先進的低功耗設計理念。其設計結構完全以系統低功耗運行為核心。
這種低功耗結構具體體現在以下四點:
1)高集成度的完全單片化設計。
將很多外圍模塊集成到了MCU芯片中,增大硬件冗余。內部以低功耗、低電壓的原則設計,這樣系統不僅功能強、性能可靠、成本降低,而且便于進一步微型化和便攜化。
2)內部電路可選擇性工作。

F14x
單片機可以通過特殊功能寄存器選擇使用不同的功能電路,即依靠軟件選擇其中不同的外圍功能模塊,對于不使用的模塊使其停止工作,以減少無效功耗。
3)具有高速和低速兩套時鐘。
系統運行頻率越高,電源功耗就會相應增大。為更好地降低功耗,F14x單片機可采用三套獨立的時鐘源:高速的主時鐘、低頻時鐘(如32.768kHz)以及DCO片內時鐘。可在滿足功能需要的情況下按一定比例降低MCU主時鐘頻率,以降低電源功耗。在不需要高速運行的情況下,可選用副時鐘低速運行,進一步降低功耗。通過軟件對特殊功能寄存器賦值可改變CPU的時鐘頻率,或進行主時鐘和副時鐘切換。
4)具有多種節能工作模式。

F14x
單片機具有五種節能模式:LPM0LPM1LPM2LPM3LPM4。這五種模式為其功耗管理提供了極好的性能保證。圖1顯示了活動狀態(AM)與各種節能模式下消耗的實際工作電流大小。





1 F14x的工作模式與工作電流關系




由于MSP430F14x系列是專為超低功耗的便攜式應用開發的。利用先進的集成電路技術和生產工藝,其功耗已經跨越了毫安級,真正進軍到了微安級。
不僅如此,F14x的軟件結構也針對低功耗而設計。如從備用模式喚醒MCU僅需6μS。其中斷和子程序調用無層次限制,這種豐富的中斷能力減少了系統查詢的需要,可以方便地設計出中斷程序結構的控制程序。
利用F14x系列單片機,可以方便地構建一個低電壓的工作平臺。通過各功能模塊的智能運行管理和MCU的節能模式相結合,可以解決運行速度、數據流量與低功耗設計的矛盾,將各功能模塊的電流消耗降至最低狀態,限制活動狀態至最低要求。經過這樣優化,可以實現單片機的極低功耗。如在1MHz工作頻率下,F14x只消耗0.1400μA電流(1.83.6V供電),1.8V供電時,執行時僅消耗160uA的電流,備用時0.1uA,這時RAM中的數據還能有效保持。
概括來說,MSP430F14x單片機具有極低的功耗、強大的處理能力、豐富的片上外圍模塊,方便高效的開發方式。
本系統采用的MSP430F149單片機,F14x系列中功能最強大的一款。它具有一個硬件乘法器、6I/O端口(每個有8I/O口)、1個精確的模擬比較器2個具有捕捉/比較寄存器的定時器、812A/D轉換器、片內看門狗定時器、2個串行通信接口和60KBFlashROM,2KB RAM

F149
還具有強大的擴展功能,其具有48I/O引腳,每個I/O口分別對應輸入、輸出、功能選擇、中斷等多個寄存器,使得功能口和通用I/O口可以復用,大大增強了端口功能和靈活性,提高了對外圍設備的開發能力。

MSP430F149
的以上特點,使其非常適合于構成一個全功能的便攜式單片機應用系統。
二、液晶顯示模塊與接口電路
圖形點陣式液晶可顯示用戶自定義的任意符號和圖形,并可卷動顯示,它作為便攜式單片機系統人機交互界面的重要組成部分被廣泛應用于實時檢測和顯示的儀器儀表中。支持漢字顯示的圖形點陣液晶在現代單片機應用系統中是一種十分常用的顯示設備,漢字BP機、手機上的顯示屏就是圖形點陣液晶。它與行列式小鍵盤組成了現代單片機應用系統中最常用的人機交互界面。

采用圖形點陣式液晶顯示較之其它顯示方式主要有以下優點:
1)工作電壓低、功耗極低。工作電壓35V,工作電流≤10uAcm2,特別適用于便攜式的儀器儀表中。
2)液晶顯示屬被動顯示,受外界光線干擾小。
3)圖形點陣式液晶可顯示的信息量大,分辨率高。
4)不產生電磁干擾。
5)可靠性高。使用壽命長。
在設計中,筆者采用了信利(TRULY)公司的MG-12232液晶顯示模塊。MG-12232模塊供電電壓的典型值為3V,工作電流的典型值為0.3mA,很適合本系統3V電平的低功耗環境。其可顯示范圍為122×32點陣,即能實現所謂的雙排漢顯。MG-12232采用的控制器是兩片SED1520,一片SED1520控制器可以驅動16×80列。SED1520控制器可以在3V邏輯下正常工作,因而避免了與MSP430單片機邏輯電平不匹配的問題。其具體結構框圖見圖2





2 SED1520的引腳定義和結構框圖




SED1520
控制器作為液晶顯示屏與MCU的接口,它直接驅動MG-12232液晶,控制字符、漢字以及圖形的顯示。由于MSP430F149具有48I/O引腳,借助SED1520,可以直接利用MSP430I/O口模擬液晶的讀寫和控制時序。使得MCU對液晶的操作實際上變為MCU對液晶顯示控制器SED1520的操作,因而接口電路的的硬件連接和軟件編程都簡單了很多。
2V5引腳提供MG-12232液晶的對比度電壓,可以通過一個-12V電壓發生電路(如MAX765)產生,經一個100K電位器分壓后即可使用。

MCU
可以通過SED1520的一些控制引腳和13條常用指令來訪問液晶顯示模塊。如RST用于重啟動SED1520,E1E2分別用于使能兩片SED1520R/W控制對SED1520的讀或寫。A0決定此次操作是指令讀寫還是數據讀寫。
一個SED1520顯示控制器能控制80×16點陣液晶的顯示,其顯示RAM16,2,每頁8,每一頁的數據寄存器分別對應液晶屏幕上的8行點。當設置了頁地址和列地址后就確定了顯示RAM中的唯一ピ?F聊簧系拿懇渙卸雜σ桓魷允綬AM的字節內容,且每列最下面一位為MSB,最上面一位為LSB,即該RAM單元字節數據由低位到高位的各個數據位對應于顯示屏上某一列的由高到低的8個數據位。對顯示RAM的一個字節單元賦值就是對當前列的8行(一頁)像素點是否顯示進行控制。
如圖3,MSP430F149單片機的P5口用作與液晶顯示模塊通信的數據口。





3 MSP430F149MG-12232的電路連接示意圖




MG-12232
顯示模塊有多個型號,不同型號都采用相同的SED1520控制器,操作及使用方法完全相同,只是尺寸不同。常用的如MG-12232576×29.1×5.7mm)、MG-12232645.05×22.32×6.3mm)、MG-12232784×44×10mm)等,可以分別用在大小不同的便攜式儀器或設備上。
對液晶顯示模塊還需著重考慮其背光類型,不同的背光類型消耗電流大不相同。一般可選的背光類型有LED(發光二極管)、EL(電致發光燈)以及CCFL型(冷陰極燈管)。EL是一種面發光的冷光源,在結構上可以做得很大很薄,雖然亮度較低,但發光非常均勻而且無光斑,尤其是功耗很低。缺點是需要一個高壓交流電壓來驅動,故需要一個專門的電壓變換電路(如IMP803)。CCFL照明面積更大,適用于需要大面積液晶顯示界面的儀器或設備中。
三、鍵盤接口

MSP430F149
P1P2口除了支持輸入、輸出以外,還支持硬件中斷。P1P2口的8個引腳都有各自的控制寄存器,每個引腳可以單獨控制,并且每個引腳都可以作為中斷源,每一引腳都可以單獨選擇中斷觸發沿,單獨允許中斷。P1P2口各使用一個中斷向量,P1.0P1.7產生同一個中斷,P2.0P2.7也產生同一個中斷。P1P2口的這種結構非常適合實現基于中斷的鍵盤輸入響應程序。
本系統中使用2×2的行列式鍵盤。鍵盤程序采用行掃描法。即P1.0P1.1接兩根列線,列線定義為輸出口,P1.2P1.3接兩根行線,行線定義為輸入口。兩根行線需接10K上拉電阻
基于對系統低功耗要求的考慮,鍵盤輸入響應程序應設計為中斷方式運行的。即有鍵按下時,產生中斷把MCU從休眠狀態喚醒,并啟動定時12ms的定時器,隨后MCU又進入休眠狀態。當定時器產生中斷時再次將MCU從休眠狀態喚醒,此時掃描鍵盤,若有鍵按下,則計算出鍵值,并執行該鍵值對應的功能程序。執行完該程序后,MCU再次進入休眠狀態。
四、漢字顯示的原理與部分程序實例

1
、圖形點陣液晶的漢字字模
與在DOS中顯示漢字不同的是,圖形點陣液晶并不是簡單地用畫點的方式來描出漢字。直接從中文系統漢字字庫中提取的漢字字模并不能直接在液晶上顯示,通常都必須經過格式上的調整和轉換。標準16點陣漢字(如希望漢字的HZK16)字模數據的排列形式如圖4
由于一個SED1520顯示控制器能控制80×16點陣液晶的顯示,其顯示RAM16,2,每頁8行。連續16列相鄰2頁的32字節顯示RAM就可以控制一個漢字的顯示區域(如圖5)。對這些顯示RAM賦以相應值就可以顯示出一個漢字。





4 標準漢字字模排列形式圖5 SED1520漢字字模排列形式




由圖4和圖5所示可見,SED1520圖形點陣液晶顯示控制器漢字字模的排列順序和方式與標準漢字字模完全不同。液晶字模數據可以通過對標準字模數據進行位運算后得到。
實際編程中,具體漢字的液晶字模數據應存放在MSP430F149單片機的FLASH存儲器中。

2
、液晶顯示器初始化流程
在液晶顯示信息之前,必須先對液晶進行初始化。
初始化的流程如下:




需注意,MG-12232模塊內雖然一片SED1520控制器實際控制區域為61,但清除顯示RAM,仍應按80RAM單元清除。

3、部分程序實例
程序是在MSP430單片機的開發平臺IAR Embedded Workbench下采用匯編語言編寫,仿真機采用了TI公司的MSPFET430P410
由于本系統中選用了MSP430F149單片機,對源程序編譯前需對IAR Embeded WorkBench平臺進行以下設置:

A.
點擊Project菜單下的Options…命令進入設置窗口,對左邊Category框內的XLINK選項下的Include頁面進行設置,XCL file name框的內容設置為C:\Program Files\IAR Systems\ew23\430\icc430\msp430F149A.xcl
B.
點擊Project菜單下的Options…命令進入設置窗口,對左邊Category框內的C-SPY選項下的Setup頁面進行設置,Chip Description框的內容設置為C:\Program Files\IAR Systems\ew23\430\cw430\msp430F149.ddf
以下給出了一些常量定義和發送命令字子程序(SEND_COM)、發送數據子程序(SEND_DATA)及液晶狀態查詢子程序(LCD_STE)的源代碼。
#includemsp430x14x.h  
;
程序在液晶上顯示漢字液晶。
;---------
定義LCD的引腳
LCD_RST EQU04H   4.2
LCD_E1  EQU40H   4.6   
LCD_E2  EQU20H   4.5
LCD_RW  EQU    10H   4.4
LCD_A0  EQU08H   4.3
;----------
定義LCD使用的數據寄存器
LCD_PAGE EQU0200h;
定義顯示頁面
LCD_ORDER    EQU0201h;
暫存液晶控制指令
LCD_DATA EQU0202h;
暫存液晶數據
LCD_CNT  EQU0203h;
液晶計數存儲器
LCD_ROW EQU0204h;
存放列地址數據
LCD_LINE EQU0205h;
存放行地址數據
LCD_CHAREQU0206h;
存放當前字符數據的首地址
LCD_BYTECNT  EQU0207h    ;
存放要顯示的字節數
LCD_STATUS    EQU0208h    ;
存放液晶當前狀態的數據
SEND_COM    ;
發送命令字子程序,LCD_ORDER為入口參數
   BIS.B   #LCD_E1,&4OUT;SET E1=1 ,
使能CHIP1
   CALL    #LCD_STE
   BIC.B   #LCD_A0,&4OUT   ;A0=0,SEND OUT INSTRUCTION
   BIC.B   #LCD_RW,&4OUT  ;R/W=0,WRITABLE
   BIS.B   #0FFH,&5DIR ;SET P5 PINS OUTPUT  
   MOV.B   LCD_ORDER,&5OUT   ;SEND ORDER BYTE TO LCD
   BIC.B   #LCD_E1,&P4OUT  ;SET E1=0
   RET
;
發送數據子程序,LCD_DATA為入口參數
SEND_DATA   BIS.B   #LCD_E1,&P4OUT;SET E1=1
   CALL    #LCD_STE
BIS.B   #LCD_A0,&P4OUT ;A0=1,SEND OUT DATA
BIC.B   #LCD_RW,&P4OUT;R/W=0,WRITABLE
BIS.B   #0FFH,&P5DIR    ;SET P5 PINS OUTPUT  
MOV.B   LCD_DATA,&P5OUT  ;SEND DATA BYTE TO LCD
BIC.B   #LCD_E1,&P4OUT;SET E1=0
RET   
;
讀液晶當前狀態的子程序LCD_STE
LCD_STE BIC.B   #LCD_A0,&P4OUT    ;A0=0,SEND OUT INSTRUCTION
    BIS.B   #LCD_RW,&P4OUT    ;R/W=1,READABLE
    BIC.B   #0FFH,&P5DIR   ;SET P5 PINS INPUT  
STE_AGNMOV.B   &P5IN,LCD_STATUS  ;GET STATUS DATA FROM LCD
    BIT.B   #80H,LCD_STATUS;
如狀態存儲器第7位為1,,則等待
    JC STE_AGN
    RET

五、結束語
本系統利用MSP430F149單片機、MG-12232圖形點陣液晶模塊和行列式鍵盤接口構建了基于3V電平的低電壓、微功耗的中文人機界面。實際使用中
本文地址:http://m.qingdxww.cn/thread-2477-1-1.html     【打印本頁】

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

廠商推薦

  • Microchip視頻專區
  • 無線充電基礎知識及應用培訓教程
  • FPGA設計流程培訓教程
  • Chiptorials——如何使用ATECC608 TrustFLEX實現公鑰輪換
  • Chiptorials ——使用ATECC608 TrustFLEX實現基本非對稱身份驗證
  • 貿澤電子(Mouser)專區

相關在線工具

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲91精品麻豆国产系列在线 | 91入口免费网站大全 | 欧美影院在线观看在线观看看 | 成人a毛片 | 在线观看亚洲一区 | 男女做视频网站免费观看 | 国产成人免费片在线观看 | 日韩一级在线播放免费观看 | 精彩视频一区二区三区 | 日本免费无遮挡吸乳视频中文 | 欧美影片一区二区三区 | 国内精品一区视频在线播放 | 欧美日韩国产中文字幕 | 精品区在线观看 | 日本在观线免费观看 | а天堂中文最新版在线官网视频 | 99re6在线视频 | 国产成人综合亚洲一区 | 国产成人精品福利色多多 | 久久99精品久久久久久h | 国产xxxxx免费视频 | 在线免费黄视频 | 亚洲第一区精品日韩在线播放 | 国产小视频在线看 | 国产精品视频在 | 免费5xx| 99re在线观看 | 天天综合日日噜噜噜 | h日本动漫无删减在线观看免 | 我要色综合网 | 福利视频自拍 | 亚洲欧洲精品在线 | 一区二区三区高清视频在线观看 | 在线观看色 | 12至16末成年毛片高清 | 欧美成人全部视频 | 亚洲六月丁香色婷婷综合久久 | 福利一区二区三区视频午夜观看 | 日本高清中文字幕视频在线 | 99久久免费国产精品特黄 | 久热这里只有精品在线 |