999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Zynq的OLED驅動設計

2014-03-21 10:00:18邢艷芳張延冬
液晶與顯示 2014年2期
關鍵詞:系統設計

邢艷芳,張延冬

(1.中國傳媒大學南廣學院 傳媒技術學院,江蘇 南京211172;2.南京南瑞繼保電氣有限公司,江蘇 南京,211102)

1 引 言

隨著近幾年嵌入式技術的飛速發展和廣泛應用,人機交互成為嵌入式設備的迫切需要。為適應Xilinx最新平臺Zynq的人機交互需要,提出一種基于Zynq的OLED 驅動設計方法。

有 機 發 光 二 極 管(Organic Light-Emitting Diode,OLED)由于同時具備自發光、不需背光源、對比度高、厚度薄、視角廣、反應速度快、可用于撓曲性面板、使用溫度范圍廣、構造及制程較簡單等優異特性,被認為是下一代的平面顯示器新興應用技術[1-3]。

Xilinx最新平臺Zynq將處理器的軟件可編程能力與FPGA 的硬件可編程能力實現完美結合,以低功耗和低成本等系統優勢實現良好的系統性能、靈活性和可擴展性。

文章詳細闡述了基于Zynq的OLED 驅動設計步驟和方法[6],并且在基于Zynq 的開發板ZedBoard上實現了實時顯示字母、數字和點陣圖像,為Zynq在儀器儀表領域實現人機交互提供了技術支撐。

2 OLED 驅動設計流程

Zynq是一個ARM PS+PL 結構,其中PL部分就是傳統意義的FPGA,可以方便地定制相關外設IP,也可以進行相關的算法設計,和使用普通FPGA 完全一樣。如果不使用PL,Zynq的PS部分和普通的ARM 開發一樣。Zynq最大的特點是可以利用PL 部分靈活地定制外設,掛在PS上,而普通的ARM,外設是固定的。因此,Zynq的硬件外設是不固定的,這也是Zynq靈活性的一個表現。OLED 在Zynq 上是連接在PL上,因此需要把OLED 對應引腳掛在PS的硬件上,然后設計OLED IP核[7],再通過SDK 設計驅動程序,OLED 驅動設計流程如圖1所示。

圖1 OLED 驅動設計流程Fig.1 Design flow of OLED driver

ZedBozrd控制OLED 的主要方法是:自行設計一個IP 核,對OLED 的6 個控制信號和電源信號進行邏輯設計和引腳約束,通過AXI總線,把OLED 的IP核和PS聯系起來。在PS部分編寫相應的驅動程序,即可實現對OLED 的控制,如圖2所示。

圖2 OLED 系統設計圖Fig.2 Design diagram of OLED system

因此,要實現OLED 顯示功能,主要做以下幾個方面工作:設計Zynq硬件系統(PS部分)、設計自己的IP核和PS部分驅動程序設計。

3 建立Zynq 硬件系統和OLED IP核

Zynq的開發板ZedBoard上使用Inteltronic/Wisechip 公 司 的 OLED 顯 示 模 組 UG-2832HSWEG04,分辨率為128×32,是一款單色被動式顯示屏,驅動電路采用所羅門科技的SSD1306芯片[8]。具體電路如圖3所示。根據原理圖可知,ZedBoard 開發板使用的OLED 采用SPI方式控制,SPI模式使用的信號線和電源線有如下幾條:

我的老家在沂蒙山腹地,周圍都是連綿的高山。村里修了平整的水泥路,與這里的環境相得益彰。等車子駛進了村子,一股暖洋洋的春風吹過,那久違的熟悉的泥土味道、莊稼的味道、村莊的味道、炊煙的味道直撲鼻翼,如我幼時一樣,讓我聞到了故鄉的味道。我和父親先下了車,我們要抄一條小道走回家,母親只好自己先開車回去。

RST(RES):硬復位OLED;

DC:命令/數據標志(0,讀寫命令;1,讀寫數據);

SCLK:串行時鐘線;

SDIN:串行數據線;

VDD:邏輯電路電源;

VBAT:DC/DC轉換電路電源。

在SPI模式下,每個數據長度均為8 位,在SCLK 的上升沿,數據從SDIN 移入到SSD1306,并且是高位在前的。

圖3 OLED 原理圖Fig.3 OLED scheme diagram

Zynq的硬件系統是指在PL 中配置相關外設,掛載到PS 中,作為PS 部分的外設使用。OLED 驅動主要用到6個IO 口,在生成硬件系統時,只需要利用Xilinx的嵌入式工具XPS生成最小硬件系統,然后把OLED 的相關引腳添加到最小硬件系統中。主要過程如下:

(1)根據芯片型號,根據XPS工具設計流程,生成Zynq的最小硬件系統。

(2)在最小硬件系統中,添加外設IP my_oled,把OLED 的SPI引腳添加到工程中。添加一個6位寄存器,每位和SPI引腳對應。

