2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  溫度顯示及控制電路</b></p><p><b>  溫度顯示及控制電路</b></p><p><b>  一,溫度測量電路</b></p><p>  測溫電路采用3線式測溫電路,在電路中,熱敏電阻為鉑熱電阻RT,RT與R1、R2、R3組成橋路。電路中由于導(dǎo)線存在電

2、阻,會給測量帶來誤差,用三線測量法會減小誤差。如果電纜中的導(dǎo)線的種類相同,導(dǎo)線電阻相等,溫度系數(shù)也是一樣的,應(yīng)此,即使電纜長度改變,溫度系數(shù)也一起跟著改變,以實現(xiàn)溫度補償。放大電路經(jīng)常采用三運放構(gòu)成儀用放大器,這種放大器的輸入阻抗高,共模抑制比大。經(jīng)放大器放大后的信號,一般要由折線近似的模擬電路或A/D轉(zhuǎn)換器構(gòu)成數(shù)據(jù)表,進(jìn)行線形化。因為R1的阻值比RT要大的多,所以RT變動時的非線性對溫度特性影響非常小。注意要將R2兩端的基準(zhǔn)電壓調(diào)為準(zhǔn)

3、確的20V。</p><p><b>  溫度測量電路</b></p><p><b>  二,模數(shù)轉(zhuǎn)換電路</b></p><p>  在測溫電路中,溫度改變會引起熱敏電阻的變化,通過測溫電路將電阻量轉(zhuǎn)換為電壓量,在模數(shù)轉(zhuǎn)換中,需要將電壓量轉(zhuǎn)換為數(shù)字溫度量而直觀的顯示出來。</p><p>  A

4、DC0804的基本參數(shù):電源電壓Vcc為+5V;輸入模擬電壓為8路,帶8選1的多路選擇開關(guān),輸入電壓范圍為0~5V;8為分辨率;線性誤差為±1LSB。</p><p>  當(dāng)?shù)刂锋i存允許信號ALE變1時,3位地址代碼送入地址譯碼器后,與地址代碼相對應(yīng)的一路模擬信號送入A/D轉(zhuǎn)換器;當(dāng)ALE變0時,地址被鎖存,在轉(zhuǎn)換結(jié)束前送不進(jìn)新的地址。當(dāng)啟動脈沖START上升時,將逐次比較器清零,下降沿到達(dá)時,開始A/

5、D轉(zhuǎn)換,變換時間為100us。轉(zhuǎn)換結(jié)束時,將8位數(shù)字信號鎖存于三態(tài)輸出緩沖器中,并使EOC信號變高表示轉(zhuǎn)換結(jié)束。同時輸出允許信號OE給出一個正脈沖,A/D值送到數(shù)據(jù)輸出端。</p><p>  圖為ADC0804與CPLD的連接方式:</p><p><b>  數(shù)模轉(zhuǎn)換電路</b></p><p>  下圖是ADC0804的工作波形,可用CP

6、LD實現(xiàn)對A\D轉(zhuǎn)換的控制,并將轉(zhuǎn)換結(jié)果讀入CPLD中變換為溫度顯示值,送入顯示電路。</p><p>  ADC0804的工作波形</p><p>  求取樣數(shù)字量與溫度的對應(yīng)值的方法一般用公式法和查表法。例如:8位數(shù)字量DB7~DB0從00H變到FFH對應(yīng)溫度從0oC變到100oC,用公式法計算則:溫度T=(DB0~DB7)*100 oC /FFH,需進(jìn)行乘、除法運算,用可編程器件實現(xiàn)

7、是不具優(yōu)勢的。另一種方法是查表,即把取樣值DB0~DB7按照模擬輸入電壓與溫度的關(guān)系編出一個表格,每輸入一組取樣數(shù)字量DB0~DB7,則直接讀取相應(yīng)的溫度值送到顯示器顯示出來。具體的實現(xiàn)方法則可以使用存儲器,也可以用CPLD制造一個完成查表功能的硬件模塊。如果采用存儲器,則將A/D取樣值的DB0~DB7作存儲器地址,相應(yīng)的溫度值則是存儲單元中的數(shù)據(jù)。</p><p>  下面CPLD的程序代碼(帶標(biāo)注),程序分為

