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顯示系統
半沸制皂系統(下)
瞞天過?!律O計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 72种姿势欧美久久久大黄蕉| 99久久国产综合精品2023| 91久草视频| 国产午夜精品鲁丝片| 91在线日韩在线播放| 中国精品久久| 精品三级网站| 青青青国产在线播放| 91无码网站| 国产理论最新国产精品视频| 精品一区国产精品| 成人精品区| 国产精品19p| 福利小视频在线播放| 成人年鲁鲁在线观看视频| 91人妻日韩人妻无码专区精品| 美女被操91视频| 91成人在线免费观看| 亚洲国产精品成人久久综合影院| 欧美天堂久久| 国产精品视频免费网站| 精品欧美一区二区三区在线| 成人无码区免费视频网站蜜臀| 国产天天射| 亚洲国产精品VA在线看黑人| 久久中文电影| 午夜免费视频网站| 免费无码在线观看| 国产精品午夜福利麻豆| 亚洲91在线精品| 欧美成人精品欧美一级乱黄| 青青草原国产精品啪啪视频| 国产精品亚洲αv天堂无码| 九九热精品免费视频| 国产主播一区二区三区| 亚洲中文字幕23页在线| 夜夜爽免费视频| 久久久久88色偷偷| 国产十八禁在线观看免费| 亚洲天堂网2014| 中文字幕欧美日韩| 成人在线观看一区| 91成人在线观看| 亚洲精品成人福利在线电影| 亚洲视频免| 狼友视频国产精品首页| 午夜a视频| 在线va视频| 中国丰满人妻无码束缚啪啪| 欧美成人怡春院在线激情| 国产激爽大片在线播放| 久久9966精品国产免费| 四虎亚洲国产成人久久精品| 成年女人a毛片免费视频| 国产欧美日韩视频一区二区三区| 中文字幕不卡免费高清视频| 午夜不卡视频| 91国内在线视频| 国产精品网址在线观看你懂的| 亚洲国产理论片在线播放| 精品一区二区三区视频免费观看| 天天色天天综合网| 啪啪免费视频一区二区| 久久午夜夜伦鲁鲁片不卡| 国产视频 第一页| 欧美日韩国产综合视频在线观看 | 99久久精品视香蕉蕉| 色婷婷电影网| 免费不卡视频| 国产精品亚洲一区二区三区在线观看 | 91免费国产高清观看| 少妇极品熟妇人妻专区视频| 亚洲有无码中文网| 91偷拍一区| 国产av无码日韩av无码网站| 毛片久久网站小视频| 国产精品福利一区二区久久| 91极品美女高潮叫床在线观看| 国产成人精品一区二区不卡| 夜夜操天天摸| 亚洲视频免费在线看| 久草美女视频|