(3)my_oled IP核邏輯設計主要完成IP核引腳添加、端口映射和用戶邏輯功能。首先要對設計的IP 核添加引腳,在系統生成的MPD 文件中,添加OLED 的相關引腳端口和方向信息。

在MPD 文件中,在PORT 下 添 加OLED 的相關引腳和方向信息,具體代碼如下:

PORT DC="",DIR=O

PORT RES="",DIR=O

PORT SCLK="",DIR=O

PORT SDIN="",DIR=O

PORT VBAT="",DIR=O

PORT VDD="",DIR=O

(4)在系統生成的my_oled.vhd文件中,用VHDL語言進行端口設計,主要進行以下兩個設計。

聲明IP和用戶6個信號和電源的端口。代碼如下:

將用戶端口和IP 核端口進行映射,代碼如下:

(5)在 系 統 生 成 的user_logic.v 文 件 中,用Verilog語言進行邏輯設計,實現寄存器和SPI對應端口連接并實時讀取,主要代碼如下。其中slv_reg0為IP核寄存器,tmp為用戶定義臨時寄存器,tmp的每一位和IP 端口一一對應。實現把slv_reg0寄存器低6位實時傳給tmp寄存器,通過對寄存器slv_reg0的寫操作達到控制6個引腳的時序。

4 OLED 驅動程序設計

由于ZedBoard開發板上的OLED 使用的是SPI協議,并且只支持寫,不支持讀,因此控制OLED 就 是 在SCLK 的 時 鐘 下,通 過SDIN 進 行命令和數據的傳輸。OLED 的控制需要經過初始化、傳數據和命令以及對顯存設置等操作實現[9-10]。

4.1 初始化

驅動IC的初始化代碼,可以參考廠家推薦的設置,但需要根據開發板上OLED 實際參數進行一些修改。

根據SSD1306數據手冊的初始化說明,具體步驟如圖4所示。初始化的實現就是對SSD1306進行寫命令。

按照圖4參數,逐步把命令寫入SSD1306即可實現對SSD1306的初始化。

圖4 SSD1306初始化步驟Fig.4 SSD1306initialization step

4.2 寫數據和命令的實現

在SCLK 時鐘下,根據要寫入的數據或者命令,設置SDIN 引腳的電平,一位一位地把數據寫入SSD1306。SSD1306 每次傳送的命令和數據均為一個字節,傳送數據和命令的區別是通過Set_OLED_DC 宏,設置該函數為寫數據,通過Clr_OLED_DC 宏,設置該函數為寫命令。實現一個字節的數據傳輸代碼如下:

4.3 顯存數據寫入SSD1306存儲器

我們采用的辦法是在PS 的內部建立一個OLED的GRAM(共128個字節),在每次修改的時候,只是修改PS 上的GRAM(實際上就是SRAM),在修改完之后,一次性把PS上的GRAM寫入到OLED的GRAM。具體代碼如下:

void OLED_Refresh_Gram(void)

4.4 顯示結果

系統實現了OLED 的字母、數字和點陣圖形實時顯示,如圖5所示。

圖5 OLED 運行結果Fig.5 OLED’s operation result

5 結 論

系統采用可軟硬件協同設計的Zynq器件,定制硬件IP核,采用傳統ARM 程序設計方法設計OLED 驅動程序和測試程序,實現了實時顯示。解決了基于Zynq器件在廣電儀器和電力儀表儀器中人機交互的工程技術,具有集成度高、可移植性強和通用性好等優點。

[1] 李想,鄭喜鳳,陳宇.基于Linux下的OLED 顯示模塊設計[J].液晶與顯示,2012,27(1):103-107.Li X,Zheng X F,Chen Y.Design of OLED display module based on S3C2440[J].Chinese Journal of Liquid Crystals and Displays,2012,27(1):103-107.(in Chinese)

[2] 劉健,謝文法.OLED 器件光電性能集成測試系統研制[J].液晶與顯示,2013,28(1):132-137.Liu J,Xie W F.Integrated optoelectronic performance test system for OLEDs[J].Chinese Journal of Liquid Crystals and Displays,2013,28(1):132-137.(in Chinese)

[3] 冉峰,何林奇,季淵.無線OLED 微顯示器系統的設計與實現[J].液晶與顯示,2012,27(5):633-637.Ran F,He L Q,Ji Y.Design and implementation of wireless OLED microdisplay system [J].Chinese Journal of Liquid Crystals and Displays,2012,27(5):633-637.(in Chinese)

[4] 何劍鋒,李祥,何月順,等.基于S3C2410的嵌入式LINUX 下OLED 模塊驅動設計[J].液晶與顯示,2010,25(1):90-93.He J F,Li X,He Y S,et al.Driving design of OLED module based on S3C2410in embedded Linux[J].Chinese Journal of Liquid Crystals and Displays,2010,25(1):90-93.(in Chinese)