8、組合進(jìn)程和時序進(jìn)程兩部分,組合進(jìn)程實現(xiàn)ADC0804工作所需的各項控制信號,時序進(jìn)程實現(xiàn)現(xiàn)態(tài)到次態(tài)的轉(zhuǎn)換。</p><p>  CPLD的程序代碼:(VHDL)</p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC

9、_ARITH.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY temp IS</p><p><b>  PORT(</b></p><p>  Din:IN STD_LOGIC_VECTOR(7 DOWNTO 0);</p>

10、<p>  Dout:OUT STD_LOGIC_VECTOR(11 DOWNTO 0);</p><p>  CP:IN STD_LOGIC;</p><p>  Rst:IN STD_LOGIC;</p><p>  Ncs,Nwr,Nrd,:OUT STD_LOGIC;</p><p>  Nintr:IN STD_LOGI

11、C);</p><p><b>  END temp;</b></p><p>  ARCHITECTURE behav OF temp IS</p><p>  TYPE STATE_TYPE IS(S0,S1,S2,S3);</p><p>  SIGNAL State:STATE_TYPE;</p>

12、<p>  SIGNAL EC,Nin:STD_LOGIC;</p><p>  SIGNAL D:STD_LOGIC_VECTOR(7 DOWNTO 0);</p><p>  SIGNAL Value:STD_LOGIC_VECTOR(11 DOWNTO 0);</p><p><b>  BEGIN</b></p>

13、<p>  System Connection:BLOCK</p><p><b>  BEGIN</b></p><p>  Nin<=Nintr;</p><p>  Dout<=Value;</p><p>  END BLOCK System Connection;</p>

14、<p><b>  bk1:Block</b></p><p><b>  BEGIN</b></p><p>  Nin<=Nintr;</p><p>  Dout<=Value;</p><p>  End Block bk1;</p><p>&

15、lt;b>  bk2:Block</b></p><p><b>  BEGIN</b></p><p>  PROCESS(CP,Rst)</p><p><b>  BEGIN</b></p><p>  IF Rst='1'THEN</p>&l

16、t;p><b>  Ncs<='1';</b></p><p><b>  Nwr<='1';</b></p><p><b>  Nrd<='1';</b></p><p><b>  EC<='0

17、9;;</b></p><p>  State<=S0;</p><p>  ELSIF CP'EVENT AND CP='1'THEN</p><p>  CASE State IS</p><p><b>  WHEN S0=></b></p><p

18、><b>  Ncs<='0';</b></p><p><b>  Nwr<='0';</b></p><p><b>  Nrd<='1';</b></p><p><b>  EC<='0';

19、</b></p><p>  State<=S1;</p><p><b>  WHEN S1=></b></p><p><b>  Ncs<='1';</b></p><p><b>  Nwr<='1';</b

20、></p><p><b>  Nrd<='1';</b></p><p><b>  EC<='0';</b></p><p>  IF Nin='0'THEN</p><p>  State<=S2;</p>

21、<p><b>  END IF;</b></p><p><b>  WHEN S2=></b></p><p><b>  Ncs<='0';</b></p><p><b>  Nwr<='1';</b></

22、p><p><b>  Nrd<='0';</b></p><p><b>  EC<='1';</b></p><p>  State<=S3;</p><p><b>  WHEN S3=></b></p>

23、<p><b>  Ncs<='1';</b></p><p><b>  Nwr<='1';</b></p><p><b>  Nrd<='1';</b></p><p><b>  EC<='0&

24、#39;;</b></p><p>  State<=S0;</p><p>  WHEN OTHERS=></p><p>  State<=S0;</p><p><b>  END CASE;</b></p><p><b>  END IF;<

25、/b></p><p>  END PROCESS;</p><p>  END BLOCK bk2;</p><p><b>  bk3:Block</b></p><p><b>  BEGIN</b></p><p>  PROCESS(CP)</p>

26、<p><b>  BEGIN</b></p><p>  IF CP'EVENT AND CP='1'THEN</p><p>  IF EC='1'THEN</p><p><b>  D<=Din;</b></p><p><b

