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

字符液晶顯示屏接口模塊設計

2017-12-20 21:14:24張鑫康磊
科學與財富 2017年32期

張鑫+康磊

摘 要:LCD具有工作電壓低、功耗小等優點,因而被廣泛應用于電子產品中。LCD驅動電路是液晶顯示系統的重要組成部分,常規LCD驅動電路的開發既浪費時間,而且復用性也較差。隨著FPGA和SOPC技術的不斷成熟,基于IP核的設備驅動設計能夠提高產品的設計效率,縮短上市時間,因而受到越來越多開發人員的青睞。本文是基于IP核的LCD控制器的設計。首先,討論了LCD控制器的設計實現;接著,為LCD控制器添加Avalon總線接口信號,實現與Avalon總線的連接,將其封裝成LCD IP核;隨后,為了方便軟件開發,編寫了LCD的驅動函數庫;最后,構建了一個包含該IP核的SOPC系統,并且在Nios II IDE環境下,編寫程序對該IP核的功能進行驗證,結果表明,該IP核的軟硬件功能設計正確。

關鍵詞:FPGA,SOPC,LCD,IP核,Avalon總線

前言

Nios II嵌入式處理器是Altera公司提出的SOPC解決方案, 是一種用戶可隨意配置和構建的32位嵌入式處理器,結合豐富的外設可快速、靈活地構建功能強大的SOPC系統[1],并且其提供了一些通用的IP核,使用非常方便[2],但是在構建SOPC系統時,這些IP核都是受知識產權保護的,費用比較高。如果設計一個基于Avalon總線的LCD控制器IP核,這樣對于構建一個具有顯示系統的SOPC系統,就比較具有實際意義。本文在基于Nios II的SOPC系統中設計了LCD顯示驅動IP核,并下載到Cyclone 系列的FPGA中,實現了對LCD的顯示驅動。

1 系統開發流程

(1)了解開發板上的LCD顯示屏的規格原理。

(2)在Quartus II 8.1軟件環境下進行LCD控制器的實現。

(3)將實現的LCD控制器在SOPC Bulider下封裝成為IP核。

(4)建立LCD驅動函數庫。

(5)搭建模擬測試硬件系統。

(6)搭建模擬測試軟件系統。

2 LCD IP核的設計與實現

2.1 LCD 驅動模塊的實現

2.1.1 設計思路

LCD控制器的實現共包含三個部分,分別是LCD初始化模塊,LCD顯示模塊,LCD顯示頂層模塊。LCD顯示頂層模塊用于連接初始化與顯示模塊,其中LCD初始化完成后會有一個使能信號,來驅動LCD顯示模塊工作,通過頂層文件連接初始化與顯示模塊兩部分使得該系統可以正常工作。

2.1.2 LCD初始化模塊實現

LCD初始化主要是對LCD模塊的寄存器進行初始化,也就是給寄存器寫入預設的數據,使得LCD可以正常工作。首先確定一系列輸入輸出信號,比如輸入有時鐘信號,復位信號,輸出有RS,RW,數據位等,通過把50MHz時鐘信號進行分頻,產生大于15ms,4.1ms,100us的時鐘信號,然后使用狀態機進行一系列的賦值工作,當狀態機進行到最后一個狀態,即模式設置狀態,將初始化完成信號賦值為1,代表初始化完成。

2.1.3 LCD顯示模塊實現

LCD顯示模塊主要是控制LCD正常工作,通過8位的數據輸入,然后在LCD顯示該8位數據代表的字符。首先LCD顯示模塊必須是在LCD初始完成后才能正常工作,所以LCD初始模塊初始完成信號便是LCD顯示模塊的使能信號,通過一系列狀態,比如清屏狀態,功能設置狀態等,使得輸入的八位數據可以到達輸出部分,并且在每個狀態中對RS,RW等LCD的功能引腳進行賦值,以達到在合適的時候,將合適的指令與數據送到對應的引腳。這樣才能確保LCD顯示模塊正常工作。

2.1.4 頂層模塊的實現

首先,完成LCD初始模塊與LCD顯示模塊的編碼,然后通過各種器件進行連接,其中LCD初始化完成后會產生一個LCD初始化完成信號,來驅動LCD顯示模塊工作,LCD初始化與LCD顯示模塊的輸出都要進入一個擴展模塊,除了LCD初始模塊的初始化完成后的信號,將兩個模塊的輸出通過兩個擴展模塊后,再進入到一個二選一數據選擇器中,數據選擇器的選擇信號量為初始化的完成信號,最后,將選擇得到的數據進行拆分,分別輸送到LCD的功能引腳,LCD的控制器到此完成。

2.2 LCD IP核的封裝

在LCD IP核的封裝過程中,首先要了解Avalon總線常用信號接口,這樣才能確保LCD控制器信號量與Avalon總線連接的正確性;接著,將頂層模塊中的clk、reset_n、chipselect、address、data、write、writedata、export、read

data等信號與Avalon總線信號接口對應相連,同時頂層模塊將LCD 顯示屏的初始化模塊與顯示模塊連接起來,使得LCD顯示屏可以正常的工作;最后在SOPC Bulider中,將LCD IP核設置為組件,實現LCD IP核的封裝。

