當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于NIOS II嵌入式處理器實現(xiàn)LCD的控制

隨著半導(dǎo)體技術(shù)以及計算機(jī)軟硬件技術(shù)的飛速發(fā)展,對于圖像的顯示的控制技術(shù)也呈現(xiàn)出越來越多的方式。本文介紹了一種基于NIOS II軟核處理器實現(xiàn)對LCD-LQ057Q3DC02控制的新方法。在設(shè)計中利用FPGA的Altera的SOPC Builder定制NIOS II軟核處理器及其與顯示功能相關(guān)的“軟” 硬件模塊來協(xié)同實現(xiàn)顯示控制的軟硬件設(shè)計。利用SOPC技術(shù),將NIOS II CPU和LCD控制器放在同一片F(xiàn)PGA中,解決了通常情況下必須使用LCD 控制專用芯片才能解決LCD顯示的問題。

  1 LCD選型及主要特性

  本文所采用的LCD是SHARP公司的5.7英寸的LCD-LQ057Q3DC02。它能顯示320×240×3點像素,輸入信號有:18位色度信號(R,G,B各6位)的數(shù)據(jù)信號,4個時鐘信號(CLK,Hsync,Vsync,Enable)以及實現(xiàn)水平顯示模式,垂直顯示模式的R/L、U/D和VGA/QVGA模式選擇信號線。


  事實上,LCD-LQ057Q3DC02是一個逐行掃描設(shè)備,它總是從屏幕的左上方開始掃描,先水平掃描完一行(320像素點)到最右邊,然后再回到最左邊,換下一行,繼續(xù)掃描。直到掃描到屏幕的最下方(共240行),這樣就掃描完一幀圖像,然后再回到最左邊,開始下一幀的掃描。

  2 Avalon流模式LCD控制器設(shè)計

  文中實現(xiàn)的LCD 實時圖像顯示控制方式采用的是DMA數(shù)據(jù)傳輸方式。設(shè)計時,利用DMA控制器在流模式LCD控制器和SDRAM 之間建立一條DMA傳送通道,讓硬件來完成像素信息的自動讀取,而NIOS II處理器僅通過操作SDRAM 中相應(yīng)的區(qū)塊就能實現(xiàn)LCD 圖像的更新。

  2.1 Avalon流模式控制器的組成

  設(shè)計Avalon流模式外設(shè)時需要遵循Avalon總線規(guī)范。在實際設(shè)計時,筆者設(shè)計的Avalon流模式LCD控制器的硬件結(jié)構(gòu)如圖1。該控制器由如下3部分構(gòu)成:LCD接口控制器、FIFO存儲器和Avalon Streaming Port接口。


  2.2 LCD顯示控制流程

  對LCD-LQ057Q3DC02而言,要實現(xiàn)LCD的正常顯示就必須對相應(yīng)的控制信號正確配置,特別是行同步(LCD_Hsync)、場同步(LCD_Vsync)必須與從SDRAM 存儲器中取出的圖像數(shù)據(jù)同步,否則,圖像將不能正常再現(xiàn)。實現(xiàn)LCD控制的行同步、場同步的控制時序流程如圖2。


  2.3 LCD控制器文件組成及部分代碼

  與LCD控制器硬件相對應(yīng)的是3個模塊文件,分別是:LCD_interface.vhd,LCD_pixel_fifo.v以及LCD_controller_stream.v。其中LCD_controller_stream.v是頂層模塊,其內(nèi)部也包含了Avalon Streaming Port接口時序部分,LCD_pixel_fifo.v可通過QuartusII中的宏模塊直接生成。當(dāng)生成了上述3個文件后,可選擇SOPC Builder中的System->Add Interface to User Logic命令打開Interface to User Logic對話框,選擇總線類型為Avalon Memory Slave,因為工作于流模式的LCD控制器可看成一個存儲器(FIFO類型),可通過添加DMA控制器來實現(xiàn)存儲器(FIFO)到存儲器(SDRAM)的DMA設(shè)置。下面給出LCD接口部分程序。
