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

正文內(nèi)容

基于vhdl語言實(shí)現(xiàn)數(shù)字時(shí)鐘的設(shè)計(jì)(編輯修改稿)

2025-01-11 01:18 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 12 圖 顯示模塊 在圖 顯示模塊中, Led_hour1, Led_hour0, Led_ minu1, Led_ minu0,Led_sec1, Led_sec0 為 6個(gè) 4位輸入 bcd 碼; clk1khz 為掃描(觸發(fā))信號(hào); Sel[2..0]為 3 位掃描位選信號(hào)用于選擇那個(gè)數(shù)碼管顯示共控制了 8 個(gè)數(shù)碼管; Ledga[6..0]為 7 位掃描段選信號(hào)用于選擇數(shù)碼管的 7 段管中的那些管子顯示。在本段程序中,七段碼采用的是共陰極接法。 控制 模塊 每一個(gè)電子時(shí)鐘都會(huì)有控制按鍵,因此本程序也不會(huì)列外,其控制按鍵如圖 所示。圖中 hour minu 為小時(shí)與分鐘的加; Ft 為功能選擇鍵; Out1, out2為計(jì)數(shù)模塊的 k1, k2; Out3, out4 為鬧鐘模塊的 k1, k2; Choice 為輸出數(shù)據(jù) 的選擇與功能的選擇;選擇的計(jì)數(shù) Choice 共有 4個(gè)模式,但此程序只用到了 3個(gè)模式。 圖 鬧鐘模塊 在圖 中可以看到,輸入信號(hào)有 3 個(gè),分別為:掃描信號(hào) Clk1khz;小時(shí)加 K1;分鐘加 K2。 6 個(gè)輸出信號(hào)為: Led_hour1[3..0]、 Led_hour0[3..0]、Led_minu1[3..0]、 Led_minu0[3..0]、 Led_sec1[3..0]、 Led_sec0[3..0]。其中l(wèi)ed_hour、 Led_minu、 Led_sec 為 6 個(gè) 4 位 輸出 bcd 碼。 成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 13 圖 鬧鐘模塊 鬧鐘模塊采用 led 的亮滅來 實(shí)現(xiàn),通過 fpga 芯片 的引腳輸出的電平變化來控制 led 的導(dǎo)通與否 。 顯示選擇 模塊 本設(shè)計(jì)的數(shù)字時(shí)鐘由于有計(jì)數(shù)和鬧鐘兩個(gè)顯示輸出模塊,因此要加一個(gè)顯示選擇模塊用于選擇顯示的數(shù)據(jù)。 如圖 ,模塊 A1a6與 b1b6為 4位輸入 bcd碼; led_hour、 Led_minu、 Led_sec 為 6個(gè) 4位輸出 bcd碼; clk1khz為掃描信號(hào)(觸發(fā)信號(hào)); Choice[1..0]為 2 位掃描。位選信號(hào)用于選擇數(shù)據(jù)顯示,其中 choice 為 00/01/11 顯示 a 數(shù)據(jù); choice 為 10 顯示 b數(shù)據(jù)。 圖 顯示選擇 圖 本 設(shè)計(jì)整個(gè)模塊以 FPGA 芯片 EPF10K10LC844 做為主控制核心模塊,再增加其它功能 以實(shí)現(xiàn)多功能數(shù)字時(shí)鐘 。圖 為 該 數(shù)字時(shí)鐘總的原理圖。 首先輸入脈沖進(jìn)入分頻模塊,經(jīng)過分頻后得到 1hz 的計(jì)數(shù)脈沖;而得到的1hz 計(jì)數(shù)脈沖最終流入計(jì)數(shù)模塊,在計(jì)數(shù)模塊中 246060 邏輯的計(jì)數(shù),并且計(jì)成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 14 數(shù)模塊也在每時(shí)每刻的向顯示模塊輸出數(shù)據(jù)。 一般的時(shí)鐘功能由以上步驟已經(jīng)皆以實(shí)現(xiàn),而其他功能都是在其基礎(chǔ)上 進(jìn)行添加而得到的,如鬧鐘功能,首先添加一個(gè)可以調(diào)節(jié)小時(shí)與分中的模塊,再將模塊中的小時(shí)與分鐘引入到計(jì)數(shù)模塊中,與其中的時(shí)間進(jìn)行對(duì)比,當(dāng)一一對(duì)應(yīng)時(shí),報(bào)警。 圖 數(shù)字時(shí)鐘總的原理圖 成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 15 第 4 章 數(shù)字時(shí)鐘的 VHDL 實(shí)現(xiàn) 軟件設(shè)計(jì)與說明 FPGA 軟件的設(shè)計(jì)主要包括執(zhí)行軟件(完成各種實(shí)質(zhì)性功能)的設(shè)計(jì)和監(jiān)控軟件的設(shè)計(jì)。本設(shè)計(jì)是基于 FPGA VHDL 語言的數(shù)字時(shí)鐘,所以編寫調(diào)試 VHDL 語言的 QURATUS2 軟件是必不可少的,編寫調(diào)試 VHDL 程序 。 Quartus2 軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào) 試工具,全 Windows 界面。與匯編相比, Vhdl語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。 程序流程框圖 本設(shè)計(jì)上電后,開始時(shí)對(duì) fpga 芯片 進(jìn)行初始化、對(duì)時(shí)間日期設(shè)置,顯示出初始數(shù)據(jù),然后對(duì)鍵盤進(jìn)行掃描,如果功能鍵 ft按下,對(duì)時(shí)間、日期進(jìn)行調(diào)整,如果 功能 鍵 ft 再 按下,對(duì)鬧鐘時(shí)間進(jìn)行設(shè)置,再返回?cái)?shù)據(jù)顯示。圖 為程序流程示意圖。 圖 程序流程框圖 開始 按鍵掃描 時(shí)間設(shè)置 鬧鐘設(shè)置 初始化 fpga 芯片 、時(shí)間日期處理 數(shù)碼管 顯示 成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 16 模塊流程圖 按鍵調(diào)整模塊流程圖 本設(shè)計(jì)開始后,功能鍵按下一次進(jìn)入 時(shí)間 調(diào)整狀態(tài),有 小時(shí)加 鍵和 分鐘加 鍵進(jìn)行調(diào)整;功能鍵按下兩次進(jìn)入 鬧鐘 調(diào)整狀態(tài),有 小時(shí)加 鍵和 分鐘加 鍵進(jìn)行調(diào)整;功能鍵 再 按下 一 次返回,時(shí)間繼續(xù)走。圖 為按鍵調(diào)整流程示意圖。 圖 按鍵調(diào)整示意圖 控制功能的主要思路也是選擇與分配, ft( functions selection)為功能選擇鍵,具體到程序中對(duì)應(yīng)為 choice 的數(shù)值。 Choic=00 時(shí)將 k1k2 的變化給計(jì)數(shù)模塊; Choic=10 時(shí)將 k1k2 的變化給鬧鐘 模塊; Choice 初始值為 11。 控制模塊的 VHDL 主要程序如下: always @( posedge ft ) choice = choice + 239。d1。 // 功能鍵的選擇 always @(posedge choice or posedge hour or posedge minu) begin a=0。 b=0。 //a,b 中間變量 if (hour==1) begin a=1。 end if (minu==1) begin b=1。 end if(choice!=0) begin out1=0。 out2=0。end//為選中計(jì)數(shù)模塊輸入為 0 if(choice!=2) begin out3=0。 out4=0。end//為選中鬧鐘模塊輸入為 0 case(choice) 239。b00: out1=a。 239。b10: out3=a。 endcase case(choice) 239。b00: out2=b。 239。b10: out4=b。 endcase end 開始 按鍵按一次 按 鍵連按二次 按鍵按一次 返回 進(jìn)入計(jì)數(shù)模塊 小 時(shí) 加 分鐘 加 進(jìn)入鬧鐘模塊 小 時(shí) 加 分鐘 加 成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 17 鬧鐘 模塊流程圖 模塊的功能實(shí)現(xiàn)共為 2 段 第一段為賦初值,為 鬧鐘賦初值 080000,運(yùn)用了 initial 語句,此語句不帶觸發(fā)值,沿著時(shí)間軸,只運(yùn)行一次。 第二段為 led_hour1,led_hour0,led_minu1,led_minu0, led_sec1, led_sec0 的計(jì)數(shù),觸發(fā)信號(hào)為 k k2,分別對(duì)應(yīng)時(shí)鐘與分鐘 最終將輸出的數(shù)據(jù),輸入給計(jì)數(shù)模塊,并于其時(shí)間相互對(duì)應(yīng),若一一對(duì)應(yīng) 觸發(fā)鬧鐘。 圖 鬧鐘模塊流程圖 。 圖 鬧鐘模塊流程圖 鬧鐘模塊 的 VHDL 主要程序如下: 首先賦初值,為鬧鐘賦初值 080000 initial begin led_hour1=0。 led_hour0=8。 led_minu1=0。 led_minu0=0。 led_sec1=0。 led_sec0=0。 //首先 賦初值 080000 end 開始 初始化 掃描按鍵 進(jìn)入鬧鐘 修改數(shù)據(jù) 返回?cái)?shù)據(jù) 成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 18 這一段, k2 為分鐘的按鍵調(diào)整鍵, k2 按下分鐘加 1, led_minu0[3:0]為分鐘的個(gè)位, led_minu1[3:0] 為分鐘的十位。 加法是按照 60 進(jìn)制進(jìn)行。 always @(posedge k2) //分鐘的按鍵調(diào)整 begin if(led_minu0[3:0]==9 ) //判斷是否為 9 begin led_minu0[3:0]=0。 if(led_minu1[3:0]==5) //判斷是否為 5 begin led_minu1[3:0]=0。 //判斷是否為 59 end else begin led_minu1[3:0]=led_minu1[3:0]+139。b1。//不為 5則分十位加 1 end end else begin led_minu0[3:0]=led_minu0[3:0]+139。b1。 //不為 9則 +1 end end 這一段為小時(shí)的按鍵調(diào)整 , k1為時(shí)鐘的按鍵調(diào)整鍵, k1 按下時(shí)鐘加 1, led_ hour 0[3:0]為時(shí)鐘的個(gè)位, led_ hour 1[3:0] 為時(shí)鐘的十位。 加法是按照 60進(jìn)制進(jìn)行。 always @(posedge k1) //小時(shí)的按鍵調(diào)整 begin if(led_hour0[3:0]==3 amp。amp。 led_hour1[3:0]==2) //判斷是否為 23 begin led_hour0[3:0]=0。 led_hour1[3:0]=0。//是則小時(shí)變?yōu)?00 end else begin if(led_hour0[3:0]9) begin led_hour0[3:0]=led_hour0[3:0]+139。b1。 //是則小時(shí)變?yōu)?00 end else begin led_hour0[3:0]=0。 成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 19 if(led_hour1[3:0]2) begin led_hour1[3:0]=led_hour1[3:0]+139。b1。 分頻 模塊流程圖 分頻模塊采用的原理為計(jì)數(shù),例如把一個(gè) 10hz 的信號(hào)分為 1hz,將 10hz 信號(hào)作為輸入信號(hào),編程計(jì)數(shù) 10次,再翻轉(zhuǎn)就得到 1hz 的信號(hào)( 10hz 一秒鐘跳 10下)。 圖 44 分頻 模塊流程圖 。 圖 分頻 模塊流程圖 分頻模塊的 VHDL 主要程序如下: 主要原理為計(jì)數(shù), clk1kHz 為輸入觸發(fā)信號(hào) , clk 為中間信號(hào)用于計(jì)數(shù),clk1Hz 為輸出信號(hào),輸出 1hz 信號(hào)。 always @ (posedge clk1kHz)// clk1kHz 為輸入觸發(fā)信號(hào) begin clk=clk+1。 //觸發(fā)信號(hào)每來一次, clk+1 if(clk==n) //分頻的關(guān)鍵 N分頻 begin clk=0。 //直到記為 n,清 0 clk1Hz=~clk1Hz。 //clk1Hz 為輸出信號(hào) end end 計(jì)數(shù) 模塊流程圖 計(jì)數(shù)模塊,可一分為 3 小段:第一段為賦初值模塊;第二段為時(shí)間的 計(jì)數(shù)與調(diào)整;第三段為鬧鐘的驗(yàn)證;計(jì)數(shù)模塊是整個(gè)程序的核心,一 切功能都是基于此展開。 圖 計(jì)數(shù) 模塊流程圖 。 計(jì)數(shù) 開始 輸入脈沖信號(hào) 計(jì)到 N時(shí)翻轉(zhuǎn) 將翻轉(zhuǎn)信號(hào)給 cpout 返回?cái)?shù)據(jù) 成都 工業(yè)學(xué)院 電子工程學(xué)院 畢業(yè)設(shè)計(jì)論文 20 圖 計(jì)數(shù) 模塊流程圖 計(jì)數(shù)模塊的 VHDL 主要程序如下: 這段是 賦初值 ,將時(shí)間的初值賦為 120000, led_hour1 時(shí)鐘的十位 。 led_hour0 時(shí)鐘的個(gè)位 。 led_minu1 分鐘的十位 。 led_minu0 分鐘的個(gè)位 。led_sec1 秒鐘的十位 。 led_sec0 秒鐘的個(gè)位 begin led_hour1=1。 led_hour0=2。 led_minu1=0。 l
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1