資料介紹
此次PSoC 6先鋒套件的評測,其實還了作者自己的一個心愿,那就是對EInk屏幕的原理與驅動代碼進行一個深入的分析。
作為9年前就開始使用電紙書進行閱讀的本文作者,一直沒有抽出時間與精力來對它的原理進行了解確實有點小小遺憾。希望本文能給有需要的朋友能帶來一點知識和閱讀的興趣。Happy Reading and Happy Coding!
概覽
先來兩張效果圖:
圖 使用PSoC 6來驅動EInk圖 使用另外一款開發(fā)板驅動EInk
近幾年來,有感于中國人讀書的數(shù)量較其他國家少(比如日本,德國等發(fā)達國家),不管是國家還是地方政府相繼推出了不少倡導讀書的活動:如"讀書年","讀書月","全民閱讀"等等。不過起到的效果如何還是要看個人的自身覺悟情況,歸根結底閱讀還是屬于個人行為。
就作者本人的體會來講,從小是很喜歡讀書,甚至到了干擾正常學習工作的程度。但是自從有了個人電腦,智能手機,讀書時間便直線下降。因為電子版本的資源比起紙質版本的更加及時也更加豐富,導致本人有很長一段時間就沒有摸過書,相信這也是我們這一代人共同的體驗。真正讓本人重拾書本認真閱讀的就是電紙書這個技術。
2011年本人買了第一個電紙書,從此收不住了。到目前為止,作者擁有6,7個電紙書,不同的電紙書存放不同的書籍種類,如有的放小說,有的放政治歷史,有的放外文,有的放時事等等。電紙書閱讀給本人的體驗就是看起來很舒服,如果配上了均勻的背光,看起來比真正的紙質書還要賞心悅目。當然這是本人的一家之言,也有人認為還是紙質的書好。不論如何,把電紙書技術列作本時代最偉大的發(fā)明之一不為過。
本文的主題就是評測Cypress PSoC 6 Pioneer Kit 配套的EInk模塊。該模塊是Cypress組裝的,核心器件由龍亭新技生產(chǎn),分辨率是264x176,顯示密度是117dpi。由于PSoC 6雙核,高性能,低功耗的特點,使得其非常適合驅動這種顯示器件。當然在探究了其原理之后,后面將嘗試移植驅動代碼到其他器件上以驗證這個學習過程。
需要指出的是,EInk模塊不僅僅可以用作電紙書的面板,事實上目前業(yè)內(nèi)應用的不少器件都可以使用EIink來替代以降低功耗。比如很多監(jiān)控儀器的參數(shù)顯示面板,如果使用LCD/OLED這種技術,電源不能停,但是其顯示更新的頻率其實很低,如每天更新只有幾次甚至幾天一次。如果換成僅僅更新需要電源,維持內(nèi)容不需要電源的EInk,不僅功耗可大大降低,穩(wěn)定性也會大大增強。
EInk硬件
先將CY8CKIT-028-EPD原理圖的幾個部分分別貼出來。
圖 外部接口
按照Arduino接口來分布的,除了I2C是其他外設,其余引腳是EInk模塊控制信號。除了SPI的4根線之外,還有電源控制,邊界控制,放電控制,復位信號,狀態(tài)信號。
圖 電平轉換
EINK模塊可以被不同的主控板控制,VCC/VDD電壓范圍2.3v~3.6v,通過電平轉換來進行電壓匹配。
圖 電源控制
因為維持顯示內(nèi)容不需要電源,所以不更新內(nèi)容時,可以把COG 驅動power off當需要更新顯示內(nèi)容時,再把COG驅動power on。這對于其他技術的顯示器來說是巨大的功耗節(jié)省。
圖 Border控制
邊界控制:當進行電子墨水顆粒處理的時候用來保持邊框清晰度的一種控制信號,利用時序控制引腳來控制此信號。
圖 Discharge控制
放電控制就是在更新完畢后,將EInk驅動的電容上的電荷放掉以進一步減少功耗。
圖 核心模塊
上圖是EINK模塊的顯示原理圖,也就是最終的顯示面板。除了Border信號之外,其余信號跟一般的顯示器也差不多。這是因為這個驅動器本身也有COG控制IC以簡化外圍驅動軟硬件設計。
Cypress的這個模塊除了EInk之外還有其他幾個器件:Motion傳感器,熱敏電阻與PDM接口的麥克風。這些器件與PSoC 6的配合也是值得一寫的,權且放在后面的文章中介紹,此文對它們暫且不題。
驅動方式
如何控制這個顯示器,也就是如何控制其內(nèi)置COG (Chip On Glass) 驅動控制IC,新亭原廠提供了驅動例程。大致順序是先將內(nèi)容放到COG控制IC的內(nèi)存(這個內(nèi)存(memory)可以是圖像buffer,SRAM或者Flash)中,接著給COG驅動上電并且初始化COG驅動,然后按照特定的顯示數(shù)據(jù)格式將存儲在IC內(nèi)存中的內(nèi)容發(fā)送到EPD(E-Paper Dispaly)顯示。更新EPD顯示內(nèi)容的三種方式:
●4步;
●2 步;
●部分更新。
其中4步更新是最耗時的,但是顯示效果也最好(殘影少)。2步更新是省去了其中兩步,部分更新就是省去了大多數(shù)操作。如果原來顯示的內(nèi)容與新內(nèi)容相差過大,則需要用4步更新,否則酌情減少步驟。當然所需要的更新時間與顯示效果是一個Trade-Off關系,需要程序員折中處理。
一般的電紙書應用這樣做的:第一次顯示某本書使用4步更新,之后每頁紙進行部分更新,若干頁后進行2步更新,過了更長的階段后再進行一次4步更新。對于4步更新,過程是這樣的:
圖 4步更新
注意因為這樣的更新方式,所以每次顯示都需要保持上次的內(nèi)容以作取反之用。2步更新法就是省去了取反的過程,部分更新法則是直接顯示新內(nèi)容。本文所使用的顯示器是264x176的點陣,無灰階,則每個Frame的顯存為:
264 * 176 = 46464 Bits / 8 = 5808 Bytes
EPD更新顯示內(nèi)容方式的介紹應該是建立在存儲在同一內(nèi)存的兩幀數(shù)據(jù),之前顯示內(nèi)容變更為新的顯示內(nèi)容(Previous Display-> New Dispaly)之上。所以需要兩個Frame,那么顯存就是10KB以上了,另外驅動的過程中也需要19KB以上的中間緩存,為什么需要兩個Frame呢?故此在選用主控芯片時需要考慮到顯存的尺寸。EPD驅動流程圖如下:
圖 流程圖
EPD更新周期內(nèi)的信號控制圖:
圖 信號波形
使用PSoC 6驅動EInk
如上文所述,EInk的特點是保持顯示內(nèi)容不需要電源,但是更新顯示內(nèi)容時,不停地需要處理器來做控制與查詢。這種任務比較適合于低功耗的內(nèi)核,比如PSoC 6中的Cortex M0 內(nèi)核,此例中Cortex M4沒有用武之處,所以干脆就沒有使能。頂層設計圖:
圖 頂層設計
包括SPI口為通信口,定時器用來產(chǎn)生1ms的定時Tick,其余幾個IO口為通用IO。
圖 SPI模組配置圖 更新定時器配置
這個定時器的主要作用是提供1ms的Tick計時,實際上任何可以提供1ms的tick的定時器都可以用,比如內(nèi)核中的SysTick,這里只是為了展示如何配制通用定時器。
至于要顯示的資源與內(nèi)容,因為該顯示器的點陣與內(nèi)存的對應是逐行對應,所以取模時使用橫行取模,字節(jié)正序即可。CYPRESS提供的EINK例程中支持兩種大小字體,分別是CY_EINK_FONT_8X12BLACK和
CY_EINK_FONT_16X16BLACK。當然更高階的玩家可以使用取模工具支持更多字體開發(fā)。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 單IC增益模塊提供?到6的精密增益資料下載
- 詳細分析三極管的電平轉換及驅動電路資料下載
- 探討MCU和可編程片上系統(tǒng)(PSoC)在手機與平板電腦應用中的作用資料下載
- 一文讀懂:LoRa模塊使用原理資料下載
- MCU和PSoC在手機應用中的作用資料下載
- 時序分析是FPGA如何設計?資料下載
- Cortex-M3(M0)匯編-啟動代碼分析資料下載
- PCB設計6問6答資料下載
- PSoC 6 Pioneer Kit 評測:電流檢測功能資料下載
- 常用USB設備結構分析資料下載
- 關于PC板卡供電模塊的二三事資料下載
- PSoC 6 Pioneer Kit 評測:PSoC中的BLE開發(fā)資料下載
- PSoC 6 Pioneer Kit 評測:溫濕度傳感器體驗資料下載
- PSoC 6使用PSoC Creator調(diào)試時不能使用sprintf輸出float的解決辦法資料下載
- PSoC開發(fā)流程和一般MCU開發(fā)流程有什么區(qū)別?資料下載
- 什么是可編程片上系統(tǒng)?PSOC和FPGA的區(qū)別 913次閱讀
- 玩轉PSoC 6 RTT積木式開發(fā)套件,實現(xiàn)毫米波雷達等實用功能 690次閱讀
- 代碼結構分析 3473次閱讀
- 代碼文件中的常見資料類問題 833次閱讀
- DeepStream智能分析套件的安裝方法 1556次閱讀
- AbsInt代碼安全性能分析套件產(chǎn)品介紹 1355次閱讀
- 基于CY8C24894 PSoC的超聲波測距系統(tǒng)解決方案 3156次閱讀
- digilentPmod專用線套件(6)介紹 1170次閱讀
- PSoC 6高性能超低功耗IoT應用方案 4238次閱讀
- PSoC到底是什么?淺談PSoC的發(fā)展 1.6w次閱讀
- 基于PSoC4 的無刷直流電機控制系統(tǒng)設計及實例分析 3662次閱讀
- mpu6050六軸傳感器模塊驅動程序源代碼分享 3.6w次閱讀
- 基于PSoC 4的無傳感器BLDC控制 2741次閱讀
- 基于PSoC的精簡LED點陣系統(tǒng)設計方案 1136次閱讀
- PSoC3內(nèi)部模擬布線和管腳選擇 2182次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發(fā)板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多