基于的數(shù)字電壓表設(shè)計(jì)_第1頁
基于的數(shù)字電壓表設(shè)計(jì)_第2頁
基于的數(shù)字電壓表設(shè)計(jì)_第3頁
基于的數(shù)字電壓表設(shè)計(jì)_第4頁
基于的數(shù)字電壓表設(shè)計(jì)_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、(優(yōu)選)基于的數(shù)字電壓表設(shè)計(jì)第一頁,共二十三頁。實(shí)驗(yàn)設(shè)計(jì)思路數(shù)字電壓表設(shè)計(jì)核心:FPGA設(shè)計(jì),F(xiàn)PGA負(fù)責(zé)ADC0809的啟動以及轉(zhuǎn)換數(shù)據(jù)的讀取,再將讀取的8位二進(jìn)制數(shù)據(jù)進(jìn)行變換,形成便于輸出的3位LED段碼送給LED數(shù)碼管,顯示被測電壓值。FPGA的設(shè)計(jì)主要包括幾個(gè)部分: ADC0809轉(zhuǎn)換控制模塊實(shí)現(xiàn)ADC0809的啟動以及轉(zhuǎn)換數(shù)據(jù)的讀取;數(shù)據(jù)處理模塊實(shí)現(xiàn)ADC0809 4位數(shù)字量對應(yīng)BCD碼的變換和處理;顯示控制模塊實(shí)現(xiàn)LED段碼譯碼輸出。第二頁,共二十三頁。ADC0809與FPGA接口電路 ADC0809是CMOS的8位A/D轉(zhuǎn)換器,片內(nèi)有8路模擬開關(guān),可控制8個(gè)模擬量中的一個(gè)進(jìn)入轉(zhuǎn)換

2、器中。ADC0809的精度是8位,轉(zhuǎn)換時(shí)間約為100s,含鎖存控制的8路開關(guān),輸出有三態(tài)緩沖控制,單5V電源供電。 第三頁,共二十三頁。FPGA與ADC0809接口電路原理圖 第四頁,共二十三頁。ADC0809與FPGA接口電路設(shè)計(jì)IO_B13、B4、B12、B7、B14、B15、B16、B17接收ADC0809 8位數(shù)數(shù)據(jù);IO_B10接收ADC0809 轉(zhuǎn)換結(jié)束信號EOC;IO_B21、B20、B19為ADC0809提供8路模擬信號開關(guān)的3位地址選通信號(ADD-AC);IO_B18為ADC0809提供地址鎖存控制信號ALE:高電平時(shí)把三個(gè)地址信號送入地址鎖存器,并經(jīng)譯碼器得到地址輸出,以

3、選擇相應(yīng)的模擬輸入通道;接下頁第五頁,共二十三頁。IO_B6為ADC0809提供輸出允許控制信號ENABLE:電平由低變高時(shí),打開輸出鎖存器,將轉(zhuǎn)換結(jié)果的數(shù)字量送到數(shù)據(jù)總線上;IO_B11為ADC0809提供啟動控制信號START:一個(gè)正脈沖過后A/D開始轉(zhuǎn)換;IO_B5為ADC0809提供時(shí)鐘信號信號CLOCK;IN0IN7:8路模擬信號輸入端口;Vref+和Vref-:參考電壓輸入端口;第六頁,共二十三頁。ADC0809 VHDL采樣控制程序設(shè)計(jì)第七頁,共二十三頁。ADC0809的工作時(shí)序圖 第八頁,共二十三頁。START是轉(zhuǎn)換啟動信號,一個(gè)正脈沖過后A/D開始轉(zhuǎn)換;ALE是3位通道選擇地

