何國(guó)鋒,李月婷,劉宇紅
(貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院,貴陽(yáng) 550025)
?
可穿戴設(shè)備顯示系統(tǒng)的低功耗控制
何國(guó)鋒,李月婷,劉宇紅
(貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院,貴陽(yáng) 550025)
可穿戴設(shè)備的顯示系統(tǒng)往往受其體積和功耗的限制而非常的小巧,近些年來(lái)OLED顯示屏因?yàn)檩^LCD顯示屏有刷新速度快、功耗低的諸多優(yōu)點(diǎn),被廣泛采用在可裝戴設(shè)備中,如智能手表、可穿戴醫(yī)療儀器等。本文采用MSP430F1611低功耗處理器模擬SPI協(xié)議對(duì)OLED顯示屏控制,并采用低功耗技術(shù)處理,實(shí)現(xiàn)了低功耗的可穿戴設(shè)備的顯示系統(tǒng)。
可穿戴設(shè)備;OLED;低功耗;SPI
隨著電子技術(shù)的不斷發(fā)展,可穿戴設(shè)備越來(lái)越受到人們的喜愛(ài)與追求,并逐漸成為生活中的必需品。據(jù)統(tǒng)計(jì),2013年全球可穿戴設(shè)備出貨量在700萬(wàn)件以上[1],特別是從谷歌、三星相繼發(fā)布智能手表,可穿戴設(shè)備在借助互聯(lián)網(wǎng)的東風(fēng)迅速火爆全球市場(chǎng)。在2014年,國(guó)內(nèi)市場(chǎng)規(guī)模更是達(dá)到了22億人民幣,年增長(zhǎng)率在144%[2],而根據(jù)2016年7月20日,OFweek舉辦的“2016可穿戴設(shè)備在線(xiàn)展會(huì)”發(fā)布的統(tǒng)計(jì),2015年全球可穿戴設(shè)備出貨量達(dá)到7 610萬(wàn)部,與2014年的2 890萬(wàn)部相比增長(zhǎng)了163.6%,預(yù)計(jì)2016年年底,可穿戴設(shè)備的出貨量將達(dá)到1.1億部。同時(shí),可穿戴醫(yī)療器械比如可以檢測(cè)血壓、心率、心電、血氧以及其他生理指標(biāo)的可穿戴設(shè)備目前也初見(jiàn)端倪??纱┐髟O(shè)備的體積小,在不可能內(nèi)置太大的電池下,還要保證充足的待機(jī)時(shí)間,因此對(duì)于設(shè)計(jì)有著較高的考驗(yàn)。顯示系統(tǒng)做為占可穿戴設(shè)備耗電比重最大的部分,有必要在兼顧功能的同時(shí),進(jìn)行美觀與低功耗設(shè)計(jì)。
1.1 顯示屏幕選擇
目前常見(jiàn)的顯示設(shè)備有LCD顯示屏和OLED顯示屏,LCD顯示屏在很多智能設(shè)備上已經(jīng)應(yīng)用很長(zhǎng)時(shí)間,一直是手機(jī)等移動(dòng)終端顯示屏的首選,但是近些年來(lái)隨著OLED顯示技術(shù)的出現(xiàn),越來(lái)越多的優(yōu)勢(shì)在很多方面已經(jīng)超越了LCD。OLED顯示屏具有主動(dòng)發(fā)光特點(diǎn),同時(shí)像素細(xì)膩,有多種顏色,外表時(shí)尚美觀,功耗低,刷新速度快,功耗低的諸多優(yōu)點(diǎn)[3],在對(duì)于目前可穿戴設(shè)備對(duì)低功耗的追求中,是一個(gè)非常好的選擇。小米科技發(fā)布了第二代手環(huán),同樣使用了一塊OLED屏,在市場(chǎng)上贏得一陣搶購(gòu)。
基于OLED美觀、省電的特點(diǎn),最終選取OLED作為顯示設(shè)備。
1.2 OLED驅(qū)動(dòng)介紹
本次使用的OLED是由杭州海視方電子科技公司生產(chǎn)的1.3寸OLED模塊,該模塊選取SPI方式進(jìn)行通信,并且將需要用戶(hù)控制的引腳引出,具體信息見(jiàn)表1 。
該模塊包含一塊128×64的OLED顯示屏,采用SSD1306驅(qū)動(dòng)芯片為OLED屏提供驅(qū)動(dòng)。SSD1306是一款專(zhuān)門(mén)為OLED/PLED設(shè)計(jì)的CMOS驅(qū)動(dòng)芯片,包含了128段和64個(gè)公共端,內(nèi)部嵌入了比較控制器、顯存、晶體振蕩器等,使得外部引腳和功耗都得到降低,具有256級(jí)亮度控制,CPU可以通過(guò)硬件來(lái)選擇6 800/8 000并行接口,I2C接口或SPI接口對(duì)SSD1306進(jìn)行數(shù)據(jù)寫(xiě)入控制。SSD1306提供了強(qiáng)大的命令庫(kù),用戶(hù)無(wú)需過(guò)多的了解SSD1306的工作細(xì)節(jié),只需通過(guò)上面任一種協(xié)議對(duì)照命令庫(kù)將命令寫(xiě)入到SSD1306中,即可控制OLED顯示屏顯示數(shù)據(jù)。
表1 OLED模塊引腳功能定義
1.3 OLED模塊初始化
圖1 OLED復(fù)位流程圖
OLED模塊在使用前需要對(duì)其初始化,分別置位SCLK、SDIN、DC、CE、RST引腳,并隨后拉低RST引腳一段時(shí)間再次置位RST,完成模塊的復(fù)位,如圖1所示。
復(fù)位完成之后需要根據(jù)SSD1309數(shù)據(jù)手冊(cè)中的命令表對(duì)OLED模塊進(jìn)行配置,完成關(guān)閉顯示、設(shè)置偏移量、亮度級(jí)、設(shè)置顯示行、清屏、開(kāi)顯示等。所有命令數(shù)據(jù)通過(guò)SPI協(xié)議發(fā)送到OLED模塊驅(qū)動(dòng)芯片的寄存器中。
MSP430是TI公司推出的一款16位,超低功耗芯片、具有精簡(jiǎn)指令集(RISC)的混合信號(hào)處理器(Mixed Signal Processor)[4],內(nèi)部集成了強(qiáng)大的資源模塊,在功耗控制方面達(dá)到μA級(jí),在可穿戴設(shè)備領(lǐng)域一直被廣泛采用。
2.1 SPI協(xié)議模擬
SPI(Serial Peripheral Interface)串行外設(shè)總接口是一種串行同步外設(shè)接口[5],最先由摩托羅拉公司提出用來(lái)解決串行數(shù)據(jù)發(fā)送問(wèn)題。它使用一條串行時(shí)鐘線(xiàn)SCL和兩條串行數(shù)據(jù)線(xiàn)(MOSI和MISO)進(jìn)行數(shù)據(jù)的同時(shí)收發(fā),主要用在FLASH、ADC等外部器件的通信中。SPI時(shí)鐘信號(hào)由主機(jī)產(chǎn)生,主從機(jī)在同一時(shí)鐘信號(hào)上升沿或下降沿通過(guò)MOSI和MISO發(fā)收數(shù)據(jù)。
圖2是SPI協(xié)議時(shí)序的一種簡(jiǎn)單表示,在SCK的作用下,MISO和MOSI上的數(shù)據(jù)以高位在前,低位在后的順序進(jìn)行傳輸,每次傳輸為8位。在嚴(yán)格的SPI協(xié)議中,時(shí)鐘極性和相位都有嚴(yán)格的要求,比如時(shí)鐘在空閑時(shí)為低(時(shí)鐘極性0)還是高(時(shí)鐘極性1),對(duì)于時(shí)鐘相位為0時(shí),數(shù)據(jù)在時(shí)鐘前沿采樣后沿輸出,而時(shí)鐘相位為1時(shí),數(shù)據(jù)在時(shí)鐘前沿輸出后沿采樣。
圖2 SPI協(xié)議簡(jiǎn)略時(shí)序圖
圖3 OLED寫(xiě)入數(shù)據(jù)流程圖
使用SPI對(duì)OLED模塊控制時(shí)需要向SSD1306驅(qū)動(dòng)發(fā)送控制命令和數(shù)據(jù),MSP430F1611作為主機(jī),需要模擬出SCK和MOSI及SDA兩條線(xiàn)總線(xiàn)時(shí)序,最少占用三個(gè)I/O口便可實(shí)現(xiàn)通信,大大減少了MCU端口資源。由于只需要向OLED模塊寫(xiě)數(shù)據(jù),因此完成模擬SPI寫(xiě)數(shù)據(jù),就可以完成對(duì)OLED模塊的各種操作。在向OLED寫(xiě)數(shù)據(jù)前,需要介紹一下OLED模塊的DC位,DC位是控制命令和數(shù)據(jù)寄存器選擇位,當(dāng)DC為0時(shí),OLED模塊內(nèi)的命令寄存器打開(kāi),隨后通過(guò)SPI寫(xiě)入的數(shù)據(jù)將自動(dòng)寫(xiě)入命令寄存器;當(dāng)DC位為1時(shí),OLED模塊內(nèi)的數(shù)據(jù)寄存器被打開(kāi),寫(xiě)入的數(shù)據(jù)自動(dòng)寫(xiě)入數(shù)據(jù)寄存器。圖3為OLED寫(xiě)入數(shù)據(jù)的流程圖。
2.2 控制OLED顯示內(nèi)容
該OLED模塊內(nèi)部沒(méi)有字符庫(kù),顯示漢字、圖片或字符時(shí)需要用到取字模軟件,生成字模數(shù)組。在本設(shè)計(jì)中使用的是PCtoLCD2002完美版,可以在網(wǎng)絡(luò)上方便地下載到該軟件,圖3是字庫(kù)所生成的“你”、“好”兩個(gè)字庫(kù)保存的格式。將生成16×16像素的字庫(kù)存在Chinese數(shù)組變量中,通過(guò)SPI將數(shù)組依次寫(xiě)入,即可完成對(duì)應(yīng)漢字、圖片的顯示。
系統(tǒng)設(shè)計(jì)除了在硬件上選取超低功耗處理器及顯示屏外,在軟件方面需要對(duì)系統(tǒng)進(jìn)行低功耗處理,實(shí)現(xiàn)系統(tǒng)的真正低功耗。圖4為系統(tǒng)低功耗模式轉(zhuǎn)換設(shè)計(jì)圖,起始狀態(tài)系統(tǒng)處于完全工作狀態(tài),即進(jìn)行任何功耗控制,在三角框內(nèi)的按鍵、定時(shí)器、外部信息等條件的作用下,可以切換到OLED睡眠模式和處理器低功耗模式,或者由這兩種模式轉(zhuǎn)回完全工作模式。
圖4 系統(tǒng)低功耗模式轉(zhuǎn)換圖
3.1 OLED顯示屏低功耗處理
顯示屏是可穿戴設(shè)備耗電量最大的模塊,因此對(duì)于OLED顯示器,采取適當(dāng)時(shí)候?qū)⒛K切換到睡眠狀態(tài),以減小功耗。例如在一定時(shí)間內(nèi)無(wú)外部操作、正常待機(jī)等情況下,當(dāng)有外部操作時(shí)再將其喚醒。通過(guò)查看SSD1309芯片命令描述部分,OLED切換到睡眠狀態(tài)可以使用如下代碼命令:
Write_Data(0xAE,CMD);//關(guān)閉OLED顯示
Write_Data(0xA5,CMD);//關(guān)閉顯存
當(dāng)需要點(diǎn)亮OLED時(shí),可以從睡眠狀態(tài)下退出,代碼如下:
Write_Data(0xA4,CMD);//使顯存正常工作
Write_Data(0xAF,CMD);//打開(kāi)OLED顯示
3.2 MSP430低功耗處理
MSP430系列低功耗處理器有5種低功耗模式,分別為L(zhǎng)PM0、LPM1、LPM2、LPM3和LPM4[6]。其中正常工作模式稱(chēng)為AM模式,此時(shí)耗電最多,LPM4模式則最省電,僅為0.1 μA。圖5為T(mén)I公司為MSP430F1611編寫(xiě)的數(shù)據(jù)手冊(cè)里對(duì)各模式對(duì)應(yīng)的耗電量的圖表顯示,可以非常直觀地看出各模式狀態(tài)下芯片的功耗。
圖5 MSP430處理器各模式
處理器在AM狀態(tài)下時(shí)可以進(jìn)入任何低功耗模式,并可以在中斷狀態(tài)下退出當(dāng)前低功耗模式,并返回AM模式。各低功耗模式狀態(tài)由SCG0、SCG1、CPUOFF、OSCOFF4個(gè)位來(lái)配置,其原理是通過(guò)配置選擇合適的時(shí)鐘源作為工作時(shí)鐘,時(shí)鐘頻率越低,則芯片所需的功耗越低。
表2為MSP430F1611數(shù)據(jù)手冊(cè)中提供的各模式下SCG1、SCG0、OSCOFF、CPUOFF配置情況,以及CPU和時(shí)鐘的狀態(tài)。
表2 OLED模塊引腳功能定義
當(dāng)每次顯示完成后,MSP430在不工作的情況下可以進(jìn)入低功耗模式。TI公司為用戶(hù)提供了進(jìn)入低功耗的宏,命名為L(zhǎng)PMx(x為1~4)。其中LPMx宏是被宏定義為_(kāi)BIS_SR(LPMx_Bits),LPMx_Bits就是SCG1、SCG0、OSCOFF、CPUOFF4位的選取狀態(tài)。
設(shè)計(jì)中選用LPM3模式,CPU、MCLK、SMCLK、DCO等都使能,只有ACLK還在活動(dòng),運(yùn)行命令_BIS_SR(LPM3_Bits),此時(shí)進(jìn)入低功耗3模塊,外部I/O、中斷還可運(yùn)行響應(yīng)。
當(dāng)需要顯示時(shí),在定時(shí)器或者外部中斷函數(shù)中退出低功耗模式,如“_BIC_SR(LPM3_Bits)”。
在實(shí)際應(yīng)用中,要想更高效率的節(jié)能,需要對(duì)整個(gè)系統(tǒng)各模塊的工作方式設(shè)置不同的低功耗模式,這是一個(gè)復(fù)雜的邏輯分析問(wèn)題,嚴(yán)格控制功耗,同時(shí)又使其他模塊能夠正常工作。
IAR EW for MSP430專(zhuān)門(mén)用于MSP430處理器開(kāi)發(fā)的一款集成開(kāi)發(fā)環(huán)境,可對(duì)工程進(jìn)行有效管理、編譯、鏈接后生成目標(biāo)文件,并結(jié)合MSP專(zhuān)門(mén)的USB燒錄器進(jìn)行程序下載。
這里選用“貴州大學(xué)”幾個(gè)字生成字模作為中文顯示,也可以通過(guò)字模做出ASCII碼來(lái)顯示,如圖6所示。
圖6 系統(tǒng)顯示圖
在OLED模塊工作時(shí)測(cè)量系統(tǒng)電流,實(shí)驗(yàn)數(shù)據(jù)如表3所列。
表3 實(shí)驗(yàn)結(jié)果
在未作低功耗處理時(shí),整個(gè)系統(tǒng)電流為6.71 mA,低功耗處理后,電流只有2.75 mA左右,降低了3.96 mA。其中MSP430芯片和OLED模塊的功耗分別降低了0.31 mA和3.61 mA左右。此外整個(gè)系統(tǒng)最后功耗仍有2.75 mA的電流,是因?yàn)殚_(kāi)發(fā)板上的發(fā)光二級(jí)管需要2 mA以上的電流驅(qū)動(dòng),電源芯片和分立元件差不多產(chǎn)生了0.53 mA電流,而實(shí)際的功耗不到0.2 mA。在實(shí)際應(yīng)用中,可以去掉發(fā)光二級(jí)管或以呼吸燈的形式應(yīng)用,同時(shí)采用高度集成方案來(lái)設(shè)計(jì)產(chǎn)品電路板,低功耗效果會(huì)更好。
[1] 耿怡,安暉,李揚(yáng),等.可穿戴設(shè)備發(fā)展現(xiàn)狀和前景探析[J].電子科學(xué)與技術(shù),2014,1(2):238-245.
[2] 鄧俊杰,劉紅,陽(yáng)小蘭,等.可穿戴智能設(shè)備的現(xiàn)狀及未來(lái)發(fā)展趨勢(shì)展望[J].黑龍江科技信息,2015(28):135.
[3] 楊虹,鄭曉斌, 彭俊彪,等.OLED驅(qū)動(dòng)器的發(fā)展和應(yīng)用[J].液晶與顯示,2003,18(6):441-443.
[4] 郝建國(guó).MSP430微控制器基礎(chǔ)和應(yīng)用[M].北京:電子工業(yè)出版社,2014.
[5] 張經(jīng)愛(ài),許凱華,劉玉華,等.基于MSP430的模擬SPI串口通信的實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì), 2008,29(5):1169-1171.
[6] 張晞,王德銀,張晨.MSP430系列單片機(jī)實(shí)用C語(yǔ)言程序設(shè)計(jì)[M].北京:人民郵電出版社,2005.
何國(guó)鋒(碩士研究生),主要研究方向?yàn)榍度胧酵ㄐ畔到y(tǒng)、生物醫(yī)學(xué)信號(hào)處理;李月婷(碩士研究生),主要研究方向?yàn)橹悄芸纱┐髟O(shè)備、數(shù)字信號(hào)處理;劉宇紅(教授),主要研究方向?yàn)榍度胧酵ㄐ畔到y(tǒng)、語(yǔ)音信號(hào)與數(shù)字圖像處理。
}
catch (IOException e) {}
}//end if
}// end if
}// end while
try{
readThread = new Thread(this);
readThread.start();//讀取數(shù)據(jù)線(xiàn)程啟動(dòng)
}
catch (Exception e) {}
(4) 通過(guò)Socket和服務(wù)器進(jìn)行交互
上位機(jī)和服務(wù)器通過(guò)Socket協(xié)議進(jìn)行通信,上位機(jī)和服務(wù)器建立對(duì)方的IP和相同接口的Socket,一直對(duì)該接口進(jìn)行查詢(xún),檢查是否有數(shù)據(jù)傳送。
參考文獻(xiàn)
[1] 周?chē)?guó)民.淺議智慧農(nóng)業(yè)[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2009(10):5-7.
[2] 李志剛.大數(shù)據(jù)-大價(jià)值、大機(jī)遇、大變革[M].北京:電子工業(yè)出版社,2012.
[3] 盧闖,彭秀媛,宣鍇,等.物聯(lián)網(wǎng)在設(shè)施農(nóng)業(yè)中的應(yīng)用研究[J].農(nóng)業(yè)網(wǎng)絡(luò)信息,2011(9):10-13.
[4] 李剛.瘋狂Android講義[M].3版.北京:電子工業(yè)出版社,2011.
[5] 李道亮.物聯(lián)網(wǎng)與智慧農(nóng)業(yè)[D].北京:中國(guó)農(nóng)業(yè)大學(xué)信息與電氣工程學(xué)院,2012.
(責(zé)任編輯:薛士然 收稿日期:2016-07-12)
Low-power Control in Wearable Device Display System
He Guofeng,Li Yueting,Liu Yuhong
(College of Big Data and Information Engineering,Guizhou University,Guiyang 550025,China)
Due to the size and power cosumption,the display system of wearable device is often very small.In recent years,the OLED display is widely used in the wearable devices because of its fast refresh speed,low-power consumption and many other advantages,such as the smart watches,the wearable medical instruments,and so on.In order to control OLED display,the MSP430F1611 low-power processor is used to simulate SPI protocol,and a low-power wearable device display system is realized.
wearalbe device;OLED;low-power consumption;SPI
TP368.1
A
?迪娜
2014-07-21)