資源描述:
《基于nios的sopc設(shè)計(jì)--lcd顯示》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、DE2-70數(shù)字系統(tǒng)設(shè)計(jì)(4)--sopc開發(fā)/Nios實(shí)驗(yàn)2010年10月29日星期五19:32實(shí)驗(yàn)內(nèi)容:在DE2-70的lcd上顯示字符串。使用Nios軟核創(chuàng)建sopc工程,學(xué)會(huì)使用niosII環(huán)境。明白如何在DE2-70上跑簡(jiǎn)單的c程序。(搞了那么長(zhǎng)時(shí)間的硬件verilog,終于到了這一步哈~_~)1.首先,添加基本的sopc組件。此軟核系統(tǒng)包括RAM(指定RAM大小30KB,重置、復(fù)位基址0x0,異常基址0x20,),LCD(默認(rèn)),JATGUART(默認(rèn)),NIOSCPU(NIOSE最小核心即可)共四個(gè)部分。完成后的清單列表如下
2、圖所示:PS:(1)一定的注意這里IP核心組件的名稱,和verilog里面的設(shè)計(jì)有關(guān)。如果隨便命名可能導(dǎo)致編譯錯(cuò)誤。(2)注意設(shè)置RAM自頂對(duì)齊。在菜單System第一個(gè)選項(xiàng)。2.generate軟核系統(tǒng)。generate后無(wú)error,warnning.3.使用用verilog完成頂層設(shè)計(jì),頂層HelloNios.v代碼如下://------------------------------------------------------------------//HelloNios//firstNIOSexperiment,justsh
3、owsomecharsontheLCDofDE2-70//learntobuiltasopcproject,it'sverysimple.////yeven@2010.10.28//------------------------------------------------------------------moduleHelloNios(iCLK_50,iKEY,oLED_ON,oLCD_BLON,oLCD_RW,oLCD_EN,oLCD_RS,LCD_D);inputiCLK_50;input[0:0]iKEY;inout[7:0
4、]LCD_D;outputoLED_ON;outputoLCD_BLON;outputoLCD_RW;outputoLCD_EN;outputoLCD_RS;//highoLED_ON(lcdswitch)andoLCD_BLONassignoLED_ON=1'b1;assignoLCD_BLON=1'b1;HelloNios_System(//settingthesystemclk.clk(iCLK_50),.reset_n(1),.LCD_E_from_the_lcd(oLCD_EN),.LCD_RS_from_the_lcd(oLC
5、D_RS),分區(qū)曉徹菜鳥日記的第1頁(yè).LCD_RW_from_the_lcd(oLCD_RW),.LCD_data_to_and_from_the_lcd(LCD_D));endmodule綜合分析,直至無(wú)誤。4.引腳分配。這里主要是DE2-70上的LCD引腳設(shè)置。DE2-70的LCD引腳參考資料可在manual中找到:oLCD_BLONLocationPIN_G3YesLCD_D[0]LocationPIN_E1YesLCD_D[1]LocationPIN_E3YesLCD_D[2]LocationPIN_D2YesLCD_D[3]Lo
6、cationPIN_D3YesLCD_D[4]LocationPIN_C1YesLCD_D[5]LocationPIN_C2YesLCD_D[6]LocationPIN_C3YesLCD_D[7]LocationPIN_B2YesoLCD_ENLocationPIN_E2YesoLCD_ONLocationPIN_F1YesoLCD_RSLocationPIN_F2YesoLCD_RWLocationPIN_F3Yes引腳分配情況如下圖所示:編譯,success(11warnning,主要由模塊還沒(méi)使用引起的).5、新建在NiosIDE中
7、NiosHelloWorld的NoisIIc/c++Application工程,注意在設(shè)置PTF文件時(shí),這個(gè)文件的路徑不能有空格或者中文。否則會(huì)出現(xiàn)一下的錯(cuò)誤提示。注意啦!我就翻過(guò)這個(gè)錯(cuò)誤,找了半天原因才知道的。改下路徑就好了。Thesoftwaresetting(STF)fileassociatedwiththisprojectisdamaged.Thismaybefixedbycopyingyoursourcefilesintoanewc/c++applicationproject.Formoredetailsseetheerrorl
8、og.5.選擇系統(tǒng)庫(kù)屬性;主要是將stdout,in,err都改成LCD方式;去掉CleanExit;另外為了減少程序運(yùn)行體積,我還去掉了Surportc++,選中了Programnevere