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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  一、設(shè)計(jì)目的</b></p><p>  設(shè)計(jì)一個(gè)計(jì)算機(jī)溫度巡回檢測(cè)程序控制系統(tǒng),可以對(duì)糧倉(cāng)的溫度進(jìn)行多點(diǎn)巡回檢測(cè)。通過(guò)設(shè)計(jì),掌握數(shù)據(jù)采集系統(tǒng)的工作原理、掌握計(jì)算機(jī)控制系統(tǒng)的設(shè)計(jì)原理、設(shè)計(jì)步驟,進(jìn)一步提高綜合運(yùn)用知識(shí)的能力。</p><p><b>  二、設(shè)計(jì)內(nèi)容和要求</b></p><p&g

2、t;  (1)選擇傳感器,設(shè)計(jì)接口電路,對(duì)八點(diǎn)的溫度進(jìn)行巡回檢測(cè),要求溫度測(cè)量范圍是0~50℃,精度±1℃。</p><p>  (2)編寫(xiě)控制程序,在屏幕上顯示八點(diǎn)溫度的實(shí)測(cè)值。</p><p>  (3)寫(xiě)出設(shè)計(jì)說(shuō)明書(shū)。</p><p><b>  三、系統(tǒng)設(shè)計(jì)方案</b></p><p>  該系統(tǒng)由硬

3、件和軟件兩大塊組成,硬件部分分為:1、控制芯片,是該系統(tǒng)的核心;2、檢測(cè)環(huán)節(jié),即溫度傳感器,用于采集環(huán)境溫度;3、顯示部分,用于顯示當(dāng)前環(huán)境溫度;4、分時(shí)采集部分,用于對(duì)八點(diǎn)溫度進(jìn)行分時(shí)采集。軟件部分分為三塊:1、數(shù)據(jù)處理;2、液晶顯示;3、分時(shí)尋采集控制。</p><p><b>  下面是具體方案:</b></p><p><b>  1、硬件部分<

4、;/b></p><p>  1.1控制芯片:選用常用的89c52可滿足需要。</p><p>  1.2溫度檢測(cè)環(huán)節(jié):</p><p>  方案一、使用熱敏電阻通過(guò)matlab對(duì)溫度和電阻之間的非線性關(guān)系進(jìn)行數(shù)據(jù)擬合得到相應(yīng)關(guān)系式。但熱敏電阻器是敏感元件的一類(lèi),按照溫度系數(shù)不同分為正溫度系數(shù)熱敏電阻器(PTC)和負(fù)溫度系數(shù)熱敏電阻器(NTC)。熱敏電阻器的典

5、型特點(diǎn)是對(duì)溫度敏感,不同的溫度下表現(xiàn)出不同的電阻值。正溫度系數(shù)熱敏電阻器(PTC)在溫度越高時(shí)電阻值越大,負(fù)溫度系數(shù)熱敏電阻器(NTC)在溫度越高時(shí)電阻值越低,它們同屬于半導(dǎo)體器件。其最大的缺點(diǎn)就在于:阻值與溫度的關(guān)系非線性嚴(yán)重。不易通過(guò)程序進(jìn)行精確控制,誤差較大;</p><p>  方案二、使用DS18B20溫度傳感器。該芯片具有獨(dú)特的單線借口方式,它與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS18B

6、20的雙向通信,測(cè)溫范圍-55℃~+125℃,精度為0.5±℃而且在使用中不需要任何外圍元件,接線簡(jiǎn)單。</p><p>  綜合以上分析上,選用DS18B20溫度傳感器,將其I/O口與單片機(jī)的I/O口相接,在單片機(jī)中寫(xiě)入處理程序即可。</p><p><b>  顯示部分</b></p><p>  方案一、用數(shù)碼管顯示溫度,程序簡(jiǎn)