4、址(ADDC、ADDB、ADDA)信號鎖存信號。當(dāng)模擬量送至某一輸入端(如IN-0或IN-1)等,由3位地址信號選擇,而地址信號由ALE鎖存。EOC是轉(zhuǎn)換情況狀態(tài)信號,當(dāng)啟動轉(zhuǎn)換約100s后,EOC產(chǎn)生一個(gè)負(fù)脈沖,以示轉(zhuǎn)換結(jié)束。在EOC的上升沿后,且輸出使能信號ENABLE為高電平,則控制打開三態(tài)緩沖器,把轉(zhuǎn)換好的8位數(shù)據(jù)送至數(shù)據(jù)總線。至此ADC0809的一次轉(zhuǎn)換結(jié)束 第九頁,共二十三頁。 ADC0809采樣控制狀態(tài)圖 FPGA器件可以根據(jù)其采樣時(shí)序用狀態(tài)機(jī)來描述采樣控制過程,其狀態(tài)轉(zhuǎn)換關(guān)系 如左圖所示。第十頁,共二十三頁。 ADC0809 VHDL采樣控制程序 第十一頁,共二十三頁。 ADC

5、0809采樣控制程序電路符號 第十二頁,共二十三頁。程序的端口信號與中間信號entity ADC0809 is port ( d : in std_logic_vector(7 downto 0); -ADC0809輸出的采樣數(shù)據(jù) clk,eoc : in std_logic; -clk為系統(tǒng)時(shí)鐘,eoc為ADC0809轉(zhuǎn)換結(jié)束信號clk1,start, ale,en: out std_logic; -ADC0809控制信號 abc_in :in std_logic_vector(2 downto 0); -模擬選通信號abc_out :out std_logic_vector(2 downt

6、o 0); -ADC0809模擬信號選通信號 q : out std_logic_vector(7 downto 0); -送至8個(gè)并排數(shù)碼管信號end ADC0809; architecture behav of ADC0809 is type states is ( st0,st1, st2, st3, st4,st5,st6); -定義各狀態(tài)的子類型signal current_state, next_state:states:=st0;signal regl :std_logic_vector(7 downto 0); -中間數(shù)據(jù)寄存信號signal qq:std_logic_vect

7、or(7 downto 0);begin第十三頁,共二十三頁。狀態(tài)轉(zhuǎn)換模塊(com )case current_state is when st0=next_state=st1;ale=0;start=0;ennext_state=st2;ale=1;start=0;ennext_state=st3;ale=0;start=1;en ale=0;start=0;en=0; if eoc=1 then next_state=st3; -檢測EOC的下降沿 else next_state ale=0;start=0;en=0; if eoc=0 then next_state=st4; -檢測EO

8、C的上升沿 else next_statenext_state=st6;ale=0;start=0;ennext_state=st0;ale=0;start=0;en=1;regl next_state=st0;ale=0;start=0;en=0; end case;第十四頁,共二十三頁。分頻模塊(clock)clock:process(clk) -對系統(tǒng)時(shí)鐘進(jìn)行分頻,得到ADC0809轉(zhuǎn)換工作時(shí)鐘begin if clkevent and clk=1 then qq=qq+1; -在clk1的上升沿,轉(zhuǎn)換至下一狀態(tài)if QQ=01111111 THEN clk1=1; current_st

9、ate =next_state; elsif qq=01111111 then clk1=0; end if; end if;end process;q=regl; abc_out=abc_in; end behav; 第十五頁,共二十三頁。 顯示模塊 第十六頁,共二十三頁。顯示模塊library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity valconv isport( q:in std_logic_vector(7 downto 0)

10、; -ada:out std_logic_vector(6 downto 0); -小數(shù)點(diǎn)后第2位b:out std_logic_vector(6 downto 0); -小數(shù)點(diǎn)后第1位c:out std_logic_vector(6 downto 0); -個(gè)位end valconv;第十七頁,共二十三頁。顯示模塊architecture bhv of valconv is signal var1,var2,var3:integer; -分別對應(yīng)將二進(jìn)制數(shù)據(jù)轉(zhuǎn)化為十進(jìn)制beginprocess(q) -數(shù)據(jù)讀出時(shí)轉(zhuǎn)化成十進(jìn)制并顯示beginvar1=50*CONV_INTEGER(q)/2550; -計(jì)算個(gè)位var2=50*CONV_INTEGER(q)/255 rem 10; -計(jì)算小數(shù)點(diǎn)后第一位var3

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論