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

正文內(nèi)容

基于vhdl的數(shù)字電壓表設(shè)計(jì)學(xué)士學(xué)位論文(編輯修改稿)

2025-07-24 19:09 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 。 模擬輸入電壓與輸出電壓的對(duì)應(yīng)關(guān)系16進(jìn)制2進(jìn)制高4位電壓低4位電壓0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 A 1010 B 1011 C 1100 D 1101 E 1110 F 1111 BCD碼的運(yùn)算 由于編碼是將每個(gè)十進(jìn)制數(shù)用一組4位二進(jìn)制數(shù)來(lái)表示,因此,若將這種BCD碼直接交計(jì)算機(jī)去運(yùn)算,由于計(jì)算機(jī)總是把數(shù)當(dāng)作二進(jìn)制數(shù)來(lái)運(yùn)算,所以結(jié)果可能會(huì)出錯(cuò)。 解決的辦法是對(duì)二進(jìn)制加法運(yùn)算的結(jié)果采用加6修正,這種修正稱(chēng)為BCD調(diào)整。即將二進(jìn)制加法運(yùn)算的結(jié)果修正為BCD碼加法運(yùn)算的結(jié)果,兩個(gè)兩位BCD數(shù)相加時(shí),對(duì)二進(jìn)制加法運(yùn)算結(jié)果采用修正規(guī)則進(jìn)行修正。修正規(guī)則: (1)如果任何兩個(gè)對(duì)應(yīng)位BCD數(shù)相加的結(jié)果向高一位無(wú)進(jìn)位,若得到的結(jié)果小于或等于9,則該不需修正。若得到的結(jié)果大于9且小于16時(shí),該位進(jìn)行加6修正。 (2)如果任何兩個(gè)對(duì)應(yīng)位BCD數(shù)相加的結(jié)果向高一位有進(jìn)位時(shí)(即結(jié)果大于或等于16),該位進(jìn)行加6修正. (3)低位修正結(jié)果使高位大于9時(shí),高位進(jìn)行加6修正 從表中得到的模擬電壓值必須用BCD碼表示才能便于用LED數(shù)碼管顯示。例如,ADC0809的DB0~DB7是89H(10001001B),高4位HB是1000,低4位LB是1001,,寫(xiě)成BCD碼是0010,0101,0110;,寫(xiě)成BCD碼是0000,0001,,求的BCD碼的運(yùn)算如下: HB 0010 0101 0110 LB 0000 0001 1000 +進(jìn)位 1 0110 結(jié)果 0010 0111 0100 譯碼,顯示電路 對(duì)多位數(shù)字顯示采用掃描式顯示可以節(jié)電,這一點(diǎn)在某些場(chǎng)合很重要。對(duì)于某些系統(tǒng)輸出的的數(shù)據(jù),應(yīng)用掃描式譯碼顯示,可使電路大為簡(jiǎn)化。有些系統(tǒng),比如計(jì)算機(jī),某些A/D轉(zhuǎn)換器,是以這樣的形式輸出數(shù)據(jù)的:由選通信號(hào)控制多路開(kāi)關(guān),先后送出(由高位到低位或由低位到高位)一位十進(jìn)制的BCD碼選通信號(hào)可用節(jié)拍發(fā)生器產(chǎn)生。(1)譯碼、顯示電路可以采用動(dòng)態(tài)掃描顯示和靜態(tài)顯示兩種方法。這里采用動(dòng)態(tài)顯示。(2)動(dòng)態(tài)顯示的字位更新采用一個(gè)計(jì)數(shù)器頻率約為125Hz的信號(hào)輪流接通各位數(shù)碼管的位線,并對(duì)顯示字符進(jìn)行掃描,應(yīng)保證顯示不閃爍。5 功能模塊 ADC0809(ad)功能:利用ADC0809作為電壓采樣端口,進(jìn)行A/D轉(zhuǎn)換。library ieee。use 。use 。entity ad isport(clk:in std_logic。 eoc:in std_logic。 datain:in std_logic_vector(7 downto 0)。 dataout:out std_logic_vector(7 downto 0)。 oe:out std_logic。 ale:out std_logic。 start:out std_logic。 add:out std_logic_vector(2 downto 0))。end ad。architecture one of ad istype states is(st0,st1,st2,st3,st4)。 signal current_state,next_state:states:=st0。signal temp:std_logic_vector(7 downto 0)。signal lock:std_logic。begin add=001。 dataout=temp。 process(current_state,eoc)begin case current_state iswhen st0=ale=39。039。start=39。039。oe=39。039。lock=39。039。next_state=st1。when st1=ale=39。139。start=39。139。oe=39。039。lock=39。039。next_state=st2。when st2=ale=39。039。start=39。039。oe=39。039。lock=39。039。if (eoc=39。139。)then next_state=st3。 else next_state=st2。 end if。when st3=ale=39。039。start=39。039。oe=39。139。lock=39。139。 next_state=st4。when st4=ale=39。039。start=39。039。oe=39。139。lock=39。139。 next_state=st0。 end case。 end process。process(clk)begin if(clk 39。event and clk=39。139。) then current_state=next_state。 end if。end process。process(lock)begin if lock=39。139。 and lock 39。event then temp=datain。 end if。 end process。end one。狀態(tài)機(jī)設(shè)計(jì)是一類(lèi)重要的時(shí)序電路,是許多邏輯電路的核心部件,是實(shí)現(xiàn)高效率、高可靠性邏輯控制的重要途徑。盡管狀態(tài)機(jī)的設(shè)計(jì)理論并沒(méi)有增加多少新的內(nèi)容,但EDA工具的發(fā)展使?fàn)顟B(tài)機(jī)的設(shè)計(jì)技術(shù)和實(shí)現(xiàn)方法有了新的內(nèi)容。一般狀態(tài)機(jī)分類(lèi)為以下兩種:MOORE型狀態(tài)機(jī):它的輸出僅僅取決于現(xiàn)態(tài),與輸入無(wú)關(guān)。MEALY型狀態(tài)機(jī):它的輸出不僅僅取決于現(xiàn)態(tài),還與輸入有關(guān)。盡管狀態(tài)機(jī)的表達(dá)方式和功能不盡相同,但都有相對(duì)固定的語(yǔ)句和程序結(jié)構(gòu)。 上述程序中用CaseWhen語(yǔ)句構(gòu)成了一個(gè)Moore狀態(tài)機(jī),將信號(hào)oe設(shè)定為高電位,這樣在下一個(gè)脈沖信號(hào)clk正沿時(shí),才開(kāi)始讀取ADC0809上的數(shù)字轉(zhuǎn)換信號(hào)。 ADC0809模塊原理圖: ADC0809功能仿真時(shí)序圖:Datain、EOC、CLK:輸入端Dataut、OE、ALE、START、ADD:輸出端當(dāng)輸入時(shí)鐘信號(hào)時(shí),八位數(shù)字量在EOC有高電位變?yōu)榈碗娢粫r(shí),標(biāo)志著A/D轉(zhuǎn)換結(jié)束。當(dāng)oe為上升沿時(shí),在dataout輸出對(duì)應(yīng)的datain值。 Dataprocess功能:將采樣數(shù)字量轉(zhuǎn)換成3位BCD碼。library ieee。use 。use 。entity dataprocess isport(b_datain:in std_logic_vector(7 downto 0)。 b_dataout:out std_logic_vector(11 downto 0))。end dataprocess。architecture one of dataprocess issignal middata:std_logic_vector(7 downto 0)。signal vdata:std_logic_vector(11 downto 0)。signal hdata:std_logic_vector(11 downto 0)。signal ldata:std_logic_vector(11 downto 0)。signal c0:std_logic。signal c1:std_logic。signal c2:std_logic。begin middata=b_datain。 (1)For A/D Conversion Data High Byte hdata=010010000000when middata(7 downto 4)=1111else 010001001000when middata(7 downto 4)=1110else 010000010110when middata(7 downto 4)=1101else 001110000100when middata(7 downto 4)=1100else 001101010010when middata(7 downto 4)=1011else 001100100000when middata(7 downto 4)=1010else 001010001000when middata(7 downto 4)=1001else 001001010110when middata(7 downto 4)=1000else 001000100100when middata(7 downto 4)=0111else 000110010010when middata(7 downto 4)=0110else 000101100000when middata(7 downto 4)=0101else 000100101000when middata(7 downto 4)=0100else 000010010110when middata(7 downto 4)=0011else 000001100100when middata(7 downto 4)=0010else 000000110010when middata(7 downto 4)=0001else 000000000000。 For A/D Conversion Data Low Byte ldata=000000110000when middata(3 downto 0)=1111else 000000101000when middata(3 downto 0)=1110else 000000100100when middata(3 downto 0)=1101else 000000100100when middata(3 downto 0)=1100else 000000100010when middata(3 downto 0)=1011else 000000100000when middata(3 downto 0)=1010else 000000011000when middata(3 downto 0)=1001else 000000010110when middata(3 downto 0)=1000else 000000010100when middata(3 downto 0)=0111else 000000010010when middata(3 downto 0)=0110else 000000010000when middata(3 downto 0)=0101else 000000001000when middata(3 downto 0)=0100else 000000000110when middata(3 downto 0)=0011else 000000000100when middata(3 downto 0)=0010else 000000000010when middata(3 downto 0)=0001else 000000000000。 (3)Check BCD Addition Carryc0=39。139。 when hdata(3 downto 0)+ldata(3 downto 0)01001 else 39。039。c1=39。139。 when hdata(7 downto 4)+ldata(7 downto 4)01001 else 39。039。c2=39。139。 when hdata(11 downto 8)+ldata(11 downto
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1