27、>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  END BLOCK bk3;</p><p>  (注:1,bk1、bk2、bk3為ADC0804取樣控制的VHDL描述。以下bk4為將取樣數(shù)字量轉(zhuǎn)換為3為

28、BCD碼:</p><p><b>  編程說明</b></p><p>  (1)8位數(shù)字量DB0-DB7如何變成3位BCD碼?通常采用乘除運算,但用CPLD/FPGA實現(xiàn)乘除運算是很耗資源的。因此采用查表方法求取DB0-DB7與模擬溫度量0~100oC的對應(yīng)關(guān)系。表中將8位數(shù)字量分成高4位HB和低4位LB,這樣每個4位碼的編碼都是從0000-1111的16組碼,由

29、于100oC被8位二進(jìn)制碼的最大值除得到的結(jié)果是0.04oC,即數(shù)字量每增大1LSB對應(yīng)的模擬溫度量增大0.04oC。</p><p><b>  溫度與數(shù)字量的關(guān)系</b></p><p> ?。?)從表中得到的溫度值必須用BCD碼表示才能便于用LED數(shù)碼管顯示。</p><p>  例如來自ADC0804的DB0~DB7是89H(1000

30、1001B),高4位HB是1000,低4位LB是1001。從表中查到高4位1000對應(yīng)的溫度值是51.2oC,寫成BCD碼是0101、0001、0010;低4位1001對應(yīng)的溫度量是3.6oC,寫成BCD碼就是0000、0011、0110。其和是54.8oC。求得對應(yīng)的BCD碼的運算如下:</p><p>  HB 0101 0001 0010</p><p>  LB

31、0000 0011 0110</p><p>  + 進(jìn)位 1 1</p><p>  —————————————————</p><p>  結(jié)果 0101 0100 1000</p><p>  從上式可見,在每位BCD碼的“和”超過9時,必須進(jìn)行結(jié)果調(diào)整,才能得到正確的BCD碼。這樣需在運

32、算中判斷是否有進(jìn)位的產(chǎn)生,將DB3~DB0、DB7~DB4、DB11~DB8三位BCD碼的進(jìn)位分別設(shè)為C30、C74、C118,若判斷某1位BCD碼的“和”超過9時則對應(yīng)的進(jìn)位為1,需將結(jié)果調(diào)整,若為零則不調(diào)整。</p><p>  2,bk4為8位數(shù)字量到3位BCD碼的VHDL描述)</p><p><b>  bk4:Block</b></p>&l

33、t;p>  SIGNAL V:STD_LOGIC_VECTOR(7 DOWNTO 0);</p><p>  SIGNAL HB,LB:STD_LOGIC_VECTOR(11 DOWNTO 0);</p><p>  SIGNAL C30,C74,C118:STD_LOGIC;</p><p><b>  BEGIN</b></p&

34、gt;<p><b>  V<=D;</b></p><p>  HB<="100001100000"WHEN V(7 DOWNTO 4)="1111"ELSE</p><p>  "100010010110"WHEN V(7 DOWNTO 4)="1110"EL

35、SE</p><p>  "100000110010"WHEN V(7 DOWNTO 4)="1101"ELSE</p><p>  "011101101000"WHEN V(7 DOWNTO 4)="1100"ELSE</p><p>  "011100000100"

36、;WHEN V(7 DOWNTO 4)="1011"ELSE</p><p>  "011001000000"WHEN V(7 DOWNTO 4)="1010"ELSE</p><p>  "010101110110"WHEN V(7 DOWNTO 4)="1001"ELSE</p&g

37、t;<p>  "010100010010"WHEN V(7 DOWNTO 4)="1000"ELSE</p><p>  "010001001000"WHEN V(7 DOWNTO 4)="0111"ELSE</p><p>  "001110000100"WHEN V(7

38、DOWNTO 4)="0110"ELSE</p><p>  "001100100000"WHEN V(7 DOWNTO 4)="0101"ELSE</p><p>  "001001010110"WHEN V(7 DOWNTO 4)="0100"ELSE</p><p&

39、gt;  "000110010010"WHEN V(7 DOWNTO 4)="0011"ELSE</p><p>  "000100101000"WHEN V(7 DOWNTO 4)="0010"ELSE</p><p>  "000001100100"WHEN V(7 DOWNTO 4)=

