精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

聚豐項(xiàng)目 > 冰箱濕度顯示與預(yù)警系統(tǒng)

冰箱濕度顯示與預(yù)警系統(tǒng)

冰箱濕度顯示與預(yù)警系統(tǒng)是以89C52單片機(jī)為數(shù)據(jù)處理與外設(shè)控制核心,外接有IDT濕度傳感器模塊、液晶顯示模塊、按鍵控制模塊與報(bào)警模塊。IDT濕度傳感器具有精度高(14位)、轉(zhuǎn)換速率快、集成度高(內(nèi)部集成14位AD轉(zhuǎn)換與并轉(zhuǎn)串電路)等特點(diǎn)。裝置可根據(jù)用戶需要設(shè)定相應(yīng)的預(yù)警值,報(bào)警模塊聲光并用,增大了被用戶感知的概率。

沉迷于電路板 沉迷于電路板

分享
0 喜歡這個(gè)項(xiàng)目
團(tuán)隊(duì)介紹

沉迷于電路板 沉迷于電路板

團(tuán)隊(duì)成員

周俊 焊工

分享
項(xiàng)目簡(jiǎn)介
冰箱濕度顯示與預(yù)警系統(tǒng)是以89C52單片機(jī)為數(shù)據(jù)處理與外設(shè)控制核心,外接有IDT濕度傳感器模塊、液晶顯示模塊、按鍵控制模塊與報(bào)警模塊。IDT濕度傳感器具有精度高(14位)、轉(zhuǎn)換速率快、集成度高(內(nèi)部集成14位AD轉(zhuǎn)換與并轉(zhuǎn)串電路)等特點(diǎn)。裝置可根據(jù)用戶需要設(shè)定相應(yīng)的預(yù)警值,報(bào)警模塊聲光并用,增大了被用戶感知的概率。
硬件說明

  1、傳感器HS3001

   HS300x系列是一款高精度,完全校準(zhǔn)的相對(duì)濕度和溫度傳感器。 MEMS傳感器具有專有的傳感器級(jí)保護(hù)功能,可確保高可靠性和長期穩(wěn)定性。集成校準(zhǔn)和溫度補(bǔ)償邏輯通過標(biāo)準(zhǔn)I2C輸出提供完全校正的濕度值和溫度值。無需用戶校準(zhǔn)輸出數(shù)據(jù)。高精度,快速測(cè)量響應(yīng)時(shí)間和長期穩(wěn)定性以及小封裝尺寸使HS300x系列成為從便攜式設(shè)備到專為惡劣環(huán)境設(shè)計(jì)的產(chǎn)品的廣泛應(yīng)用的理想選擇。 HS300x系列數(shù)字傳感器可精確測(cè)量相對(duì)濕度和溫度水平。測(cè)量數(shù)據(jù)經(jīng)過內(nèi)部校正和補(bǔ)償,可在很寬的溫度和濕度范圍內(nèi)進(jìn)行精確操作 - 無需用戶校準(zhǔn)。

1.png

IMG_20190112_210308.jpg

 2、IIC通信協(xié)議

      當(dāng)主機(jī)發(fā)送0 START位(S)時(shí),啟動(dòng)傳感器傳輸。當(dāng)主機(jī)發(fā)送1個(gè)STOP位(P)時(shí),傳輸終止。這些位僅在SCL線為高電平時(shí)發(fā)送(波形見圖)。主機(jī)一旦設(shè)置START條件,就以規(guī)定的數(shù)據(jù)速率切換SCL線,為后續(xù)數(shù)據(jù)傳輸提供時(shí)鐘。SDA線上的數(shù)據(jù)始終在SCL線的上升沿采樣,并且在SCL為高電平時(shí)必須保持穩(wěn)定,以防止錯(cuò)誤的START或STOP條件。

4.png

  啟動(dòng)傳感器需要寫命令將HS300x從休眠模式喚醒。通過發(fā)送7位從地址,然后發(fā)送第8位= 0(WRITE)來啟動(dòng)測(cè)量請(qǐng)求。傳感器測(cè)量周期包括濕度和溫度轉(zhuǎn)換,然后是數(shù)字信號(hào)處理器(DSP)校正計(jì)算。傳感器在測(cè)量周期結(jié)束時(shí),數(shù)字輸出寄存器將在斷電前更新。輸出始終縮放為14位。位的順序是big-endian。

