電路原理圖如下:
/*溫濕度實(shí)時(shí)監(jiān)測(cè)顯示,溫度測(cè)量范圍為0~+50℃; 濕度測(cè)量范圍為20%~90%;
1m/s=3.6km/h
fs = 25*v m/s = 90*v km/h V單位是 伏
===========================================================================================*/
#include"main.h"
sbit set=P2^3; //設(shè)置
sbit yw=P2^2; //移位
sbit add=P2^1; //+
sbit cut=P2^0; //-
sbit change=P3^7; //切換
sbit red=P1^3;sbit green=P1^4;//超限指示燈,上限,下限
//===================================adc0832================================================
sbit cs=P1^0; //片選
sbit clk=P1^1;//時(shí)鐘
sbit dio=P1^2;//數(shù)據(jù)
//===========================================================================================
extern uchar TH,RH;//溫度整數(shù),濕度整數(shù)部分
extern uchar dat[3];//風(fēng)速上限,下限,初始化標(biāo)記
uchar code word1[16]= {" Wind = km/h "};//km/h 調(diào)整界面
uchar code word12[16]={"Wind= km/h L00"};//km/h
uchar code word11[16]={"Wind= m/s L00"};//m/s
uchar code word2[16]= {"Tem= C Hum= %"};//word2[4]word2[5]C word2[13]word2[14]%
uchar code hehe[16]= {"Wind upper limit"};//設(shè)置風(fēng)速上限界面
uchar code haha[16]= {"Wind lower limit"};//設(shè)置風(fēng)速下限界面
uchar adcdat;
uint sum=0; //5次adcdat數(shù)據(jù)之和
uchar fs=0; //風(fēng)速默認(rèn) km/h
bit flag1=0; //默認(rèn) 0(km/h) 1(m/s)
uchar dengji=0;
/**************開(kāi)機(jī)初始化保存的數(shù)據(jù)*****************/
void init_eeprom()
{
read(0x20);read(0x22);read(0x24);//先讀
if(dat[2]!=22) //新的單片機(jī)初始單片機(jī)內(nèi)部eeprom
{
dat[0]= 20;//初始上限
dat[1]= 3; //初始下限
dat[2]=22;
EA=0;
eraze(0x20);delay1m(5);write(0x20);delay1m(5);//保存上限
eraze(0x22);delay1m(5);write(0x22);delay1m(5);//保存下限
eraze(0x24);delay1m(5);write(0x24);delay1m(5);//保存標(biāo)記數(shù)據(jù)
EA=1;
}
}
void main()
{
uint i;uint j;uchar k;//動(dòng)態(tài)延時(shí)變量
init_1602();
delay1m(100); //延時(shí)等待1602穩(wěn)定
RH_founction();
init_eeprom();
while(1)
{
if(!change)//切換單位顯示
{
delay1m(10);
if(!change)
{
flag1 = ~flag1;
if(flag1==0)//顯示km/h 等級(jí)
{
w_string(0x80,word12);
}
else if(flag1==1)//顯示m/s
{
w_string(0x80,word11);
}
}
while(!change);
}
//=======================================================================
i++;if(i>2000)//動(dòng)態(tài)延時(shí)讀取溫濕度值
{
i=0;RH_founction();
DHT11_display(0xc0+4,TH/10+0x30,TH%10+0x30); //顯示溫度
DHT11_display(0xc0+13,RH/10+0x30,RH%10+0x30); //顯示濕度
}
//=======================================================================
j++;if(j>300)
{
j=0;
adcdat=read_adc_convert();//讀出ADC轉(zhuǎn)換的結(jié)果
sum=sum+adcdat;
k++;
if(k>=10)
{
k=0;
adcdat=sum/10; //風(fēng)速ad值,adcdat/51等于電壓,*90等于風(fēng)速
if(adcdat<=1)adcdat=0;
fs=adcdat*1.76; //fs=((float)adcdat/51)*90;
//==================================報(bào)警判斷===============================================
if(fs>dat[0]){red=0;green=1;}
else if(fs //==================================等級(jí)判斷============================================== if(fs<1)dengji=0; else if((fs>=1)&&(fs<=5))dengji=1; else if((fs>=6)&&(fs<=11))dengji=2; else if((fs>=12)&&(fs<=19))dengji=3; else if((fs>=20)&&(fs<=28))dengji=4; else if((fs>=29)&&(fs<=38))dengji=5; else if((fs>=39)&&(fs<=49))dengji=6; else if((fs>=50)&&(fs<=61))dengji=7; else if((fs>=62)&&(fs<=74))dengji=8; else if((fs>=75)&&(fs<=88))dengji=9; else if((fs>=89)&&(fs<=102))dengji=10; else if((fs>=103)&&(fs<=117))dengji=11;
上一篇:基于51單片機(jī)的流水燈實(shí)驗(yàn)
下一篇:基于51單片機(jī)的光電開(kāi)關(guān)計(jì)數(shù)
推薦閱讀最新更新時(shí)間:2025-06-04 04:41






設(shè)計(jì)資源 培訓(xùn) 開(kāi)發(fā)板 精華推薦
- 【下載】LAT1526 利用SPI的下溢實(shí)現(xiàn)回顯功能
- 【下載】LAT1509 STM32G0B1的FDCAN進(jìn)行通信丟包和多包案例分享
- 【下載】LAT1511 運(yùn)行Ux_Host_HUB_HID_MSC通過(guò)Hub連接U盤(pán)讀寫(xiě)不穩(wěn)定問(wèn)題分析
- 【下載】LAT1466 USB x Device HID Standalone的移植
- 【下載】LAT1488 STM32 USBxDevice MSC standalone移植示例
- 【下載】LAT1482 STM32G0單線(xiàn)串口通信幀錯(cuò)誤問(wèn)題解析
- DC2432A,基于 LT6658 低噪聲、高電流、精密基準(zhǔn)的演示板
- 使用 Silicon Labs 的 Si8512 的參考設(shè)計(jì)
- CN0164
- TCR5SB30A、150mA、3V 輸出電壓 CMOS 低壓降穩(wěn)壓器的典型應(yīng)用
- RH1013M典型應(yīng)用——雙路精密運(yùn)算放大器
- 使用 Analog Devices 的 AD8067ART 的參考設(shè)計(jì)
- AC380V三相交流電表
- MC33074DR2G光伏電池放大器的典型應(yīng)用
- AM1G-4815DZ ±15V 1 瓦 DC/DC 轉(zhuǎn)換器的典型應(yīng)用
- 使用 Microchip Technology 的 TC2576 的參考設(shè)計(jì)
- 英特爾亞利桑那州新工廠(chǎng)9月24日動(dòng)工 投資高達(dá)200億美元
- 51單片機(jī)仿真——報(bào)警器與旋轉(zhuǎn)燈
- Powerbox推出能把輸出電壓和電流調(diào)整到接近零且功率為1200W的電源
- 芯片要大漲價(jià)?ARM已通知小米等客戶(hù)將改變授權(quán)模式
- SGS100A矢量信號(hào)發(fā)生器的特點(diǎn)性能及應(yīng)用范圍
- 你知道示波器由哪幾部分組成的嗎
- 是德科技發(fā)布調(diào)查報(bào)告——軟件測(cè)試自動(dòng)化是衛(wèi)星行業(yè)面臨的首要技術(shù)挑戰(zhàn)
- 面壁智能端側(cè)大模型首日上線(xiàn),英特爾工程師聯(lián)合優(yōu)化實(shí)現(xiàn)2.2倍推理效率躍升
- 瞄準(zhǔn)車(chē)規(guī)級(jí)碳化硅,理想發(fā)表重要成果
- 車(chē)規(guī)級(jí)MCU國(guó)內(nèi)替代提速
- 博世新獲國(guó)內(nèi)頭部車(chē)企座艙域控項(xiàng)目定點(diǎn)
- 首款測(cè)量電動(dòng)汽車(chē)電機(jī)溫度的傳感器問(wèn)世,提升對(duì)磁鐵的保護(hù)以減少稀土的使用
- Arm開(kāi)發(fā)出計(jì)算子系統(tǒng) 以加速汽車(chē)設(shè)計(jì)的下一代AI芯片的開(kāi)發(fā)
- 福特汽車(chē)申請(qǐng)新專(zhuān)利 或?qū)崿F(xiàn)車(chē)庫(kù)定向音樂(lè)播放
- 泊車(chē)場(chǎng)景一定需要超聲波嗎?
- 同星新一代TC1055 Pro開(kāi)啟車(chē)載網(wǎng)絡(luò)測(cè)試新時(shí)代
- 福特汽車(chē)申請(qǐng)新專(zhuān)利 或?qū)⑴鋫浒踩ㄗ粉櫹到y(tǒng)
- 高通加緊推廣其5G PC處理器,占據(jù)入門(mén)筆記本市場(chǎng)
- 智能IoT時(shí)代,為何遙控器依然少不了?
- 華為鴻蒙系統(tǒng)的開(kāi)源
- 一季度全球GPU出貨量同增38% ,英偉達(dá)獨(dú)立顯卡獨(dú)占八成
- 馬斯克將推出FSD V9版本,特斯拉將實(shí)現(xiàn)“純視覺(jué)”自動(dòng)駕駛
- 安徽立德半導(dǎo)體引線(xiàn)框架和AMOLED高精度金屬掩模板項(xiàng)目合作
- 天翼展5G創(chuàng)新奪目,數(shù)字生態(tài)活力彰顯
- vivo全新手機(jī)系統(tǒng)Origin OS將發(fā)布
- 三星或許取消附贈(zèng)有線(xiàn)耳機(jī);中國(guó)占全球5G用戶(hù)數(shù)一半
- 肖勝利:封裝測(cè)試企業(yè)應(yīng)秉持合作大于競(jìng)爭(zhēng)的理念