40、"0001"ELSE</p><p>  "000000000000";</p><p>  LB<="000001100000"WHEN V(3 DOWNTO 0)="1111"ELSE</p><p>  "000001010010"WHEN V(3 DOW

41、NTO 0)="1110"ELSE</p><p>  "000001001000"WHEN V(3 DOWNTO 0)="1101"ELSE</p><p>  "000001001000"WHEN V(3 DOWNTO 0)="1100"ELSE</p><p>

42、  "000001000100"WHEN V(3 DOWNTO 0)="1011"ELSE</p><p>  "000001000000"WHEN V(3 DOWNTO 0)="1010"ELSE</p><p>  "000000110110"WHEN V(3 DOWNTO 0)=&qu

43、ot;1001"ELSE</p><p>  "000000110110"WHEN V(3 DOWNTO 0)="1000"ELSE</p><p>  "000000101000"WHEN V(3 DOWNTO 0)="0111"ELSE</p><p>  "00

44、0000100100"WHEN V(3 DOWNTO 0)="0110"ELSE</p><p>  "000000100000"WHEN V(3 DOWNTO 0)="0101"ELSE</p><p>  "000000010110"WHEN V(3 DOWNTO 0)="0100&qu

45、ot;ELSE</p><p>  "000000010010"WHEN V(3 DOWNTO 0)="0011"ELSE</p><p>  "000000001000"WHEN V(3 DOWNTO 0)="0010"ELSE</p><p>  "000000000100

46、"WHEN V(3 DOWNTO 0)="0001"ELSE</p><p>  "000000000000";</p><p>  C30<='1'WHEN HB(3 DOWNTO 0)+LB(3 DOWNTO 0)>"01001"ELSE'0';</p>&l

47、t;p>  C74<='1'WHEN HB(7 DOWNTO 4)+LB(7 DOWNTO 4)>"01001"ELSE'0';</p><p>  C118<='1'WHEN HB(11 DOWNTO 8)+LB(11 DOWNTO 8)>"01001"ELSE'0';</

48、p><p>  Value(3 DOWNTO 0)<=HB(3 DOWNTO 0)+LB(3DOWNTO 0)+"0110"WHEN C30='1'ELSE</p><p>  HB(3 DOWNTO 0)+LB(3 DOWNTO 0);</p><p>  Value(7 DOWNTO 4)<=HB(7 DOWNTO 4

49、)+LB(7 DOWNTO 4)+"0111"WHEN C74='1'AND C30='0'ELSE</p><p>  HB(7 DOWNTO 4)+LB(7 DOWNTO 4)+"0110"WHEN C74='1'AND C30='0'ELSE</p><p>  HB(7 DOWN

50、TO 4)+LB(7 DOWNTO 4)+"0001"WHEN C74='1'AND C30='1'ELSE</p><p>  HB(7 DOWNTO 4)+LB(7 DOWNTO 4);</p><p>  Value(11 DOWNTO 8)<=HB(11 DOWNTO 8)+LB(11 DOWNTO 8)+"011

51、1"WHEN C118='1'AND C74='1'ELSE</p><p>  HB(11 DOWNTO 8)+LB(11 DOWNTO 8)+"0110"WHEN C118='1'AND C74='0'ELSE</p><p>  HB(11 DOWNTO 8)+LB(11 DOWNTO 8)

52、+"0001"WHEN C118='0'AND C74='1'ELSE</p><p>  HB(11 DOWNTO 8)+LB(11 DOWNTO 8);</p><p>  END BLOCK bk4;</p><p><b>  三,時鐘電路</b></p><p&g

53、t;  由于CPLD工作時需要時鐘脈沖,在此時鐘脈沖由555定時器組成的方波發(fā)生器提供。</p><p>  如圖所示,電路由555、VT1、VT2、R11、R12、R14、C1組成一個無穩(wěn)態(tài)多諧振器。從圖中我們可以看出,電容器C1的充電和放電回路獨立分開,在調(diào)節(jié)R14時,只會改變其充放電時間常數(shù),不會改變其振蕩頻率。在C1充電到(2/3)VDD閾值電平之前,3腳呈高電平,即t1期間,VT2導(dǎo)通,VT1飽和導(dǎo)通,