5.png

  在測(cè)量周期結(jié)束時(shí),可以獲取有效數(shù)據(jù)。 DF結(jié)果的狀態(tài)位可用于檢測(cè)數(shù)據(jù)是有效還是失效(參見第6.7節(jié));否則,在執(zhí)行DF之前等待測(cè)量完成。 DF命令以7位從地址開始,后跟第8位= 1(READ)。作為從機(jī)的HS300x發(fā)送表示成功的確認(rèn)(ACK)。 HS300x返回的數(shù)據(jù)字節(jié)數(shù)由主機(jī)發(fā)送NACK和STOP條件時(shí)確定。在前兩個(gè)字節(jié)中提取全部14位濕度數(shù)據(jù)。第一個(gè)字節(jié)的兩個(gè)MSB是狀態(tài)位。rn14位溫度數(shù)據(jù)跟隨濕度數(shù)據(jù)。第四個(gè)數(shù)據(jù)字節(jié)的最后兩位(LSB)未確定,應(yīng)該被屏蔽掉。在不需要溫度數(shù)據(jù)的情況下,可以通過在第二字節(jié)之后發(fā)送NACK來終止讀取。

6.png

3、數(shù)據(jù)處理

  HS300x的整個(gè)輸出為4個(gè)字節(jié)。相對(duì)濕度(百分比)和溫度(攝氏度)分別用等式1和等式2計(jì)算。

7.png

4、89C5單片機(jī)

 89C52是一種帶8K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS8位微處理器,俗稱單片機(jī)

8.png

新建文件夾IMG_20190112_202308.jpg

5、液晶顯示模塊

  LCD12864帶中文字庫的128X64 是一種具有4 位/8 位并行、2 線或3 線串行多種接口方式,內(nèi)部含有國標(biāo)一級(jí)、二級(jí)簡(jiǎn)體 中文字庫的點(diǎn)陣圖形液晶顯示模塊;其顯示分辨率為128×64, 內(nèi)置8192 個(gè)16*16 點(diǎn)漢字,和128 個(gè)16*8 點(diǎn)ASCII 字符 集。利用該模塊靈活的接口方式和簡(jiǎn)單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示8×4 行16×16 點(diǎn) 陣的漢字。 也可完成圖形顯示。低電壓低功耗是其又一顯著特點(diǎn)。

9.png

6、報(bào)警模塊

 呼吸燈和蜂鳴器構(gòu)成聲光報(bào)警電路。


軟件說明

#include

#define uchar unsigned char
#define uint unsigned int

sbit led=P2^2;

unsigned char num=0;
unsigned char num1=0;
unsigned char num2=0;
unsigned char num3=0;

unsigned char code dis1[]= {"日期:2019.1.1"};
unsigned char code dis2[]= {"濕度:"};
unsigned char code dis3[]= {"溫度:"};
unsigned char code dis4[]= {"濕度預(yù)警值:"};
unsigned char code s[13]= {"0123456789.%"};
unsigned char dis5[7];
unsigned char dis6[8];
unsigned char dis7[3];
unsigned char dis8[4];
unsigned char key;
unsigned int c,d,m;

void delay_1ms(int x);
void read();                  //IIC數(shù)據(jù)讀取函數(shù)(四個(gè)字節(jié))
void lcd_start();
void lcd_shuju();          //數(shù)據(jù)顯示函數(shù)
void shujuchuli();         //數(shù)據(jù)處理函數(shù)
void Timer0();
void Timer0Init();
void lcd_yjz();              //預(yù)警值顯示函數(shù)

void yjz();
 
void main()
{
 unsigned int i=0,n=0;
 lcd_init();                     //LCD12864初始化
  lcd_start();                  //LCD基本顯示內(nèi)容    
 Timer0Init();
 while(1)                  //按鍵輸入
 {
  key=KeyDown();
  if(key==12)
  {
    n=1;
     TR0=0;           //打開定時(shí)器   
   delay_1ms(10);
  }
  if(key==15)
  {
   TR0=1;
   delay_1ms(10);
   n=0;
  }
  if(n==1)
  {
   if(key!=0)
    {
       dis8[i]=s[key];
       delay_1ms(10);
       lcd_yjz();
       i++;
       if(i==3)
        {
          n=0;
           i=0;
        }
    }
  }
  if(m==5)
  {
      shujuchuli(); 
      wela=0;
      dula=0;
      delay_1ms(1);
      lcd_init1();
     lcd_shuju();
   yjz();
    m=0;
  }   
 }
}

使用的開發(fā)平臺(tái):Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。Keil提供了包括C編譯器、宏匯編、鏈接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(μVision)將這些部分組合在一起。

演示效果

新建文件夾IMG_20190112_202243.jpg

附件

(0.00 MB)下載

評(píng)論區(qū)(1 )
  • 沉迷于電路板: 太丑了

    回復(fù)