電子設(shè)計(jì)競(jìng)賽通信選拔題目XXXX_第1頁
電子設(shè)計(jì)競(jìng)賽通信選拔題目XXXX_第2頁
電子設(shè)計(jì)競(jìng)賽通信選拔題目XXXX_第3頁
電子設(shè)計(jì)競(jìng)賽通信選拔題目XXXX_第4頁
電子設(shè)計(jì)競(jìng)賽通信選拔題目XXXX_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

電子設(shè)計(jì)競(jìng)賽題目簡(jiǎn)易數(shù)字溫度計(jì)設(shè)計(jì)一個(gè)簡(jiǎn)易數(shù)字溫度計(jì)(不得使用專門的溫度傳感器,比如DS18B20,可以使用熱敏電阻或熱電偶),能夠?qū)崟r(shí)采集環(huán)境溫度并通過數(shù)碼管或LCD顯示;溫度測(cè)量誤差≤0.5℃;能夠通過按鍵設(shè)置一個(gè)溫度范圍,實(shí)際測(cè)量溫度小于或大于該范圍時(shí)有報(bào)警提示,報(bào)警方式自定。溫度設(shè)置范圍自定,但是所設(shè)置的溫度范圍必須能夠演示;提高溫度測(cè)量精度,測(cè)量誤差≤0.1℃;報(bào)告。通過A/D轉(zhuǎn)換吧電壓轉(zhuǎn)換成數(shù)字型號(hào);在用軟件計(jì)算出此時(shí)的溫度數(shù)顯溫度計(jì)的設(shè)計(jì)與制作歐偉民低溫的測(cè)量常采用具有玻璃外殼的酒精溫度計(jì)和水銀溫度計(jì),這類溫度計(jì)具有價(jià)格低廉、性能穩(wěn)定、直觀性強(qiáng)的優(yōu)點(diǎn),但也具有易破碎且只能在現(xiàn)場(chǎng)觀察的缺點(diǎn),水銀溫度計(jì)還易造成污染而有害健康。目前,應(yīng)用最為廣泛的是溫度敏感元件和二次儀表的組合,既可用于遠(yuǎn)程顯示,也可進(jìn)行調(diào)節(jié)控制,還可做到自動(dòng)記錄。常用的溫度敏感元件有熱電偶、熱電阻、二極管、IC溫度傳感器等。本文介紹的數(shù)顯溫度計(jì)是以半導(dǎo)體二極管作為溫度傳感器的數(shù)字顯示溫度計(jì),其測(cè)溫范圍為-50℃~+150℃,測(cè)溫精度達(dá)0.1℃。一、測(cè)溫探頭工作原理在附圖所示電路中,電阻R1~R3、二極管VD1~VD3、三極管V1構(gòu)成溫度傳感器電路。其中,VD1、VD2串接作為測(cè)溫探頭;R1~R3、VD3、V1構(gòu)成恒流源電路,給測(cè)溫探頭提供恒定的正向電流。大家知道,半導(dǎo)體二極管的正向壓降決定于正向電流的大小和溫度,當(dāng)正向電流一定時(shí),正向壓降隨溫度的升高而下降。對(duì)于普通的硅二極管1N4148而言,具有約-2?1mV/℃的溫度系數(shù),當(dāng)兩個(gè)1N4148串接時(shí),總的正向壓降與溫度的關(guān)系約為-4?2mV/℃。理論和實(shí)踐都已證明,在-50℃~+150℃的范圍內(nèi),二極管的測(cè)溫精度可達(dá)±0?1℃,與其他溫度傳感器比較,二極管溫度傳感器具有靈敏度高、線性好、簡(jiǎn)便的特點(diǎn),而且當(dāng)二極管的正向電流和溫度一定的情況下,其正向壓降是非常穩(wěn)定的。通過計(jì)算可以知道,恒流源提供給VD1、VD2的恒定電流約為0?5mA。二極管VD3起溫度補(bǔ)償作用,保證恒流源能提供穩(wěn)定的電流。二、測(cè)量顯示原理測(cè)量探頭把待測(cè)溫度轉(zhuǎn)換為相應(yīng)的電壓后,因?yàn)橐獙?shí)現(xiàn)溫度的數(shù)字顯示,就必須有模擬/數(shù)字轉(zhuǎn)換裝置。在附圖中,IC1、IC2、IC3及其周圍元件構(gòu)成A/D轉(zhuǎn)換、數(shù)字顯示電路,這一部分電路以美國Motorola公司生產(chǎn)的A/D轉(zhuǎn)換器MC14433為核心。MC14433是單片CMOS3位雙積分型A/D轉(zhuǎn)換器,該A/D轉(zhuǎn)換器轉(zhuǎn)換精度高,達(dá)±0?05%±1字;轉(zhuǎn)換速率為2~25次/秒;輸入阻抗大于1000MΩ;外圍元件少,電路結(jié)構(gòu)簡(jiǎn)單;量程為1?999V和199?9mV兩擋;輸出8421BCD代碼,經(jīng)譯碼后實(shí)現(xiàn)LED動(dòng)態(tài)掃描顯示。MC14433的第2腳為外接基準(zhǔn)電壓Vref輸入端;第3腳為被測(cè)電壓Vin輸入端;第1腳為模擬地,此端為高阻輸入端,是被測(cè)電壓和基準(zhǔn)電壓的地;第{15}腳為過量程輸出標(biāo)志端OR,平時(shí)OR為高電平,當(dāng)|Vin|>Vref即超過量程時(shí),OR為低電平。被測(cè)電壓Vin與基準(zhǔn)電壓Vref成下列比例關(guān)系(當(dāng)小數(shù)點(diǎn)定位于4個(gè)LED數(shù)碼管的十位數(shù)時(shí)):輸出讀數(shù)=×199?9在附圖中,IC2(譯碼器MC14511)把IC1(MC14433)輸出的BCD碼譯成十進(jìn)制數(shù)顯示,因?yàn)镸C14433以掃描方式輸出數(shù)據(jù),所以只需要用一個(gè)譯碼器就能驅(qū)動(dòng)4只共陰極LED數(shù)碼管,其中千位數(shù)的數(shù)碼管(最左邊一個(gè)LED數(shù)碼管)只接b、c兩段。4只LED數(shù)碼管的公共陰極分別由IC3(MC1413)中的4個(gè)達(dá)林頓復(fù)合晶體管驅(qū)動(dòng)。負(fù)號(hào)由千位數(shù)的LED數(shù)碼管之“g段”來顯示,顯示負(fù)號(hào)的“g段”由MC14433的Q2控制,當(dāng)輸入負(fù)電壓時(shí)(對(duì)應(yīng)溫度為0℃以下),Q2=“0”,顯示負(fù)號(hào)的“g段”通過R15點(diǎn)亮;當(dāng)輸入正電壓時(shí)(對(duì)應(yīng)溫度為0℃以上),Q2=“1”,使MC1413的另一個(gè)達(dá)林頓復(fù)合晶體管把流過R15的電流旁路到地,使顯示負(fù)號(hào)的“g段”熄滅。小數(shù)點(diǎn)固定在十位數(shù)的LED數(shù)碼管,通過R16給小數(shù)點(diǎn)“dp”提供電流,使小數(shù)點(diǎn)“dp”點(diǎn)亮。在附圖中,設(shè)置電位器RP1和RP2,其中RP1用于調(diào)節(jié)沸點(diǎn)(100℃);RP2用于調(diào)節(jié)冰點(diǎn)(0℃)。整個(gè)電路的直流電源由IC4(LM7809)提供,直流電源電壓為+9V。三、元器件選擇IC1為MC14433,可直接代換的有TSC14433、TC14433、5G14433等。IC2為七段譯碼/驅(qū)動(dòng)CMOS數(shù)字邏輯電路,可選用MC14511、HD14511、CD4511等。IC3為七路達(dá)林頓復(fù)合晶體管,可選用MC1413、5G1413、ULN2003等。其他元器件按圖示進(jìn)行選擇即可。四、制作電路很簡(jiǎn)單,便于在業(yè)余條件下制作。因?yàn)镸C14433和MC14511是CMOS集成電路,且最多只有24個(gè)引腳,所以宜使用IC插座。先焊接好IC插座和其他元器件后,再將MC14433、MC14511、MC1413插入到相應(yīng)的IC插座上即可。五、調(diào)試方法焊接、安裝好電路后,該數(shù)顯溫度計(jì)需要經(jīng)過調(diào)試方可正常使用。調(diào)試前,先準(zhǔn)備好0℃的冰水和100℃的沸水各1000ml。調(diào)試步驟如下:(1)將RP1調(diào)到最上端,使Vref為最高電壓,把二極管測(cè)溫探頭置于0℃的冰水中,調(diào)節(jié)RP2,使四只LED數(shù)碼管顯示的讀數(shù)為“00.0”。(2)將二極管測(cè)溫探頭置于100℃的沸水中,調(diào)節(jié)RP1,使得四只LED數(shù)碼管顯示的讀數(shù)為“100.0”,且IC1(MC14433)的第{15}腳OR為高電平。經(jīng)上述調(diào)試后,該數(shù)顯溫度計(jì)就可以正常工作了,其測(cè)溫范圍是-50~+150℃。該數(shù)顯溫度計(jì)的測(cè)溫范圍僅受二極管測(cè)溫探頭的限制,若改用其他的溫度傳感器,則無需變動(dòng)附圖所示電路的其他部分,就可獲得不同測(cè)溫范圍的數(shù)顯溫度計(jì)?!椅迥昵鞍凑者@圖紙做的電路,但沒有成功,顯示的數(shù)字在不斷的跳,不穩(wěn)定在一個(gè)數(shù)值上,不知是什么原因,因?yàn)槠渲锌紤]更換MC14433,但我那的價(jià)格要30元貴啊,如果不是這個(gè)問題我就不知道怎么辦了。首先電路安裝正確,其余MC1413和MC14511已更換多次沒用,請(qǐng)高手指教。1.DS18B20基本知識(shí)DS18B20數(shù)字溫度計(jì)是DALLAS公司生產(chǎn)的1-Wire,即單總線器件,具有線路簡(jiǎn)單,體積小的特點(diǎn)。因此用它來組成一個(gè)測(cè)溫系統(tǒng),具有線路簡(jiǎn)單,在一根通信線,可以掛很多這樣的數(shù)字溫度計(jì),十分方便。1、DS18B20產(chǎn)品的特點(diǎn)(1)、只要求一個(gè)端口即可實(shí)現(xiàn)通信。(2)、在DS18B20中的每個(gè)器件上都有獨(dú)一無二的序列號(hào)。(3)、實(shí)際應(yīng)用中不需要外部任何元器件即可實(shí)現(xiàn)測(cè)溫。(4)、測(cè)量溫度范圍在-55。C到+125。C之間。(5)、數(shù)字溫度計(jì)的分辨率用戶可以從9位到12位選擇。(6)、內(nèi)部有溫度上、下限告警設(shè)置。2、DS18B20的引腳介紹TO-92封裝的DS18B20的引腳排列見圖1,其引腳功能描述見表1。(底視圖)圖1表1DS18B20詳細(xì)引腳功能描述邊序號(hào)句名稱膀引腳襖功能榆描述扎1荒GN新D匙地信稈號(hào)秩2量DQ歐數(shù)據(jù)葉輸入岔/劈輸出列引腳糞。開沖漏單欄總線誓接口傘引腳酸。當(dāng)尋被用析著在峽寄生任電源濤下,容也可左以向稀器件跟提供牢電源犁。央3兼VD院D值可選美擇的成VD凳D富引腳精。當(dāng)持工作浙于寄諸生電上源時(shí)罩,此告引腳暫必須固接地恭。3.DS18B20的使用方法由于DS18B20采用的是1-Wire總線協(xié)議方式,即在一根數(shù)據(jù)線實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,而對(duì)AT89S51單片機(jī)來說,硬件上并不支持單總線協(xié)議,因此,我們必須采用軟件的方法來模擬單總線的協(xié)議時(shí)序來完成對(duì)DS18B20芯片的訪問。由于DS18B20是在一根I/O線上讀寫數(shù)據(jù),因此,對(duì)讀寫的數(shù)據(jù)位有著嚴(yán)格的時(shí)序要求。DS18B20有嚴(yán)格的通信協(xié)議來保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。該協(xié)議定義了幾種信號(hào)的時(shí)序:初始化時(shí)序、讀時(shí)序、寫時(shí)序。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)主動(dòng)啟動(dòng)寫時(shí)序開始,如果要求單總線器件回送數(shù)據(jù),在進(jìn)行寫命令后,主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。DS18B20的復(fù)位時(shí)序DS18B20的讀時(shí)序?qū)τ贒S18B20的讀時(shí)序分為讀0時(shí)序和讀1時(shí)序兩個(gè)過程。對(duì)于DS18B20的讀時(shí)隙是從主機(jī)把單總線拉低之后,在15秒之內(nèi)就得釋放單總線,以讓DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。DS18B20在完成一個(gè)讀時(shí)序過程,至少需要60us才能完成。DS18B20的寫時(shí)序?qū)τ贒S18B20的寫時(shí)序仍然分為寫0時(shí)序和寫1時(shí)序兩個(gè)過程。對(duì)于DS18B20寫0時(shí)序和寫1時(shí)序的要求不同,當(dāng)要寫0時(shí)序時(shí),單總線要被拉低至少60us,保證DS18B20能夠在15us到45us之間能夠正確地采樣IO總線上的“0”電平,當(dāng)要寫1時(shí)序時(shí),單總線被拉低之后,在15us之內(nèi)就得釋放單總線。4.實(shí)驗(yàn)任務(wù)用一片DS18B20構(gòu)成測(cè)溫系統(tǒng),測(cè)量的溫度精度達(dá)到0.1度,測(cè)量的溫度的范圍在-20度到+100度之間,用8位數(shù)碼管顯示出來。5.電路原理圖6.系統(tǒng)板上硬件連線(1).把“單片機(jī)系統(tǒng)”區(qū)域中的P0.0-P0.7用8芯排線連接到“動(dòng)態(tài)數(shù)碼顯示”區(qū)域中的ABCDEFGH端子上。(2).把“單片機(jī)系統(tǒng)”區(qū)域中的P2.0-P2.7用8芯排線連接到“動(dòng)態(tài)數(shù)碼顯示”區(qū)域中的S1S2S3S4S5S6S7S8端子上。(3).把DS18B20芯片插入“四路單總線”區(qū)域中的任一個(gè)插座中,注意電源與地信號(hào)不要接反。(4).把“四路單總線”區(qū)域中的對(duì)應(yīng)的DQ端子連接到“單片機(jī)系統(tǒng)”區(qū)域中的P3.7/RD端子上。7.C語言源程序#include#includeunsignedcharcodedisplaybit[]={0xfe,0xfd,0xfb,0xf7,

