




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、課程報告設(shè)計課題: 基于SOPC 的LED 循環(huán)流水燈控制設(shè)計姓 名: XXX 專 業(yè): 集成電路設(shè)計與集成系統(tǒng) 學 號: 1115103004 日 期 2014 年 11月 18 日 指導(dǎo)教師: XXX 華僑大學信息科學與工程學院電子工程系基于SOPC的LED循環(huán)流水燈控制設(shè)計1. 設(shè)計的任務(wù)與要求1. 將8 只LED 燈編號,奇數(shù)號亮1 秒,滅2 秒,偶數(shù)號亮3 秒,滅3 秒。2. 用數(shù)碼管顯示每個燈的亮滅時間。3. 循環(huán)點亮。2 系統(tǒng)設(shè)計整體硬件電路框圖 整體電路設(shè)計由一個鎖相環(huán),SOPC搭建的CPU模塊組成,由DE2內(nèi)部時鐘50MHZ輸入控制,輸出接LED7.08個LED燈,HEX0-
2、HEX7 8個數(shù)碼管,用程序編程控制,來實現(xiàn)LED循環(huán)流水燈數(shù)碼管計時功能的實現(xiàn)。三.單元電路設(shè)計 鎖相環(huán)設(shè)計模塊(PLL)SOPC設(shè)計模塊在DE2 平臺上建立SOPC系統(tǒng)的硬件,這個系統(tǒng)包括一個NIos II/s 嵌入式處理器、存儲器、一個JTAG UART 及一個定時器,一個ID 模塊和IO模塊。另外,我們將加入一個自定義組件,實現(xiàn)對DE2 平臺上七段數(shù)碼管的控制。SOPC模塊硬件電路圖四:仿真結(jié)果5 軟件設(shè)計 程序詳見附錄六系統(tǒng)測試: 實驗儀器用DE2板驗證,芯片型號為EP2C35F672C6,將計算機軟件與DE2板相連。用8只LED燈實現(xiàn)循環(huán)點亮,并在8只數(shù)碼管顯示每只LED燈的亮滅時
3、間。七結(jié)論:從DE2板實驗結(jié)果可以看出,該實驗現(xiàn)象滿足設(shè)計的任務(wù)與要求,即:1. 將8 只LED 燈編號,奇數(shù)號亮1 秒,滅2 秒,偶數(shù)號亮3 秒,滅3 秒。2. 用數(shù)碼管顯示每個燈的亮滅時間。3. 循環(huán)點亮。滿足了該設(shè)計的1,2,3點要求,唯一不足的地方是在用數(shù)碼管顯示每個燈的亮滅時間時,我是用usleep()函數(shù)來延遲的,時間精度方面可能比不上用定時計數(shù)器來的準確,可以做進一步改進。附錄:軟件程序:#include "system.h"#include "alt_types.h"#include "unistd.h"#includ
4、e "io.h"int main (void) alt_u8 led=0x01; alt_u32 count; volatile int i; /i用來控制循環(huán)的次數(shù) volatile int j; /j用來控制每次循環(huán)時間為1S while(1) led=0x01; *(unsigned int *)PIO_LED_BASE = led; /點亮第一個LED燈 for(i=1,j=1000000,count=0x00000001;i>0;i-) /用數(shù)碼管控制亮的時間1S IOWR(SEG7_LUT_8_0_BASE,0,count); /第一個數(shù)碼管顯示count
5、值1 usleep(j); /j=1000000,延時1秒 count=count-0x00000001; /count值減1 IOWR(SEG7_LUT_8_0_BASE,0,count); /第一個數(shù)碼管顯示count值0 led=0x00; *(unsigned int *)PIO_LED_BASE = led; /熄滅第一個LED燈 for(i=2,j=1000000,count=0x00000002;i>0;i-) /用數(shù)碼管控制熄滅的時間2S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00000001;
6、 IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x02; *(unsigned int *)PIO_LED_BASE = led;/點亮第二個LED燈 for(i=3,j=1000000,count=0x00000030;i>0;i-) /用數(shù)碼管控制亮的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00000010; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x00; *(unsigned int *)PIO_LED_BASE = led;/熄
7、滅第二個LED燈 for(i=3,j=1000000,count=0x00000030;i>0;i-)/用數(shù)碼管控制熄滅的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00000010; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x04; *(unsigned int *)PIO_LED_BASE = led;/點亮第三個LED燈 for(i=1,j=1000000,count=0x00000100;i>0;i-) /用數(shù)碼管控制亮的時間1S IOWR(SEG7_LUT
8、_8_0_BASE,0,count); usleep(j); count=count-0x00000100; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x00; *(unsigned int *)PIO_LED_BASE = led;/熄滅第三個LED燈 for(i=2,j=1000000,count=0x00000200;i>0;i-)/用數(shù)碼管控制熄滅的時間2S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00000100; IOWR(SEG7_LUT_8_0_BASE,0,co
9、unt); led=0x08; *(unsigned int *)PIO_LED_BASE = led;/點亮第四個LED燈 for(i=3,j=1000000,count=0x00003000;i>0;i-)/用數(shù)碼管控制亮的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00001000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x00; *(unsigned int *)PIO_LED_BASE = led;/熄滅第四個LED燈 for(i=3,j=1000000,co
10、unt=0x00003000;i>0;i-)/用數(shù)碼管控制熄滅的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00001000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x10; *(unsigned int *)PIO_LED_BASE = led;/點亮第五個LED燈 for(i=1,j=1000000,count=0x00010000;i>0;i-)/用數(shù)碼管控制亮的時間1S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j);
11、 count=count-0x00010000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x00; *(unsigned int *)PIO_LED_BASE = led;/熄滅第五個LED燈 for(i=2,j=1000000,count=0x00020000;i>0;i-)/用數(shù)碼管控制熄滅的時間2S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00010000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x20; *(unsigned int
12、 *)PIO_LED_BASE = led;/點亮第六個LED燈 for(i=3,j=1000000,count=0x00300000;i>0;i-)/用數(shù)碼管控制亮的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00100000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x00; *(unsigned int *)PIO_LED_BASE = led;/熄滅第六個LED燈 for(i=3,j=1000000,count=0x00300000;i>0;i-)/用數(shù)碼管
13、控制熄滅的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x00100000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x40; *(unsigned int *)PIO_LED_BASE = led;/點亮第七個LED燈 for(i=1,j=1000000,count=0x01000000;i>0;i-)/用數(shù)碼管控制亮的時間1S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x01000000; IOWR(
14、SEG7_LUT_8_0_BASE,0,count); led=0x00; *(unsigned int *)PIO_LED_BASE = led;/熄滅第七個LED燈 /for(i=0;i<2000000;i+); for(i=2,j=1000000,count=0x02000000;i>0;i-)/用數(shù)碼管控制熄滅的時間2S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x01000000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x80; *(unsigned int *)
15、PIO_LED_BASE = led;/點亮第八個LED燈 /for(i=0;i<3000000;i+); for(i=3,j=1000000,count=0x30000000;i>0;i-)/用數(shù)碼管控制亮的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x10000000; IOWR(SEG7_LUT_8_0_BASE,0,count); led=0x00; *(unsigned int *)PIO_LED_BASE = led;/熄滅第八個LED燈 /for(i=0;i<3000000;i+);
16、 for(i=3,j=1000000,count=0x30000000;i>0;i-)/用數(shù)碼管控制熄滅的時間3S IOWR(SEG7_LUT_8_0_BASE,0,count); usleep(j); count=count-0x10000000; IOWR(SEG7_LUT_8_0_BASE,0,count); return 0;1. 添加自定義組件七段數(shù)碼管控制器 SEG7_LUT.V 是一個查找表,完成七段碼顯示的譯碼。當輸入iDIG在0x00xF 之間變化時,輸出oSEG 的七段碼也發(fā)生相應(yīng)的變化,并在數(shù)碼管上顯示iDIG 的值。代碼1 SEG7_LUT.Vmodule SEG
17、7_LUT ( oSEG, iDIG);input 3:0 iDIG;output 6:0 oSEG;reg 6:0 oSEG;always(iDIG)begin case(iDIG) 4'h1:oSEG=7'b1111001; 4'h2:oSEG=7'b0100100; 4'h3:oSEG=7'b0110000; 4'h4:oSEG=7'b0011001; 4'h5:oSEG=7'b0010010; 4'h6:oSEG=7'b0000010; 4'h7:oSEG=7'b111100
18、0; 4'h8:oSEG=7'b0000000; 4'h9:oSEG=7'b0011000; 4'ha:oSEG=7'b0001000; 4'hb:oSEG=7'b0000011; 4'hc:oSEG=7'b1000110; 4'hd:oSEG=7'b0100001; 4'he:oSEG=7'b0000110; 4'hf:oSEG=7'b0001110; 4'h0:oSEG=7'b1000000; endcaseendendmoduleSEG7_LUT_8.V,對SEG7_LUT.V
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年統(tǒng)計學期末考試:統(tǒng)計調(diào)查誤差控制方法與實證研究試題
- 2025年無人機駕駛員職業(yè)技能考核無人機航空攝影與遙感試題
- 2025年銑工職業(yè)技能鑒定試卷(二級)重點題型解析與訓練
- 2025年德語TestDaF聽力專項試卷:德語聽力備考心態(tài)調(diào)整試題
- 鋼廠安全課件
- 金錢與健康課件
- 金屬材料介紹課件
- 重癥科護理課件
- 重慶醫(yī)科大學生理學課件
- 酒店政策與法規(guī)課件
- 2025年克拉瑪依市公安局招聘警務(wù)輔助人員考試筆試試題(含答案)
- 中國陶瓷史題目及答案
- 湖北省2025年中考英語真題試卷(含答案)
- 護理查房與病歷討論
- 2025-2030中國遙控武器站行業(yè)現(xiàn)狀調(diào)研與前景趨勢預(yù)測報告
- 內(nèi)蒙古呼倫貝爾能源投資開發(fā)有限責任公司招聘筆試真題2024
- WST821-2023托育機構(gòu)質(zhì)量評估標準
- 2025至2030中國循環(huán)腫瘤細胞(CTC)行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
- 2025至2030中國大型連鎖超市行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
- T-GDMDMA 0044-2025 一次性使用血液灌流器的臨床使用指南
- 2025-2030年中國鱈魚腸行業(yè)市場發(fā)展分析及發(fā)展前景與投資策略研究報告
評論
0/150
提交評論