freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于fpga的通用外設(shè)電路設(shè)計(jì)_畢業(yè)設(shè)計(jì)(論文)-在線瀏覽

2024-09-12 21:04本頁面
  

【正文】 數(shù)字系統(tǒng)設(shè)計(jì)中起的作用越來越重要,新的工具和新的設(shè)計(jì)方案不斷推出,可編程邏輯器件不斷增加新的模塊,功能越來越強(qiáng),硬件設(shè)計(jì)語言也順應(yīng)形式,推出新的標(biāo)準(zhǔn),更加好用,更加便捷。而頂層文件時(shí)鐘模塊則將輸入輸出部分聯(lián)結(jié)起來,實(shí)現(xiàn)時(shí)鐘發(fā)生,顯示緩存,數(shù)據(jù)修改,移位,滅零等功能。 本設(shè)計(jì)完全采用 Verilog HDL 語言完成,此程序通過下載到 FPGA 芯片后 ,可應(yīng)用于實(shí)際的數(shù)字鐘顯示中。聯(lián)華眾科 FPGA 開發(fā)板FA130 核心器件為 Altera Cyclone 系列的 EP1C3,配置芯片為 EPCS1, FA130 上可以運(yùn)行 SOPC Builder 制作的簡單的工程。 FA130 實(shí)現(xiàn)了 系統(tǒng)與 5V系統(tǒng)對接功能,具體是通過 74LVXC3245(或簡稱 3245)實(shí)現(xiàn) 的。 FA130 的 EDA 開發(fā)實(shí)例包括 VHDL 和 Verilog兩個(gè)版本, FA130 的 51 單片機(jī)開發(fā)實(shí)例包括匯編和 C 語言兩個(gè)版本。另外 FA130 隨板 DVDROM 中還包括 的開發(fā)實(shí)例,在學(xué)習(xí) FPGA開發(fā) 、 51 單片機(jī)開發(fā)的同時(shí)還可以學(xué)習(xí)到 開發(fā)環(huán)境中 C程序的開發(fā), 和 C也是 系統(tǒng)上主要的開發(fā)環(huán)境和編程語言。 核心器件包括 FPGA芯片 Altera EP1C3T100和 PLCC封裝的單片機(jī) STC89LE52。 FPGA配置芯片為 EPCS1, EPCS1為 FLASH類型存儲(chǔ)器,存儲(chǔ)空間為 1M位( 1,046,496bits), EPCS1可以工作在 5V或 ,在本開發(fā)板 EPCS1與 FPGA的 IO相同工作電壓為 。 復(fù)位電路由一個(gè)復(fù)位按鍵和一片復(fù)位芯片組成,復(fù)位芯片為 IMP812T, IMP812T輸出高電平有效的復(fù)位脈沖,脈沖寬度為 140ms。 顯示資源包括 6位共陰 七段數(shù)碼管, 8位 LED(綠色), 1片 1602LCD顯示屏。 電源部分包括 1片 , 1片 1片 , 供 5V直流電源作為 , 輸入電源和 LCD1602 供電電源。 ,作為 FPGA的核心供電電源。 93C46為 SPI接口的串行 E2PROM, 93C46存儲(chǔ)空間為 128字節(jié)。 設(shè)計(jì)軟件介紹 本設(shè)計(jì)使用 Altera 公司的 Quartus II 軟件,版本為 。工程師使用同樣的低價(jià)位工具對 Stratix FPGA 進(jìn)行功能驗(yàn)證和原型設(shè)計(jì),又可以設(shè)計(jì)HardCopy Stratix 器件用于批量成品。 Altera 的 Quartus II 可編程邏輯軟件屬于第四代 PLD 開發(fā)平臺(tái)。 Quartus 平臺(tái)與Cadence、 ExemplarLogic、 MentorGraphics、 Synopsys 和 Synplicity 等 EDA 供應(yīng)商的開發(fā)工具相兼容。東華理工大學(xué)畢業(yè)(設(shè)計(jì))論文 第 2 章 系統(tǒng)方案設(shè)計(jì) 4 第二章 系統(tǒng)方案 設(shè)計(jì) 設(shè)計(jì)要求: 行列式鍵盤 電路 包括:時(shí)鐘產(chǎn)生電路,掃描電路、按鍵標(biāo)志產(chǎn)生電路和鍵盤譯碼器; LED 顯示電路設(shè)計(jì)包括:時(shí)鐘發(fā)生器、掃描信號(hào)發(fā)生器、顯示緩存器、七段譯碼器、小數(shù)點(diǎn)產(chǎn)生模塊和閃爍 模塊; 鍵盤與 LED 顯 示電路配合,完成數(shù)據(jù)修改,移位,滅零和小數(shù)點(diǎn)移動(dòng)等功能。 2) 輸出:六位 7 段數(shù)碼管 。 4) 應(yīng)以上三個(gè)模塊要求,設(shè)計(jì)分頻模塊,產(chǎn)生符合要求的方波。 如圖 22 所示 。鍵盤部分提供一種掃描的工作方式,能對鍵盤不斷掃描、自動(dòng)消抖、自動(dòng)識(shí)別按下的鍵,并給出編碼,能對雙鍵或 n 個(gè)鍵同時(shí)按下的情況實(shí)行保護(hù)。 圖 23 鍵盤示意圖 鍵盤需要響應(yīng)迅速,所以采用了 250Hz信號(hào),輸入由 X1, X2, X3, X4; Y1,Y2,Y3,Y4八根 縱橫交錯(cuò)的連接線組成,當(dāng)某根 X 連接線和 Y 連接線同時(shí)為低電平時(shí)有效,例如當(dāng) X3, Y2 為低電平時(shí),識(shí)別為 “0”鍵,將輸出相應(yīng)信號(hào)供主程序識(shí)別。 圖 24 鍵盤電路 原理 東華理工大學(xué)畢業(yè)(設(shè)計(jì))論文 第 2 章 系統(tǒng)方案設(shè)計(jì) 6 六位 7 段 LED 顯示設(shè)計(jì)方案 在譯碼器設(shè)計(jì)時(shí),常用發(fā)光二極管的狀態(tài)驗(yàn)證設(shè)計(jì)是否滿足要求。此時(shí)應(yīng)采用數(shù)碼管顯示,但是當(dāng)用七段數(shù)碼顯示器顯示的位數(shù)較多時(shí)(如顯示 8 位) BCD 碼十進(jìn)制數(shù)),為了節(jié)省硬件開支,常用 動(dòng)態(tài)顯示方法,即對各 LED 數(shù)碼管循環(huán)掃描。 1) 驅(qū)動(dòng)方式:直接驅(qū)動(dòng)方式,直接對數(shù)碼管相應(yīng)的字段給出驅(qū)動(dòng)電平,以顯示字形,其真值表如表 21 所示: 表 21 LED 真值表 a b c d e f g 輸出 1 1 1 1 1 1 0 0 0 1 1 0 0 0 0 1 1 1 0 1 1 0 1 2 1 1 1 1 0 0 1 3 0 1 1 0 0 1 1 4 1 0 1 1 0 1 1 5 1 0 1 1 1 1 1 6 1 1 1 0 0 0 0 7 1 1 1 1 1 1 1 8 1 1 1 1 0 1 1 9 2)動(dòng)態(tài)掃描顯示 動(dòng)態(tài)掃描的 FPGA 實(shí)現(xiàn)可以采用將所有數(shù)碼管的相同字段并聯(lián),由 FPGA 芯片的輸出信號(hào) a,b,c,d,e,f,g 直接驅(qū)動(dòng)相應(yīng)字段,由軟件編程產(chǎn)生片選信號(hào) MS1,MS2, …,MS6 循環(huán)選中 6 個(gè) 數(shù)碼管。 3)相 關(guān)知識(shí) 共陰 數(shù)碼管如右圖 25 所示:每一條線分別對應(yīng)一個(gè)管腳,當(dāng)管腳為 ?1?時(shí),這條線為亮,當(dāng)管腳設(shè)置為 ?0?時(shí),這條線不亮。 要讓 數(shù)碼管 顯示數(shù)字 0,那么我們可以設(shè)置{a,b,c,d,e,f,g}為 “1111110”。 1) 時(shí)鐘模塊 設(shè)計(jì)思路:定義一個(gè) 長度為 24 位的 時(shí)鐘顯示緩存 寄存器,每 4 位用 BCD 碼 來分別顯示時(shí)分秒的個(gè)位,十位,每當(dāng) 1 秒周期則秒個(gè)位加一,當(dāng)秒個(gè)位為 9 時(shí)則清零,秒十位加一,當(dāng)秒為 59 時(shí)清零,分加一, 同理 當(dāng)分為 59,秒為 59 時(shí),分、秒清零 ,時(shí)加一, 同理 當(dāng)時(shí)為 23,分為 59,秒為 59 時(shí),時(shí)分秒清零。 2)鍵盤譯碼模塊 設(shè)計(jì)思路: 定義 1 位寄存器 sel,每當(dāng)檢測到 sel 信號(hào)則自加 1,當(dāng) sel 為 1 時(shí)進(jìn)入修改狀態(tài),為 0 則為時(shí)鐘狀態(tài)。 4)數(shù)據(jù)修改模塊 設(shè)計(jì)思路:當(dāng) sel 為 1 時(shí) ,進(jìn)入修改狀態(tài),檢測 flag 的值, flag 的值分別對應(yīng)各將被修改的數(shù)據(jù),如圖 26。 5)閃爍模塊 設(shè)計(jì)思路:當(dāng) sel 為 1 時(shí) ,引入 5Hz 信號(hào) clkss,當(dāng) clkss 為 1 時(shí), flag 所對應(yīng)數(shù)據(jù)輸出信號(hào)為緩存數(shù)據(jù),為 0 時(shí)對應(yīng)數(shù)據(jù)電平將為高阻態(tài)不顯示,這樣可實(shí)現(xiàn)被修改數(shù)據(jù)會(huì)以 5Hz 的頻率閃爍顯示。 東華理工大學(xué)畢業(yè)(設(shè)計(jì))論文 第 3 章 系統(tǒng)程序設(shè)計(jì) 8 第三章 系統(tǒng)程序設(shè)計(jì) 分頻器程序設(shè)計(jì) 在現(xiàn)代電子系統(tǒng)中,數(shù)字系統(tǒng)所占的比例越來越大。 在數(shù)字邏輯電路設(shè)計(jì)中,分頻器是一種基本電路。整數(shù)分頻器的實(shí)現(xiàn)非常簡單,可采用標(biāo)準(zhǔn)的計(jì)數(shù)器,也可以采用可編程邏輯器件設(shè)計(jì)實(shí)現(xiàn)。根據(jù)設(shè) 計(jì) 思 路, 本模 塊 將66MHz 信號(hào)分頻成為 250Hz,5Hz, 1Hz 三個(gè)輸出信號(hào),流程圖如圖 31 所示。如果寄存器 3 等于 249,則寄存器 3 清零, clk 取反,根據(jù)以上結(jié)果可得 clk 每秒取反 2 次,即可得 clk=1Hz。 根據(jù)以上思路, Verilog HDL 程序如下: module clkfs(clk,clkss,clksy,clk66MHz)。 output clk,clkss,clksy。 reg[9:0] count1。 reg[7:0] count3。 reg cin1,cin2。d999) begin count1[9:0]=1039。 cin1=139。 //產(chǎn)生進(jìn)位信號(hào) 1 end else begin count1[9:0]=count1[9:0]+1039。 cin1=139。 //進(jìn)位信號(hào) 1 清零 end always (posedge clk66MHz) if(count2[7:0]==839。d0。 //clksy=250Hz cin2=139。 //產(chǎn)生進(jìn)位信號(hào) 2 end else begin count2[7:0]=count2[7:0]+cin1。d0。d249) begin count3[7:0]=839。 clk=~clk。//若進(jìn)位信號(hào) 2 為 1 則加 1,為 0 則 不變 always (posedge clk66MHz) if(count4[5:0]==639。d0。 //clkss=5Hz end else count4[5:0]=count4[5:0]+cin2。利用 250Hz 信號(hào)掃描 X 軸和 Y 軸電位信號(hào),當(dāng)某根 X 連接線和 Y 連接線同時(shí)為低電平時(shí)有效。 示意圖如下: 圖 32 去抖示意圖 圖示為兩次按鍵,第一次 按鍵時(shí)間極短,可視為一次抖動(dòng),第二次為正常按鍵(時(shí)間較長,可以 是 多個(gè) CLK 周期,圖示只列出 1 個(gè)周期),現(xiàn)分析如下: 圖示 1 處:讀取 key1 為低 ; 圖示 2 處:讀取 key2 為高 ; 結(jié)果: key 為 0,判定無按鍵 。 程序如下: module keypad(clksy,x,y,key)。 input[3:0] x,y。 reg[5:0] key1,key2。b00010001:key1[5:0]=639。 839。d2。b00010100:key1[5:0]=639。 839。d4。b00100001:key1[5:0]=639。 839。d6。b00100100:key1[5:0]=639。 839。d8。b01000001:key1[5:0]=639。 839。d10。b01000100:key1[5:0]=639。 839。d32。b10001000:key1[5:0]=639。 default:key1[5:0]=639。 //輸出結(jié)果寄存在 key1 endcase end always (negedge clksy) //第二次判定 begin case({~y[3:0],~x[3:0]}) 839。d1。b00010010:key2[5:0]=639。 //鍵位 2 839。d3。b00011000:key2[5:0]=639。 //鍵位 4 839。d5。b00100010:key2[5:0]=639。 //鍵位 6 839。d7。b00101000:key2[5:0]=639。 //鍵位 8 839。d9。b01000010:key2[5:0]=639。 //鍵位 0 839。d16。b01001000:key2[5:0]=639。 //鍵位 → 839。d48。d0。d0。本模塊同時(shí)具有 片選, 七段譯碼,滅零功能。分時(shí)使用顯示器驅(qū)動(dòng)電路。 程序如下 : module xianshi(clksy,a,b,c,d,e,f,g,D0,D1,D2,D3,D4,D5,num0,num1,num2,num3,num4,num5)。 input[3:0] num0,num1,num2,num3,num4,num5。 //ag 為數(shù)碼管 7 段電平 reg a,b,c,d,e,f,g,D0,D1,D2,D3,D4,D5。 reg[3:0] temp。 always(posedge clksy) begin {D0,D1,D2,D3,D4,D5}=639。 if(flag==6) flag=0。 {num10,num11,num12,num13,num14,num15}={num0,num1,num2,num3,num4,num5}。bzzzz。D0=1。D1=1。D2=1。D3=1。D4=1。D5=1。 endcase case(temp) //七段譯碼 439。b1111110。d1:{a,b,c,d,e,f,g}=739。 //顯示數(shù)字 1 439。b1101101。d3:{a,b,c,d,e,f,g}=739。 //顯示數(shù)字 3 439。b0110011。d5:{a,b,c,d,e,f,g}=739。 //顯示數(shù)字 5 439。b1011111。d7:{a,b,c,d,e,f,g}=739。 //顯示數(shù)字 7 439。b1111111。d9:{a,b,c,d,e,f,g}=739。 //顯示數(shù)字 9 default:{a,b,c,d,e,f,g}=739。 //無任何顯示 endcase end endmodule 頂層模塊程序設(shè)計(jì) 根據(jù)設(shè)計(jì)思路 ,畫出流程圖 ,見 33。程序接下來會(huì)判斷 sel 的值,如果為 1 則進(jìn)入修改狀態(tài),為零則進(jìn)入計(jì)時(shí)狀態(tài)。 東華理工大學(xué)畢業(yè)(設(shè)計(jì))論文 第 3 章 系統(tǒng)程序設(shè)計(jì) 14 圖 33 頂層模塊設(shè)計(jì)流程圖 東華理工大學(xué)畢業(yè)(設(shè)計(jì))論文
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1