7、單,缺點(diǎn)是只能顯示數(shù)字,不能顯示字母,功能局限性太大;</p><p>  方案二、用1602LCD,既可顯示字母也可顯示數(shù)字,操縱靈活多變,可滿足本課題需要;</p><p><b>  綜上、選用方案二。</b></p><p><b>  分時(shí)采集部分</b></p><p>  方案一、CD

8、4051單8通道數(shù)字控制模擬電子開(kāi)關(guān),有三個(gè)二進(jìn)控制輸入端A、B、C</p><p>  和INH輸入,具有低導(dǎo)通阻抗和很低的截止漏電流。當(dāng)INH輸入端=“1”時(shí),所有的通道截止。三位二進(jìn)制信號(hào)選通8通道中的一通道,可連接該輸入端至輸出。</p><p>  方案二、繼電器+3/8譯碼器,通過(guò)譯碼器的三個(gè)地址段選通8個(gè)繼電器中的任意一個(gè),但接線復(fù)雜,成本高;</p><

9、p>  綜合以上分析,選擇方案一。</p><p><b>  2、軟件部分</b></p><p>  #include<reg52.h></p><p>  #include<stdio.h></p><p>  #define uchar unsigned char</p>

10、<p>  #define uint unsigned int</p><p>  sbit ds=P2^3;//溫度傳感器18B20I/O口</p><p>  sbit inh=P2^4;//譯碼器使能端</p><p>  sbit A=P1^0;//3/8譯碼器地址選擇端</p><p>  sbit B=P1^1;&l

11、t;/p><p>  sbit C=P1^2;</p><p>  sbit lcd_en=P2^6;//液晶LCD使能端</p><p>  sbit lcd_rs=P2^4;//液晶LCD數(shù)據(jù)/命令選擇端</p><p>  sbit lcd_wr=P2^5;//讀寫(xiě)選擇端</p><p>  uchar data t

12、able_temp[12];//存放顯示的字符和溫度</p><p>  uchar num;</p><p>  uint temp;</p><p>  uchar i,j,k,l;</p><p>  float f_temp;</p><p>  sbit led0=P1^0;</p><p

13、>  void delay1()//延時(shí)函數(shù)</p><p><b>  {</b></p><p>  uchar i,j;</p><p>  for(j=5;j>0;j--)</p><p>  for(i=125;i>0;i--);</p><p><b>  

14、}</b></p><p>  void delay(uint z)//帶參數(shù)的延時(shí)</p><p><b>  {</b></p><p><b>  uint x,y;</b></p><p>  for(x=z;x>0;x--)</p><p>  f

15、or(y=110;y>0;y--);</p><p><b>  }</b></p><p>  void dsreset(void)//對(duì)18B20進(jìn)行初始化</p><p><b>  {</b></p><p><b>  uint i;</b></p>

16、<p><b>  ds=0;</b></p><p><b>  i=103;</b></p><p>  while(i>0)</p><p><b>  i--;</b></p><p><b>  ds=1;</b></p

17、><p><b>  i=4;</b></p><p>  while(i>0)</p><p><b>  i--;</b></p><p><b>  }</b></p><p>  bit tempreadbit(void)//讀一位溫度

18、</p><p><b>  {</b></p><p><b>  uint i;</b></p><p><b>  bit dat;</b></p><p><b>  ds=0;i++;</b></p><p>  ds=1

19、;i++;i++;</p><p><b>  dat=ds;</b></p><p>  i=8;while(i>0)i--;</p><p>  return(dat);</p><p><b>  }</b></p><p>  uchar tempread(vo

20、id)//讀8位溫度即一個(gè)字節(jié)的溫度</p><p><b>  {</b></p><p>  uchar i,j,dat;</p><p><b>  dat=0;</b></p><p>  for(i=1;i<=8;i++)</p><p><b> 

21、 {</b></p><p>  j=tempreadbit();</p><p>  dat=(j<<7)|(dat>>1);</p><p><b>  }</b></p><p>  return(dat);</p><p><b>  }<

