




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第22頁西南交通大學(xué)電子技術(shù)課程設(shè)計(報告) 第2章 電路設(shè)計一、整體方案設(shè)計1設(shè)計任務(wù) 設(shè)計并制作一種水位顯示與控制電路?;疽螅?(1)用10個發(fā)光二極管作為水位高低的指示(類似于音量指示) (2)可以給出無水,水滿等指示信號 (3)數(shù)字顯示水位2. 設(shè)計說明 (1)水位傳感器由555電路構(gòu)成,輸出為不同頻率的方波。 (2)頻率/水位實際就是一個并行比較器,這里用CPLD來實現(xiàn),即粗略給出水位范圍再由LED BAR顯示出來。 (3)頻率/水位主要是除法運算和減法運算,即精確計算出水位,也可以由CPLD完成。 (4)根據(jù)計算出的水位給出控制信號(如水已滿,無水)。 (5)根據(jù)計算出的水位用
2、7段LED動態(tài)顯示出來。 二、方案設(shè)計流程 我們小組對于本次課程設(shè)計,根據(jù)老師提供的設(shè)計要求,經(jīng)過小組討論,課程設(shè)計流程如下: 自制的電容式水位傳感器的電容會隨水的深度變化而變化,電容的變化會引起555振蕩電路產(chǎn)生的頻率發(fā)生變化,由此將水位變化的信號轉(zhuǎn)化為可測的頻率變化信號。水位高度與輸出的頻率滿足H=A/f-B,通過測量多組數(shù)據(jù)求出A,B值后便可根據(jù)此式得到水位高度。得到水位高度后,我們利用二進制轉(zhuǎn)換為BCD碼通過數(shù)碼管動態(tài)掃描及譯碼工作,在數(shù)碼管上動態(tài)實現(xiàn)實時水位高度。 我們小組在研究水位測量的基本原理后,我們將水位計分成了555振蕩電路,頻率計數(shù),LED控制,頻率高度轉(zhuǎn)換,二進制-BCD
3、碼轉(zhuǎn)換,數(shù)碼管顯示控制6個模塊,整體設(shè)計方案和各模塊間關(guān)系如圖1。10個發(fā)光二極管LED控制555振蕩回路電容式水位傳感器頻率-高度轉(zhuǎn)換頻率計數(shù)二進制-BCD碼轉(zhuǎn)換4位7段數(shù)碼管數(shù)碼管顯示與控制圖1 整體設(shè)計方案 其中水位顯示與控制的關(guān)鍵在于測量555振蕩電路產(chǎn)生的頻率,水位H與電容C公式為C=aH+b。又知和 ,我們實際測量水位與輸出頻率數(shù)據(jù),計算出A,B即可得到水位高度與555振蕩回路輸出頻率之間的關(guān)系。 頻率計數(shù)模塊是水位測量的核心,由1秒閘門信號、計數(shù)器、鎖存器組成通過對于頻率的記錄,在鎖存器中記錄當(dāng)前頻率值,并且計數(shù)器+1。實現(xiàn)實時測量存儲記錄頻率值。我們在老師提供的芯片板上找到了5
4、0MHz有源晶振,利用該晶振產(chǎn)生1s閘門信號對水位產(chǎn)生頻率進行計數(shù),得到對應(yīng)頻率的二進制數(shù)值。經(jīng)過實驗測試中發(fā)現(xiàn)產(chǎn)生頻率位數(shù)過多,我們采用計數(shù)器進行1000分頻,將頻率信號轉(zhuǎn)換為KHz為單位計數(shù),方便后續(xù)處理。 頻率-高度轉(zhuǎn)換利用并行比較器,根據(jù)指定的水位范圍,當(dāng)前水位轉(zhuǎn)換為頻率值在此范圍內(nèi)時,輸出信號使得LED點亮,利用Quartus II,制作與的關(guān)系表達(dá)式的電路圖,從除法和減法運算中計算出的實時數(shù)據(jù),將水位與頻率的關(guān)系的具體數(shù)據(jù)實時轉(zhuǎn)換返回。由于返回的數(shù)據(jù)時水位高度的二進制碼,需要將此二進制碼轉(zhuǎn)換為BCD碼后再由數(shù)碼管動態(tài)掃描譯碼顯示實時水位數(shù)據(jù),我們便可以直接讀出水位的高度,二進制-B
5、CD碼轉(zhuǎn)換模塊及數(shù)碼管動態(tài)掃描及譯碼模塊由Verilog HDL編程實現(xiàn)。 頻率計數(shù)、LED燈控制、頻率-高度轉(zhuǎn)換、二進制-BCD碼轉(zhuǎn)換模塊和數(shù)碼管顯示控制這五個模塊都是在CPLD中實現(xiàn)的。下面我們對上述每個模塊的電路進行詳細(xì)解釋說明。2.1 555振蕩電路 555振蕩電路由555定時器和外部的電容式水位傳感器組成,在MultiMultisim 11.0 中進行仿真,電路如下圖2,其中1,2所接的電容即是我們制作的電容式水位傳感器,下圖3和圖4為該傳感器的原理圖和我們制作的實物圖,其電容C與水位H之間的關(guān)系為:C=aH+b,水位越高電容越大。圖2 555 振蕩回路模擬電路 圖3 水位傳感器原理
6、圖 圖4 水位傳感器實物圖 555振蕩電路輸出波形為一矩形波,波形占空比和頻率與傳感器電容有如下關(guān)系: 圖5 555振蕩電路輸出頻率與水位傳感器電容的仿真波形 由上式可知,振蕩電路的輸出頻率與傳感器電容成反比,仿真波形如圖5,因此輸出頻率與水位高度成負(fù)相關(guān),根據(jù)公式換算可得水位高度H與振蕩電路輸出波形的頻率f的關(guān)系:H=A/f-B,我們記錄一些特定水位及該水位時555振蕩回路的輸出頻率得到一組數(shù)據(jù),通過軟件模擬曲線得出A= 74846.3,B=21.2, 2.2 頻率計數(shù) 頻率計數(shù)模塊由計數(shù)器,鎖存器,D觸發(fā)器3部分組成。本次課程設(shè)計中,芯片可提供50MHz的信號,我們通過分頻得到1s的閘門信
7、號,此信號上升沿時對555振蕩電路輸出的信號進行周期計數(shù),并由鎖存器存儲前一秒波形的頻率,在下一秒計數(shù)前對計數(shù)器進行清零處理。 在電路圖設(shè)計中,我們采用對于50MHz頻率進行23000分頻,實現(xiàn)對于555輸出頻率信號以KHz為單位的計數(shù),減少了采集數(shù)據(jù)的位數(shù),便于并行比較器和數(shù)碼管顯示的編程實現(xiàn)。 頻率計數(shù)部分的模擬電路圖由Quartus II 9.0繪制,如下圖6所示。圖6 頻率計數(shù)模塊模擬電路圖7 頻率計數(shù)仿真波形 經(jīng)過時序仿真得到頻率計數(shù)仿真波形如圖7。 不同頻率對應(yīng)不同的頻率計數(shù)值,對應(yīng)顯示不同的LED燈點亮的個數(shù)。 2.3 LED控制 LED控制模塊實質(zhì)是將頻率計數(shù)模塊得到的頻率與5
8、55振蕩電路在特定水位時輸出的頻率進行比較,判斷該頻率所在的頻率段范圍從而控制發(fā)光二極管的亮暗個數(shù)來指示水位的大致范圍。 在計算A,B參數(shù)時我們得出了在11個特定水位高度時555振蕩回路的對應(yīng)輸出頻率,設(shè)這11個特定頻率為f0f10,此11個頻率形成10個頻率段,對應(yīng)10個水位高度段,通過判斷該頻率所在的頻率段可確定該頻率輸出時的水位范圍從而確定亮燈個數(shù)。該部分由Verilog HDL語言編程生成比較器。生成件如下圖8,波形仿真如下圖9,代碼見下章。圖8 比較器圖9 比較器仿真波形2.4頻率-高度轉(zhuǎn)換 根據(jù)H=A/f-B,以及前面計算得到的A,B的值,此模塊的實現(xiàn)只需要一個除法器和一個減法器來
9、實現(xiàn),除法運算使用Quartus II庫中的宏器件lpm_divide實現(xiàn),而減法運算自己用Verilog HDL語言編寫,生成Subtractor,具體代碼見下章。模擬電路及其仿真分別如下圖10,11。圖10 頻率-高度轉(zhuǎn)換仿真電路 圖 11 頻率-高度轉(zhuǎn)換仿真波形2.5 二進制-BCD碼轉(zhuǎn)換 由上一模塊(頻率高度轉(zhuǎn)換)輸出的高度為二進制數(shù),不便于在數(shù)碼管里進行顯示,因此需要將得到的二進制數(shù)轉(zhuǎn)換為BCD碼,Quartus II庫中無對應(yīng)的宏器件,因此該部分我們靠Verilog HDL語言實現(xiàn),具體代碼見下章。生成的binary_to_BCD如圖12,該器件的仿真波形見圖13. 圖12 二進制
10、-BCD碼轉(zhuǎn)換器圖13 二進制-BCD碼轉(zhuǎn)換器仿真波形2.6 數(shù)碼管和發(fā)光二極管顯示 由于采用的四位共陰極的掃描顯示數(shù)碼管,數(shù)碼管顯示需要包括兩個部分一個是用來掃描顯示數(shù)據(jù)的掃描,一個是用來為數(shù)碼管顯示譯碼。這個部分由Verilog HDL語言實現(xiàn),代碼見下章。 掃描部分由時鐘信號控制(因為芯片只提供50MHz的信號,需先進性分頻得到掃描所需的較小的時鐘信號),依次將千位、百位、十位、個位數(shù)的BCD碼不斷循環(huán)地單獨輸出,并同時選中對應(yīng)位的數(shù)碼管。 數(shù)碼管顯示譯碼部分我們通過編寫Verilog程序生成器件來實現(xiàn),該部分模擬電路如圖14.圖14 數(shù)碼管及發(fā)光二極管顯示部分仿真電路圖15 數(shù)碼管及發(fā)
11、光二極管顯示部分仿真波形 由于CPLD的輸出信號的驅(qū)動電流不夠大,不足以點亮或者不能點亮數(shù)碼管,所以在這里利用NPN三極管反相驅(qū)動數(shù)碼管,如圖16和圖17所示。 圖16 三極管控制下的LED顯示圖17 三極管控制下的數(shù)碼管顯示3.7 Quartus中的整體仿真電路及仿真波形我們小組完成了各個功能模塊的設(shè)計及仿真工作時,我們將每個模塊整合起來,完成了整體電路的設(shè)計工作,并進行了仿真和引腳鎖定。如圖18、19、20。圖18 整體設(shè)計方案Quartus電路圖 圖19 整體設(shè)計方案仿真波形圖20 整體設(shè)計方案引腳鎖定圖第3章 程序設(shè)計 水位計的設(shè)計制作過程中有很多宏器件是由Verilog HDL語言編
12、程而生成的,本章主要介紹生成這些元件的代碼。代碼一:比較器module led_count(data,led,cout);input15:0 data;output9:0 led;output cout;reg cout;reg9:0 led;always(data)beginif(data>16'd1983)beginled='b0000000000;cout=1'b0;endelse if(data>16'd1770)beginled='b0000000001;cout=1'b0;endelse if(data>16'
13、;d1198)beginled='b0000000011;cout=1'b0;endelse if(data>16'd946) beginled='b0000000111;cout=1'b0;endelse if(data>16'd885) beginled='b0000001111;cout=1'b0;endelse if(data>16'd772)beginled='b0000011111;cout=1'b0;endelse if(data>16'd710)beginle
14、d='b0000111111;cout=1'b0;endelse if(data>16'd677)beginled='b0001111111;cout=1'b0;endelse if(data>16'd618) beginled='b0011111111;cout=1'b0;endelse if(data>16'd587)beginled='b0111111111;cout=1'b0;endelse if(data>16'd542)beginled='b1111111
15、111;cout=1'b1;endelse if(data<16'd542&&data!=16'd0)beginled='b1111111111;cout=1'b1;endelsebeginled='b0000000000;cout=1'b0;endendendmodule代碼二:減法器直接調(diào)用LPN_ADD_SUB形成減法器,其圖如下所示:代碼三:二進制-BCD碼轉(zhuǎn)換器module B_to_D ( b,bcd,clk);parameter B_SIZE=8;input b;input clk;output bcd
16、;wire 19:0 b;reg 19:0 bin;reg 22:0 bcd;reg 22:0 result;always( b )beginbin=b;result=0;/*if(ena=0)bcd<=0;else*/repeat(15)beginresult0=bin15;if(result3:0>4)result3:0=result3:0+4'd3;if(result7:4>4)result7:4=result7:4+4'd3;if(result11:8>4)result11:8=result11:8+4'd3;if(result15:12
17、>4)result15:12=result15:12+4'd3;if(result19:16>4)result19:16=result19:16+4'd3;result=result<<1;bin=bin<<1;endresult0=bin15;if(result>'d553677) bcd<=0;else bcd<=result;/endendendmodule代碼四:數(shù)碼管顯示的掃描部分module scan2(clk,BCD_1,BCD_2,BCD_3,BCD_4,BCD_out_1,BCD_out_2,BCD
18、_out_3,BCD_out_4,data);input clk;/Sao?miao?clock?signal?input3:0 BCD_1,BCD_2,BCD_3,BCD_4;output BCD_out_1,BCD_out_2,BCD_out_3,BCD_out_4;/?Wei?Xuan?output3:0 data;/output2:0 sel;reg BCD_out_1,BCD_out_2,BCD_out_3,BCD_out_4;reg3:0 data;reg2:0 sel=3'b000; always(posedge clk) beginif(sel<3'b01
19、1) sel=sel+1;else sel=0;/Sao?Miao?endalways(sel or BCD_1 or BCD_2 or BCD_3 or BCD_4) begincase(sel)3'b000:begin data=BCD_1;BCD_out_1=1;BCD_out_2=0;BCD_out_3=0;BCD_out_4=0;end3'b001:begin data=BCD_2;BCD_out_1=0;BCD_out_2=1;BCD_out_3=0;BCD_out_4=0;end3'b010:begin data=BCD_3;BCD_out_1=0;BCD
20、_out_2=0;BCD_out_3=1;BCD_out_4=0;end3'b011:begin data=BCD_4;BCD_out_1=0;BCD_out_2=0;BCD_out_3=0;BCD_out_4=1;end/Wei?Xuan?Sao?Miao?endcase endendmodule代碼五:數(shù)碼管顯示的譯碼部分module BCD_Dec7(data_in,Dout);input3:0 data_in;output7:0 Dout;reg7:0 Dout;always(data_in)begincase(data_in)4'b0000:Dout<=8
21、9;b00111111;4'b0001:Dout<=8'b00000110;4'b0010:Dout<=8'b01011011;4'b0011:Dout<=8'b01001111;4'b0100:Dout<=8'b01100110;4'b0101:Dout<=8'b01101101;4'b0110:Dout<=8'b01111101;4'b0111:Dout<=8'b00000111;4'b1000:Dout<=8'b0
22、1111111;4'b1001:Dout<=8'b01101111;4'b1010:Dout<=8'b01110111;4'b1011:Dout<=8'b01111100;4'b1100:Dout<=8'b00111001;4'b1101:Dout<=8'b01011110;4'b1110:Dout<=8'b01111001;4'b1111:Dout<=8'b01110001;endcaseendendmodule第4章 PCB設(shè)計軟件部分設(shè)
23、計完成后,我們小組開始著手設(shè)計硬件部分電路,根據(jù)Quartus設(shè)計的整體電路圖,我們使用Altium Designer軟件完成PCB的繪制。由于繪制PCB圖之前需要先生成原理圖文件,故將原理圖文件放在本章與PCB圖一起作解釋說明。本次課程設(shè)計是基于EP2C8T144C8N芯片完成的,其原理圖符號如下:圖21 芯片原理圖經(jīng)過查閱資料和引腳鎖定編譯出錯等幾次查找錯誤后,我們了解到P2,P18,P76引腳不能直接使用,所以應(yīng)該在繪制原理圖時避開了這幾個引腳。圖22 整體原理圖圖25 整體PCB設(shè)計圖第5章 調(diào)試與測試(參數(shù)測試)一、A、B參數(shù)測試我們在測量A、B過程中,首先在MFB-4試驗箱中完成了
24、模擬實驗,并利用SPASS軟件直接計算出A和B的值,測量測試水位計過程中記錄的實際水位,顯示水位及亮燈個數(shù)對應(yīng)關(guān)系。測試數(shù)據(jù)如表1所示。實際水位分頻得值亮燈個數(shù)頻率(Hz)AB0-022478075810382019831171510758103830177021540017581038401198310422775810385094648233475810386088547440475810387077256701475810388071066168975810389067785885075810381006189537217581038110587105101475810381205421
25、047100758103813051210445197581038表1 MFB-4試驗箱實際水位測試數(shù)據(jù)記錄在我們小組測試過程中,我們在不同的地點測量都會有些許偏差,需要及時對于A、B參數(shù)進行調(diào)整,使其達(dá)到最合適的顯示水位效果。二、電路板焊接完成水位測試:圖27 水位計正面 圖28水位計反面圖 27、28是我們做好的水位計的正面和反面的實物照片。由于某些硬件方面的問題我們未能實現(xiàn)0誤差。表2便是測試水位計過程中記錄的實際水位,顯示水位及亮燈個數(shù)對應(yīng)關(guān)系。實際水位(mm)顯示水位(mm)LED亮燈個數(shù)誤差055350-2015125%3023223%404337.5%505244%606050%707364.2%807981.2%908793.3%10095105%110110100% 表2 實際水位測試數(shù)據(jù)記錄 第6章 結(jié)論與體會經(jīng)過20天的不懈努力,我們小組最終完成了水位顯示與控制的課程設(shè)計,看著我們做出來的實物和顯示效果,我們很激動也有些遺憾,回顧整個課程設(shè)計過程,我們小組總結(jié)如下:課題內(nèi)容:本設(shè)計課題為水位的顯示及控制,采用電容式傳感器,主要依靠CPL
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中秋節(jié)晚會主持詞【8篇】
- 光伏維護合同標(biāo)準(zhǔn)文本
- 人住房裝修合同標(biāo)準(zhǔn)文本
- 中式快餐簡易合同標(biāo)準(zhǔn)文本
- 個人旅游租車合同標(biāo)準(zhǔn)文本
- 共同做模具合同范例
- 個人車過戶合同標(biāo)準(zhǔn)文本
- 公募基金合同標(biāo)準(zhǔn)文本
- 2025費用標(biāo)準(zhǔn)招標(biāo)建筑工程合同
- 公司和策劃合同標(biāo)準(zhǔn)文本
- 跌倒墜床應(yīng)急演練
- 2024年保密知識測試試題庫(完整版)
- 2024年計算機軟考(高級)系統(tǒng)架構(gòu)設(shè)計師考試題庫大全(含真題等)
- 家庭教育指導(dǎo)實操
- 小題壓軸題專練23-立體幾何(動點問題)-2022屆高三數(shù)學(xué)一輪復(fù)習(xí)
- 物理學(xué)簡明教程馬文蔚等高教出版社
- 110KV變電站繼電保護設(shè)計畢業(yè)設(shè)計論文
- 2024年廣東東莞市公安局石排分局輔警招聘筆試參考題庫附帶答案詳解
- 肥料、農(nóng)藥采購服務(wù)供貨、制度保障及驗收方案
- (高清版)DZT 0203-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 稀有金屬類
- 中小學(xué)必背飛花令詩詞-(春、月、風(fēng)、花、山、江、人、日、動物、顏色、數(shù)字)
評論
0/150
提交評論