1概述
電子紙顯示屏是一種全新顯示屏,具有功耗低、閱讀舒適等優(yōu)點。作為一種新型顯示屏技術,電子紙顯示屏催生了眾多創(chuàng)新性移動應用,比如電子書、電子報紙、電子顯示牌等。S1D13521是Epson公司和EInk公司2008年聯合推出的一款電子紙顯示控制器,具有多種全新特性,為EInk電子紙顯示屏提供了強大的技術支持。如何充分利用S1D13521的特性,為新一代電子紙顯示屏提供更佳的人機交互體驗已成為一個有待研究與解決的問題。本文以津科V30型手持閱讀器為實例,介紹一些實際開發(fā)中的設計經驗和實現技術。
2S1D13521及開發(fā)平臺
2.1S1D13521簡介
S1D13521提供多種主機處理功能,極大地減輕了主機負載,提升了系統(tǒng)整體性能;支持2048×1536的分辨率(50Hz),最大支持409096分辨率(低于50Hz),支持32灰度級顯示;支持多區(qū)域并行顯示刷新,提高了電子紙顯示屏的響應速度。使用這種控制器,電子紙顯示屏最多可同時執(zhí)行16個區(qū)域的局部擦寫。顯示屏響應速度的大幅提升使觸摸屏式的用戶交互方式成為可能,并帶來響應式手寫筆輸入、下拉菜單等一系列新的應用。這一技術為提升電子紙用戶界面體驗提供了強大支持。
S1D13521系統(tǒng)結構如圖1所示。S1D13521顯示控制器在主機與電子紙顯示屏之間,用于控制電子紙的顯示刷新。
2.2S1D13521顯示控制原理
電子紙顯示屏具有獨特的顯示刷新機制。不同于CRT和TFT等顯示屏的動態(tài)主動刷新方式,電子紙顯示屏只有當數據更新時才會刷新,相對而言是一種靜態(tài)被動刷新。
基于電子紙顯示屏這種特性,S1D13521主要向上層提供2種功能,即貼圖和刷屏。貼圖功能是把內存中的一塊區(qū)域復制到顯存中;刷屏功能是把顯存中的一塊區(qū)域刷新到電子紙顯示屏。刷屏分為全屏幕刷新和部分矩形區(qū)域的塊刷新。塊刷又可分為多級灰度塊刷和黑白兩級塊刷,其中黑白兩級塊刷具有更高的響應速度。
2.3開發(fā)平臺簡介
本文的開發(fā)平臺使用津科V30型手持閱讀器。該設備采用S1D13521顯示控制器,配置6英寸EInk電子紙顯示屏,分辨率為600×800。本文程序運行于應用程序層,經底層驅動封裝的S1D13521編程接口如下:
3電子紙人機交互設計
3.1電子紙人機交互結構模型
S1D13521大幅度提升了電子紙的響應速度,從而加速了顯示屏對用戶操作的反饋,使動態(tài)的視覺反饋效果成為可能?;谶@種特性與優(yōu)勢,本文設計了一種控制-反饋人機交互結構模型,如圖2所示。
模型中最核心的兩部分是動態(tài)視覺反饋和觸摸屏輸入。通過簡單的觸摸屏操作手勢,用戶可以方便直觀地操控設備;系統(tǒng)根據觸摸屏輸入及時給出動態(tài)視覺反饋,以指導用戶操控;當用戶得到反饋信息,隨即根據感官獲取而改變操控動作。這就是一個控制-反饋的循環(huán)過程,這一動態(tài)交互過程極大地提升了用戶交互體驗。
3.2操控手勢及界面布局
基于上述模型,本文針對津科V30型手持閱讀器設計了7種基本操控手勢,并以此為基礎設計了合理界面布局,如圖3所示。
這種設計可以通過幾種簡單的操控手勢實現所有閱讀器的基本功能,很好地遵循了人機交互設計的一致性和界面簡潔性原則;同時,通過動態(tài)視覺反饋給予用戶及時響應,從而實現整個交互功能。
4電子紙人機交互實現
在電子紙人機交互的實現中,充分利用S1D13521的特性,對各種操作及時產生動態(tài)視覺反饋,可達到直觀、易用的人機交互效果。
4.1簡單動態(tài)反饋的實現
動態(tài)反饋的實現依賴于顯示器快速刷屏響應,而S1D13521的一個重要特性就是可以加速塊刷。相對于傳統(tǒng)800ms的塊刷時間,S1D13521可以把黑白兩級塊刷時間降為300ms。充分利用這一特性,可實現多種簡單動態(tài)反饋效果。
實現的一般過程是,首先計算每一幀顯示屏變化區(qū)域大小,然后調用快速塊刷函數GrFastPartialPrint完成對變化區(qū)域的顯示刷新,這樣就能以3幀/s的速率實現動態(tài)效果。這一技術的關鍵是計算合適的塊刷區(qū)域,從而保證有效的刷屏速度。
津科V30型閱讀器人機交互的翻轉、退出、撤銷3種操作就是使用這一技術實現的。這里以退出操作的卷簾效果為例說明。退出操作是從閱讀狀態(tài)返回書架,當用戶從屏幕上方下向下劃動,書架隨之以卷簾效果展開。圖4展示了書架的卷簾效果及顯示刷新過程。其中,框出區(qū)域為每幀塊刷區(qū)域。
4.2即時響應動態(tài)交互的實現
為了增強人機交互的易用性和趣味性,需要進一步設計即時響應的動態(tài)反饋效果。這就要求,在使用快速塊刷技術的基礎上,綜合運用幾種針對電子紙的實現技巧。
4.2.1效果展示
津科V30型閱讀器人機交互的翻頁、跳頁操作就是即時響應的動態(tài)交互。這里以翻頁操作為例。圖5展示了翻頁操作,以三角形簡單模擬翻起的頁角,同時在翻起的區(qū)域顯示下一頁部分內容,翻起頁角隨用戶觸摸移動而變化,視覺即時響應觸覺。
4.2.2實現技術
(1)即時響應的實現技術
用戶觸摸移動會觸發(fā)MouseMove事件。即時響應要求對觸發(fā)事件作及時處理,而電子紙塊刷時間是300ms,其刷新速率無法跟上事件觸發(fā)速度,所以即時響應實現的一個很重要策略是舍棄一部分MouseMove事件。每次在OnMouseMove事件處理函數中,刷屏后調用DropMouseEvent函數,從而在本次處理之后舍棄一小部分觸發(fā)事件。DropMouseEvent函數實現如下:
因為舍棄事件的速度大于用戶觸發(fā)事件的速度,所以舍棄一些MouseMove事件后隊列變空,之后會再次響應用戶動作。
(2)高頻刷屏中的填充處理
在即時響應的高頻刷屏中,容易出現滯留現象,即會有上一幀的殘留。尤其是翻頁動畫中存在填充區(qū)域,這種現象非常明顯。這是由于電子紙的刷屏特性導致的,電子紙的像素在由黑(白)反白(黑)時,耗時長且易出現刷屏殘留。
基于這一原理,可以在填充時采用固定格式的隔像素填充技術。具體做法是,每4個像素為固定一組,左上角填黑,其他3個像素填白。這樣,從整體看呈現了隔行隔列填充的效果。從局部看,排列是固定的,當填充區(qū)域變化時減少了由黑(白)反白(黑)的像素個數,基本可以去除殘留現象,也起到了加速的作用。具體實現采用查表技術,每填充一個像素之前,調用GetPointColor函數查表判斷是否填充該像素。GetPointColor(intx,inty)函數實現如下:
4.316通道技術的應用
16通道技術是S1D13521的另一個重要特性。其原理是當多塊不重疊區(qū)域連續(xù)塊刷時,S1D13521可以提供16個并行通道,使每個塊刷時間降為300/16ms。充分利用這一技術,可以實現更為流暢的動態(tài)效果。
以百葉窗動畫為例說明16通道技術的使用。還是調用GrFastPartialPrint函數,當連續(xù)塊刷的區(qū)域均不重疊時,SlD13521會自動開啟16通道。百葉窗的實現是把整屏圖分為m塊,每一塊分為n條,按一定次序依次顯示其中一條區(qū)域。程序實現如下:
需注意,塊刷區(qū)域長寬必須是4的倍數,才能正確使用16通道。否則,S1D13521會認為區(qū)域有重疊,把多個區(qū)域一起刷出,無法顯示動畫效果。
4.4實現結果
通過使用上述技術,在津科V30型閱讀器上實現了各種操控手勢的動態(tài)交互,實現了所有基本閱讀功能人機交互。撤銷操作類似于退出操作,也是以卷簾效果動態(tài)反饋。跳頁操作是拖拽出若干條等間隔區(qū)域,表示當前文件頁號列表,并在頂角處標以頁號,當前頁用黑色區(qū)域標記。翻轉操作是在屏幕中間以小圖標轉動響應用戶動作。
結語
與傳統(tǒng)的電子紙用戶界面相比,基于S1D13521顯示控制器的電子紙人機交互更具人性化,更為易用。作為新一代顯示控制器,S1D13521的強大功能還有待進一步挖掘,以推動新一代電子紙顯示屏的發(fā)展與應用。