22、;/b></p><p>  void tempwritebyte(uchar dat)//寫(xiě)指令函數(shù)</p><p><b>  {</b></p><p><b>  uint i;</b></p><p><b>  uchar j;</b></p>

23、<p>  bit testb;</p><p>  for(j=1;j<=8;j++)</p><p><b>  {</b></p><p>  testb=dat&0x01;</p><p>  dat=dat>>1;</p><p><b> 

24、 if(testb)</b></p><p><b>  {</b></p><p><b>  ds=0;</b></p><p><b>  i++;i++;</b></p><p><b>  ds=1;</b></p>&

25、lt;p>  i=8;while(i>0)i--;</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p><b>  ds=0;</b></p>

26、<p>  i=8;while(i>0)i--;</p><p><b>  ds=1;</b></p><p><b>  i++;i++;</b></p><p><b>  }</b></p><p><b>  }</b><

27、;/p><p><b>  }</b></p><p>  void tempchange(void)//數(shù)值轉(zhuǎn)換</p><p><b>  {</b></p><p>  dsreset();</p><p><b>  delay(1);</b><

28、;/p><p>  tempwritebyte(0xcc); //跳過(guò)rom地址選擇</p><p>  tempwritebyte(0x44); //啟動(dòng)溫度轉(zhuǎn)換,將數(shù)據(jù)存入ram</p><p><b>  }</b></p><p>  uint get_temp()//將寄存器中的溫度數(shù)據(jù)轉(zhuǎn)換初來(lái)</p>

29、<p><b>  {</b></p><p>  uchar a,b;</p><p>  dsreset();</p><p><b>  delay(1);</b></p><p>  tempwritebyte(0xcc);</p><p>  temp

30、writebyte(0xbe);//讀ram的溫度數(shù)據(jù)</p><p>  a=tempread();//讀第八位</p><p>  b=tempread();//讀高八位</p><p><b>  temp=b;</b></p><p><b>  temp<<=8;</b><

31、;/p><p>  temp=temp|a;//得到16位溫度數(shù)據(jù)</p><p>  f_temp=temp*0.0625;//得到溫度</p><p>  temp=f_temp*10+0.5;//四舍五入</p><p>  return temp;</p><p><b>  }</b><

32、;/p><p>  void init_com(void)//初始化</p><p><b>  {</b></p><p>  TMOD=0x20;//模式二</p><p>  PCON=0x00;//正常工作狀態(tài)&正常波特率</p><p>  SCON=0x50;//異步收發(fā)(8位)&

33、lt;/p><p>  TH1=0xFd;//波特率9600</p><p><b>  TL1=0xFd;</b></p><p>  TR1=1;//定時(shí)器一運(yùn)行控制打開(kāi)</p><p>  lcd_wr=0;//寫(xiě)數(shù)據(jù)</p><p><b>  inh=0;</b><

34、;/p><p><b>  }</b></p><p>  void write_com(uchar com)//液晶寫(xiě)指令函數(shù)</p><p><b>  {</b></p><p><b>  lcd_rs=0;</b></p><p><b>

35、;  P0=com;</b></p><p><b>  delay1();</b></p><p><b>  lcd_en=1;</b></p><p><b>  delay1();</b></p><p><b>  lcd_en=0;</b

36、></p><p><b>  }</b></p><p>  void write_data(uchar date)//液晶寫(xiě)數(shù)據(jù)函數(shù)</p><p><b>  {</b></p><p><b>  lcd_rs=1;</b></p><p>

37、;<b>  P0=date;</b></p><p><b>  delay1();</b></p><p><b>  lcd_en=1;</b></p><p><b>  delay1();</b></p><p><b>  lcd_e

38、n=0;</b></p><p><b>  }</b></p><p>  void dis_temp(uint t)//液晶顯示函數(shù)</p><p><b>  {</b></p><p><b>  i=t/1000;</b></p><p

39、>  j=t%1000/100;</p><p>  k=t%100/10;</p><p><b>  l=t%10;</b></p><p>  table_temp[0]='W';</p><p>  table_temp[1]='E';</p><p&