[!--empirenews.page--]
ENTITY LCD_interface IS
PORT(
reset :IN std_logic;
lcd_clk :IN std_logic;
Wrdata :IN std_logic_vector(17 downto 0);
hsync :OUT std_logic;
vsync :OUT std_logic;
enable :OUT std_logic;
lcd_R/L :OUT std_logic;
lcd_U/D :OUT std_logic;
sel_VGA_QVGA :OUT std_logic;
RGB :OUT std_logic_vector(17 downto 0);
end_of_picture :OUT std_logic);
END LCD_interface;
ARCHITECTURE trans OF LCD_interface IS
process(lcd_clk) begin
if(rising_edge(lcd_clk)) then
if(hcnt<400) then
hcnt<=hcnt+1;
else
hcnt<=(others=>0);
end if;
end if;
end process;--行計數(shù)器模塊
process(lcd_clk) begin
if(rising_edge(lcd_clk)) then
if(hcnt=320) then
if(vcnt<262) then
vcnt<= vcnt+1;
else
vcnt<=(others=>0);
end if;
end if;
end if;
end process;--場計數(shù)器模塊
process(lcd_clk) begin
if(rising_edge(lcd_clk)) then
if((hcnt>= 320+20+20 ) and (hcnt<320+20+20+40)) then
hs<=0;
else
hs<=1;
end if;
end if;
end process;--產(chǎn)生水平同步脈沖
process(vcnt)begin
if((vcnt>=240+6+6)and(vcnt<240+6+6+10)) then
VS<=0;
else
vs<=1;
end if;
end process;--產(chǎn)生場同步脈沖
process(lcd_clk) begin
if(rising_edge(lcd_clk)) then
if(hcnt<320 and vcnt<240)and(hcnt>20 and vcnt>6) then
en<=1;
else
en<=0;
end if;
end if;
end process;--產(chǎn)生顯示使能控制信號
process(led_clk)begin
if(rising_edge(lcd_clk))then
if(hcnt<320 and vcnt<240)then
RGB<=Wdata;
else
RGB<=(others=>0);
end if;
end if;
end process;--像素輸出及消隱
process(lcd_clk)begin
if(rising_edge(lcd_clk))then
if((vcnt=320+1)and(hcnt=0))then
end_of_picture<=1;
else
end_of_picture<=0;
end if;
end if;
end process;--一幀傳輸完畢
END ARCHITECTURE trans;

  3 DMA控制流程及實驗結(jié)論

  3.1 DMA傳輸方式下的程序流程

  利用該方案實現(xiàn)LCD的顯示已在某面陣CCD采集系統(tǒng)中得到驗證。在實際的系統(tǒng)中,該部分主要實現(xiàn)所采集的面陣CCD圖像傳感器圖像數(shù)據(jù)的動態(tài)顯示。在實際的采集控制系統(tǒng)中選用了2個DMA,一個用于圖像數(shù)據(jù)的采集,一個用于采集后圖像的再現(xiàn)。在文中僅介紹了顯示DMA傳輸控制方式下的相應(yīng)模塊。實際系統(tǒng)中,圖像數(shù)據(jù)從面陣CCD圖像傳感器以DMA控制方式將圖像數(shù)據(jù)采集到SDRAM,所采集后的圖像數(shù)據(jù)從SDRAM到LCD顯示。實際系統(tǒng)中的DMA控制流程如圖3。
 


  3.2實驗結(jié)論

  根據(jù)圖3所采集到的面陣CCD的圖像數(shù)據(jù)保存在SDRAM中,按一定比例抽取的圖像數(shù)據(jù)在SDRAM中合成18位的RGB圖像信號,而后在NIOS II處理器以及顯示DMA的控制下,將一幀完整的圖像顯示在LCD上,實際控制的顯示結(jié)果如圖4。

  4 結(jié)束語

  利用NIOS II作為FPGA嵌入式處理器控制LCD的解決方案,能較容易地實現(xiàn)圖像數(shù)據(jù)的DMA傳輸與控制,系統(tǒng)中可根據(jù)實際需求有選擇的定制相應(yīng)模塊,使系統(tǒng)具有較強(qiáng)的靈活性。同時由于采用“軟”硬件實現(xiàn)LCD控制,調(diào)試過程中通過不斷更改“軟件”就可達(dá)到改進(jìn)硬件功能的目的。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