2.3 建立LCD驅動函數庫

LCD驅動函數庫主要為了方便開發人員對該LCD IP核的使用。

3 LCD IP核功能驗證

3.1 模擬測試系統的設計思路

要驗證LCD IP核的功能,首先搭建一個包含該IP核的模擬測試硬件系統,然后搭建一個模擬測試軟件系統,通過兩部分的協作,來實現驗證功能。

3.2 搭建模擬測試硬件系統

模擬測試硬件系統是將自定義的LCD IP核添加到一個具有Nios II處理器、JATG UART、RAM,PIO組件的SOPC系統中,在此過程中要添加兩類PIO,分別是輸入PIO,中斷PIO,輸入PIO的主要是進行數據的輸入,中斷PIO主要是產生中斷信號,接著設置Nios II處理器的異常中斷與復位地址,自動分配地址與中斷號,最后生成SOPC系統,添加輸入輸出,重命名,編譯綜合,完成后進行引腳分配,再次綜合,到此,一個完整的模擬測試硬件系統便搭建完畢。

3.3 搭建模擬測試軟件系統

模擬測試軟件系統主要是在模擬測試硬件系統的基礎上,通過調用LCD驅動函數來實現對LCD IP核的功能進行驗證。通過在Nios II IDE中創建NIOS II C/C++ Application,編譯該工程,配置和編譯完成后,出現一系列與硬件系統相關的文件,之后進行主函數的編寫,通過調用LCD驅動函數和中斷技術來實現功能,在主函數中,首先在中斷初始化程序中對中斷服務程序進行注冊,當捕獲到中斷時,便進入中斷服務程序,在此過程中,先得到輸入PIO的值,然后設定一個計數器來表示LCD字符的位置,先把字符顯示在LCD顯示屏第一行,當計數器大于15時,便把字符顯示在LCD顯示屏的第二行,當計數器等于31時,將計數器清零,繼續把字符顯示在LCD顯示屏第一行第一個位置,這樣便把輸入的值通過中斷顯示在LCD顯示屏上,通過撥動開關產生相對應字符的Ascll碼,按下中斷按鍵后,對應的字符便會顯示在LCD顯示屏上。

參考文獻

[1]趙倩編著,Verilog數字系統設計與FPGA應用[M].北京:清華大學出版社,2012:139-244.

[2]劉敏.采用SOPCIP核技術實現液晶屏顯示[J].液晶與顯示,2011,(05):665-672.endprint

主站蜘蛛池模板: 亚洲第一综合天堂另类专| 久久精品无码一区二区日韩免费| 亚洲欧美成人网| 国产凹凸视频在线观看| 亚洲国产成人在线| 天天综合网色| 爆乳熟妇一区二区三区| 亚洲精品卡2卡3卡4卡5卡区| 日本亚洲欧美在线| 成人无码一区二区三区视频在线观看 | 多人乱p欧美在线观看| h视频在线观看网站| 毛片免费观看视频| 40岁成熟女人牲交片免费| 国产成人夜色91| 国产精品欧美激情| 丝袜国产一区| 国产微拍一区| 波多野结衣中文字幕久久| 亚洲高清中文字幕在线看不卡| 国产jizzjizz视频| 2021最新国产精品网站| 99在线视频精品| 在线观看免费国产| 亚洲中文字幕国产av| 国产午夜人做人免费视频中文| 精品无码一区二区三区在线视频| 69av在线| 久久黄色免费电影| 被公侵犯人妻少妇一区二区三区| 国产在线小视频| 午夜福利视频一区| 亚洲国产中文在线二区三区免| 国产91小视频| 久久精品66| 日韩精品久久无码中文字幕色欲| 青青草原国产av福利网站| 国产精品久久久久久久久久98| 国产理论一区| 亚洲国产日韩视频观看| 久久人搡人人玩人妻精品| 精品人妻AV区| 亚洲人成网址| 亚洲一区二区三区在线视频| 在线国产91| 在线视频亚洲色图| www.国产福利| 伊人久久精品亚洲午夜| 国产主播在线一区| 91精品视频在线播放| 久久久久亚洲AV成人人电影软件| 国产成在线观看免费视频| 欧美19综合中文字幕| 久久精品丝袜| 无码国产偷倩在线播放老年人 | 依依成人精品无v国产| 暴力调教一区二区三区| 成人av专区精品无码国产| 欧美日韩中文字幕二区三区| 欧美日韩激情在线| 免费高清毛片| 国产高颜值露脸在线观看| 老司机午夜精品网站在线观看| 91色爱欧美精品www| 日韩欧美国产三级| 亚洲无码高清免费视频亚洲| 第九色区aⅴ天堂久久香| 亚洲欧美不卡视频| 激情国产精品一区| 亚洲成人77777| 九九九精品视频| 日本免费一区视频| 亚洲天堂网2014| 伊人久久婷婷| 日韩A级毛片一区二区三区| 欧美成人二区| 免费看美女毛片| 激情成人综合网| 91久久大香线蕉| 青草视频免费在线观看| 国产菊爆视频在线观看| 亚洲精品中文字幕午夜|