0xef,0xdf,0xbf,0x7f};unsignedcharcodedisplaycode[]={0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71,0x00,0x40};unsignedcharcodedotcode[32]={0,3,6,9,12,16,19,22,

25,28,31,34,38,41,44,48,

50,53,56,59,63,66,69,72,

75,78,81,84,88,91,94,97};unsignedchardisplaycount;unsignedchardisplaybuf[8]={16,16,16,16,16,16,16,16};unsignedchartimecount;unsignedcharreaddata[8];sbitDQ=P3^7;bitsflag;bitresetpulse(void){

unsignedchari;

DQ=0;

for(i=255;i>0;i--);

DQ=1;

for(i=60;i>0;i--);

return(DQ);

for(i=200;i>0;i--);}voidwritecommandtods18b20(unsignedcharcommand){

unsignedchari;

unsignedcharj;

for(i=0;i<8;i++)

{

if((command&0x01)==0)

{

DQ=0;

for(j=35;j>0;j--);

DQ=1;

}

else

{

DQ=0;

for(j=2;j>0;j--);

DQ=1;

for(j=33;j>0;j--);

}

command=_cror_(command,1);

}}unsignedcharreaddatafromds18b20(void){

unsignedchari;

unsignedcharj;

unsignedchartemp;

temp=0;

for(i=0;i<8;i++)

{

temp=_cror_(temp,1);

DQ=0;

_nop_();

_nop_();

DQ=1;

for(j=10;j>0;j--);

if(DQ==1)

{

temp=temp|0x80;

}

else

{

temp=temp|0x00;

}

for(j=200;j>0;j--);

}

return(temp);}voidmain(void){

TMOD=0x01;

TH0=(65536-4000)/256;

TL0=(65536-4000)%6;

ET0=1;

EA=1;

while(resetpulse());

writecommandtods18b20(0xcc);

writecommandtods18b20(0x44);

TR0=1;

while(1)

{

;

}}voidt0(void)interrupt1using0{

unsignedcharx;

unsignedintresult;

TH0=(65536-4000)/256;

TL0=(65536-4000)%6;

if(displaycount==2)

{

P0=displaycode[displaybuf[displaycount]]|0x80;

}

else

{

P0=displaycode[displaybuf[displaycount]];

}

P2=displaybit[displaycount];

displaycount++;

if(displaycount==8)

{

displaycount=0;

}

timecount++;

if(timecount==150)

{

timecount=0;

while(resetpulse());

writecommandtods18b20(0xcc);

writecommandtods18b20(0xbe);

readdata[0]=readdatafromds18b20();

readdata[1]=readdatafromds18b20();

for(x=0;x<8;x++)

{

displaybuf[x]=16;

}

sflag=0;

if((readdata[1]&0xf8)!=0x00)

{

sflag=1;

readdata[1]=~readdata[1];

readdata[0]=~readdata[0];

result=readdata[0]+1;

readdata[0]=result;

if(result>255)

{

readdata[1]++;

}

}

readdata[1]=readdata[1]<<4;

readdata[1]=readdata[1]&0x70;

x=readdata[0];

x=x>>4;

x=x&0x0f;

readdata[1]=readdata[1]|x;

x=2;

result=readdata[1];

while(result/10)

{

displaybuf[x]=result;

result=result/10;

x++;

}

displaybuf[x]=result;

if(sflag==1)

{

displaybuf[x+1]=17;

}

x=readdata[0]&0x0f;

x=x<<1;

displaybuf[0]=(dotcode[x]);

displaybuf[1]=(dotcode[x])/10;

while(resetpulse());

writecommandtods18b20(0xcc);

writecommandtods18b20(0x44);

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論