新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的數(shù)字溫度測量儀設(shè)計與實現(xiàn)

基于FPGA的數(shù)字溫度測量儀設(shè)計與實現(xiàn)

作者: 時間:2012-08-09 來源:網(wǎng)絡(luò) 收藏

1.3 控制模塊
通過控制模塊,將從DS18B20讀取的二進制溫度信息傳給數(shù)制轉(zhuǎn)換模塊,如圖6所示。

本文引用地址:http://m.butianyuan.cn/article/190050.htm

h.JPG


程序中設(shè)定了三個狀態(tài)(清除clear、使能enable、顯示display),當(dāng)ena為‘1’時,狀態(tài)從顯示轉(zhuǎn)到清除;ena為‘0’時,狀態(tài)一直為顯示,把輸入數(shù)據(jù)win[11..1]從輸出端口wout[11..1]輸出到下一模塊,之間的轉(zhuǎn)換關(guān)系如圖7所示。

i.JPG


控制模塊仿真結(jié)果如圖8所示。
圖8中,clock輸入為1 MHz信號,經(jīng)過500分頻后,得到頻率為1kHz的信號clk lk,此時累加器cnt0為‘0’。當(dāng)cnt0為‘1’時,系統(tǒng)狀態(tài)由原來的清除狀態(tài)轉(zhuǎn)變?yōu)槭鼓軤顟B(tài),此時enb為‘1’,cnt0進行累加;當(dāng)cnt0=‘1’時,系統(tǒng)狀態(tài)從使能狀態(tài)轉(zhuǎn)變到顯示狀態(tài),系統(tǒng)就把win[11..1]輸入的數(shù)據(jù)通過wout[11..1]輸出到下一模塊。
1.4 數(shù)制轉(zhuǎn)換模塊
利用數(shù)制轉(zhuǎn)換模塊將輸入的11位二進制的溫度數(shù)據(jù)轉(zhuǎn)換為3位十進制表示,如圖9所示。

j.JPG


圖9中,clear為清零輸入端口,enable為使能輸入端口,indata[11..1]為數(shù)據(jù)輸入端口,b1『3..0]、b2[3..0]、b3[3..0]為三個輸出端口。如果clear輸入信號為‘1’時,程序?qū)⑶宄龝捍婕拇嫫髦袛?shù)據(jù);反之則不清除。enable輸入信號出現(xiàn)上升沿時,程序開始進行數(shù)制轉(zhuǎn)換,并通過b1[3..0]、b2[3..0]、b3[3..0]端口將得到的十進制數(shù)輸出到相應(yīng)的顯示模塊中。數(shù)制轉(zhuǎn)換模塊仿真見圖10。

k.JPG


由圖10知,輸入數(shù)據(jù)為“010011 10000”,clear端為低電平,當(dāng)enable信號有上升沿時,數(shù)據(jù)開始轉(zhuǎn)換。轉(zhuǎn)換后數(shù)據(jù)為b1=0、b2=9、b3=3,符合設(shè)計值。



關(guān)鍵詞: FPGA 數(shù)字溫度 測量儀

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