40、gt;  table_temp[2]='N';</p><p>  table_temp[3]='D';</p><p>  table_temp[4]='U';</p><p>  table_temp[5]=':';</p><p>  table_temp[6]=i

41、;</p><p>  table_temp[7]=j;</p><p>  table_temp[8]=k;</p><p>  table_temp[9]='.';</p><p>  table_temp[10]=l;</p><p>  table_temp[11]='C';

42、</p><p><b>  lcd_en=0;</b></p><p>  write_com(0x38);</p><p>  write_com(0x0c);</p><p>  write_com(0x06);</p><p>  write_com(0x01);</p>&

43、lt;p>  write_com(0x80);</p><p>  for(num=0;num<12;num++)</p><p><b>  {</b></p><p>  if(num==8||num==6||num==7||num==10)</p><p>  write_data(table_temp

44、[num]+0x30);</p><p><b>  else</b></p><p>  write_data(table_temp[num]);</p><p><b>  }</b></p><p><b>  }</b></p><p>  v

45、oid main()</p><p><b>  {</b></p><p><b>  uint t;</b></p><p>  uint dr=0x07;</p><p>  uchar i,j;</p><p>  init_com();</p><

46、;p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  j=0;</b></p><p>  while(j<dr)//八路巡回檢測(cè)</p><p><b>  {</b></p&g

47、t;<p><b>  P1=j++;</b></p><p>  tempchange();</p><p>  for(i=10;i>0;i--)</p><p><b>  {</b></p><p>  t=get_temp();//數(shù)據(jù)轉(zhuǎn)換</p><

48、;p>  dis_temp(t);//顯示</p><p>  delay(10);//</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  

49、}</b></p><p><b>  四、原理圖</b></p><p><b>  五、PCB圖</b></p><p><b>  結(jié)論</b></p><p>  通過(guò)軟硬件設(shè)計(jì),用STC89C52為核心來(lái)控制整個(gè)系統(tǒng),實(shí)現(xiàn)了溫度正負(fù)號(hào),三位整數(shù)和一位小數(shù)的

50、顯示,了解了液晶,溫度傳感器的使用規(guī)律。本次選用的DS18B20芯片測(cè)溫范圍 -55℃~+125℃,精度為±0.5度達(dá)到了系統(tǒng)的基本要求,但由于硬件條件的限制,僅用一路溫度傳感器進(jìn)行信號(hào)采集,八路巡回檢測(cè)僅從原理上進(jìn)行了闡述,另外顯示等基本功能還不夠強(qiáng)大,如89c51的頻率還不夠快,肉眼可清楚看見(jiàn)刷屏,系統(tǒng)還有待改進(jìn)。</p><p><b>  參考文獻(xiàn)</b></p>

51、;<p>  1 李朝青.單片機(jī)原理及接口技術(shù).北京航空航天大學(xué)出版社.2006.12</p><p>  2 郭天祥.新概念51單片機(jī)c語(yǔ)言教程.北京:電子工業(yè)出版社.2009.1</p><p>  4 趙山林.c程序設(shè)計(jì).北京:人民郵電出版社,2004.8</p><p>  5 張艷兵,王忠慶,鮮浩.計(jì)算機(jī)控制技術(shù).北京:國(guó)防工業(yè)出版社.200

52、6.8</p><p>  6 畢滿清.模擬電子技術(shù)基礎(chǔ).北京:電子工業(yè)出版社,2008.6</p><p><b>  致謝</b></p><p>  通過(guò)這次課程設(shè)計(jì),我深切的認(rèn)識(shí)到自己不足的一面,我一定要在以后好好彌補(bǔ)。這次課程設(shè)計(jì)加深了我對(duì)計(jì)算機(jī)控制技術(shù)的了解,感謝老師給了我們這次機(jī)會(huì),同時(shí)也感謝同學(xué)的幫助和任課老師在課堂上精辟的講解

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論