54、故RVT1呈現(xiàn)的阻抗很小,即充電時間</p><p>  t1=0.693(RVT1+R11+R14左)C1</p><p>  t2=0.693(R12+R14右)C1</p><p>  T=t1+t2=0.693(RVT1+R11+R12+RP1)C1</p><p><b>  DR=t1/T</b></p

55、><p>  調(diào)節(jié)RP1,可使占空比在2%~98%范圍內(nèi)變化,而周期不變。</p><p>  下圖為由555定時器組成的時鐘電路,其中555定時器的引腳如下:</p><p><b>  1,GND</b></p><p><b>  2,TRIG</b></p><p>&l

56、t;b>  3,Q-輸出</b></p><p><b>  4,R</b></p><p><b>  5,CVolt</b></p><p><b>  6,THR</b></p><p><b>  7,DIS</b></p&

57、gt;<p><b>  8,Vcc</b></p><p>  由555定時器組成的時鐘電路</p><p><b>  四,顯示電路</b></p><p>  顯示電路由三個BCD數(shù)碼管組成,由于CPLD輸出的是BCD碼,所以直接將三個數(shù)碼管接到CPLD的12個輸出引腳上即可。8421BCD數(shù)碼管如下圖

58、所示:</p><p>  數(shù)碼管顯示的是四個引腳的二進(jìn)制轉(zhuǎn)換為十進(jìn)制的值,比如四個引腳的邏輯值為1001,則數(shù)碼管顯示9。</p><p>  8421BCD數(shù)碼管與CPLD的連接示意圖</p><p><b>  五,控制電路</b></p><p>  控制電路由NPN2(2N222),NPN3(2N2907),N

59、PN4(2N3507),R15,R16,R17,R18,Vd1,Vd2及一電熱絲(R19 Heater)組成。</p><p><b>  工作原理:</b></p><p>  當(dāng)由OP2輸出的電壓值大于三極管的導(dǎo)通值時,三極管NPN2,NPN3,NPN4全部導(dǎo)通,電熱絲兩端沒有電壓,電熱絲不工作,電路處于不加熱狀態(tài)。</p><p>  當(dāng)

60、由OP2輸出的電壓值小于三極管的導(dǎo)通值時,三極管處于截至狀態(tài),接在電路兩端的電壓全部加到電熱絲上,電熱絲開始工作,電路處于加熱狀態(tài)。隨著溫度的升高OP2的輸出電壓也隨著升高,當(dāng)電壓升高至某一值,三極管全部導(dǎo)通,電熱絲兩端即沒有電壓,電熱絲停止工作。如此重復(fù),溫度可控制在某一特定的范圍之內(nèi)。</p><p><b>  恒溫控制電路</b></p><p>  總結(jié):整

61、個電路即由這五個部分組成,實現(xiàn)了由溫度測量到溫度顯示及控制的功能。溫度傳感器在生活中有著廣泛的運用,尤其是溫度傳感器組成的一些溫控系統(tǒng),在生產(chǎn)實踐、國防科學(xué)、科研教學(xué)中,發(fā)揮了巨大的作用。例如:在暑期的社會實踐中。我們所在的紫金山天文臺星河電子有限公司就自主研發(fā)了一種列車軸溫檢測、報警、控制系統(tǒng),廣泛地運用在了鐵道部的大部分列車上,為我們交通運輸?shù)陌踩峁┝擞辛Φ募夹g(shù)保障。</p><p>  在整個電子綜合設(shè)計

62、的過程中,我們遇到過很多的困難,有軟件使用方面的,有設(shè)計思想偏差方面的,尤其是我們使用VHDL語言實現(xiàn)數(shù)字部分的邏輯設(shè)計時,由于理論知識的缺乏,也缺少一些實踐的經(jīng)驗,所以在很長的一段時間內(nèi)我們都不能很好地解決這個問題,但通過與老師的交流、同學(xué)之間的討論,最終,困難被我們一一克服。</p><p>  總體來說,通過短學(xué)期綜合電子課程設(shè)計這門課程的學(xué)習(xí),在軟件方面,我們鞏固了ProtelSE、Multisim8的知

溫馨提示

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

評論

0/150

提交評論