找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3608|回復(fù): 3
打印 上一主題 下一主題
收起左側(cè)

基于51單片機(jī)溫度報(bào)警仿真設(shè)計(jì)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主

  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int

  4. #define AD1674_DATA1  P0  //定義P2和P0為A/D轉(zhuǎn)換數(shù)據(jù)
  5. #define AD1674_DATA2  P2

  6. sbit AD1674_STS=P3^0; //定義AD1674的各個(gè)控制信號(hào)對(duì)應(yīng)的引腳號(hào)
  7. sbit AD1674_12_8=P3^1;
  8. sbit AD1674_CS=P3^2;
  9. sbit AD1674_A0=P3^3;
  10. sbit AD1674_CE=P3^4;
  11. sbit AD1674_RC=P3^5;


  12. sbit Buz=P1^0; //定義P3.0引腳位名稱為蜂鳴器的控制引腳

  13. uint  AD1674_ADC(  )//TLC549的A/D轉(zhuǎn)換程序
  14. {
  15.         uint result;//定義result存放A/D轉(zhuǎn)換結(jié)果
  16.         uchar temp1,temp2;
  17.         AD1674_DATA1=0XFF;
  18.    AD1674_DATA2=0XFF;
  19.    AD1674_CE=0;//控制信號(hào)初始化
  20.    AD1674_CS=1;
  21.    AD1674_RC=1;

  22.    AD1674_A0=0;//12位轉(zhuǎn)換

  23.    AD1674_CS=0;//片選信號(hào)有效
  24.    AD1674_RC=0;//轉(zhuǎn)換信號(hào)有效
  25.    AD1674_CE=1;//片允許信號(hào)有效,啟動(dòng)轉(zhuǎn)換
  26.         while(AD1674_STS!=0);


  27.    AD1674_12_8=1;//輸出格式為12位   
  28.   AD1674_RC=1;//讀信號(hào)有效

  29.   temp1=AD1674_DATA1;
  30.   temp2=(AD1674_DATA2)&0x0f;//12位數(shù)據(jù)的處理

  31.   result=(temp2<<8)|temp1;

  32.         AD1674_CS=1;//一個(gè)周期結(jié)束后,AD1674的CS端設(shè)置為高電平
  33.         return result;//返回A/D轉(zhuǎn)換結(jié)果

  34. }



  35. /*延時(shí)子程序*/
  36. void Sleep(uchar count)
  37. {
  38.         uchar i;
  39.         while(count-- != 0) for(i=0;i<255;i++);
  40. }



  41. void main()
  42. {
  43.         unsigned long int tt,dd;
  44.         while(1)
  45.         {   
  46.              dd=AD1674_ADC();//讀取溫度轉(zhuǎn)換的數(shù)字量      
  47.             tt=dd*100/2007;//計(jì)算溫度值,根據(jù)LM35的特性,溫度每變化1°C對(duì)應(yīng)的輸出電壓為10mV
  48.                           //LM35輸出的信號(hào)經(jīng)過放大電路放大了4.9倍,經(jīng)過AD1674進(jìn)行A/D轉(zhuǎn)換得到
  49.                           //數(shù)字量tt。所以由tt可得到溫度值=數(shù)字量tt/409.5/4.9*100
  50.      if(tt>=50)//溫度高于50°C,蜂鳴器報(bào)警
  51.            {
  52.             Buz=~Buz;
  53.         Sleep(5);
  54.     }
  55.          else//否則蜂鳴器不報(bào)警
  56.         Buz=1;

  57. }
  58. }
復(fù)制代碼







評(píng)分

參與人數(shù) 2黑幣 +55 收起 理由
eee10132624 + 5
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏4 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:244931 發(fā)表于 2017-11-8 19:12 | 只看該作者
能下載嗎
回復(fù)

使用道具 舉報(bào)

板凳
ID:247433 發(fā)表于 2017-11-8 20:02 | 只看該作者
能運(yùn)行嗎?
回復(fù)

使用道具 舉報(bào)

地板
ID:710680 發(fā)表于 2020-3-18 11:09 | 只看該作者
可以直接運(yùn)行嘛
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表