[5] 劉麗,劉衛東,洪勝峰.基于FPGA 的AMOLED 驅動控制系統設計[J].現代顯示,2012(12):31-34.Liu L,Liu W D,Hong S F.Design of AMOLED driving control system based on FPGA[J].Advanced Display,2012(12):31-34.(in Chinese)

[6] 李國強,章堅武,占志偉.AMOLED 驅動電路和LINUX 下驅動程序設計[J].液晶與顯示,2011,26(4):527-531.Li G Q,Zhang J W,Zhan Z W.Design of AMOLED drive circuit and Linux driver[J].Chinese Journal of Liquid Crystals and Displays,2011,26(4):527-531.(in Chinese)

[7] 何賓.Xilinx All Programmable Zynq-7000 SoC 設計指南[M].北京:清華大學出版社,2013:384-391.He B.Xilinx All Programmable Zynq-7000 SoC Design Guide [M].Beijing:Tsinghua University Press,2013:384-391.(in Chinese)

[8] 陸佳華,江舟,馬岷.嵌入式系統軟硬件協同設計實戰指南:基于Xilinx Zynq[M].北京:機械工業出版社,2013:17-18.Lu J H,Jiang Z,Ma M.The Collaborative Design Practical Guide of Hardware and Software in an Embedded System Developed by Xilinx Zynq[M].Beijing:China Machine Press,2013:17-18.(in Chinese)

[9] 盧貴主.OLED 面板的彩色顯示驅動技術研究[J].半導體光電,2011(2):175-178.Lu G Z.Research on OLED color display driver technology[J].Semiconductor Optoelectronics,2011(2):175-178.(in Chinese)

[10] 王星全,蘭明蛟,鄭振華.基于Windows CE的OLED 驅動程序設計與實現[J].微型機與應用,2011(20):17-20.Wang X Q,Lan M J,Zheng Z H.Design and implementation of OLED drivers based on Windows CE[J].Microcomputer &Its Applications,2011(20):17-20.(in Chinese)

猜你喜歡
系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 极品私人尤物在线精品首页| 国产成人精品高清不卡在线| 国产剧情无码视频在线观看| 久久久久久久蜜桃| 亚洲国产精品日韩专区AV| 亚洲第一极品精品无码| 国产日韩丝袜一二三区| 97久久超碰极品视觉盛宴| 人妻丰满熟妇αv无码| 天天做天天爱夜夜爽毛片毛片| 中文字幕有乳无码| 国产在线精彩视频论坛| 无码精油按摩潮喷在线播放 | 欧美中日韩在线| 精品国产99久久| 凹凸国产分类在线观看| 国产成人福利在线视老湿机| 朝桐光一区二区| 欧美国产在线看| 亚洲A∨无码精品午夜在线观看| 亚洲午夜国产片在线观看| 欧美.成人.综合在线| 欧美特黄一级大黄录像| 国产精品自在在线午夜区app| 国产精品白浆无码流出在线看| 久久亚洲精少妇毛片午夜无码| 国产特级毛片aaaaaaa高清| 亚洲精品另类| 网友自拍视频精品区| vvvv98国产成人综合青青| 91美女视频在线| 青青草国产一区二区三区| 国产日韩欧美中文| 亚洲免费毛片| 专干老肥熟女视频网站| 农村乱人伦一区二区| 99精品福利视频| 亚洲无码高清免费视频亚洲 | 国产精品一区二区国产主播| 91在线日韩在线播放| 波多野衣结在线精品二区| 欧美人在线一区二区三区| 久久精品一品道久久精品| 日韩高清中文字幕| 国产美女叼嘿视频免费看| 国产小视频网站| 91探花在线观看国产最新| 亚洲 欧美 偷自乱 图片 | 在线免费看片a| 欧美日韩国产成人高清视频| 最新无码专区超级碰碰碰| 91精品国产91久无码网站| 一级毛片免费观看不卡视频| 精品无码国产一区二区三区AV| 婷婷在线网站| 国产成人精品视频一区二区电影| 欧美日韩国产在线播放| 国产三级视频网站| 特级做a爰片毛片免费69| 91高清在线视频| 色婷婷在线播放| 久草热视频在线| 无码福利日韩神码福利片| 国产美女自慰在线观看| 无码高潮喷水在线观看| 爆乳熟妇一区二区三区| 久久青草精品一区二区三区| 亚洲人成在线免费观看| 国产一级毛片高清完整视频版| 国产最新无码专区在线| 久久久久国色AV免费观看性色| 日韩AV无码一区| 国产精品免费入口视频| 亚洲欧美日韩综合二区三区| 国产一区二区丝袜高跟鞋| 国产黑丝视频在线观看| 日本欧美中文字幕精品亚洲| 国产69精品久久| 激情爆乳一区二区| 2021国产精品自产拍在线| 丝袜国产一区| а∨天堂一区中文字幕|