欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 51單片機(jī)無(wú)接觸測(cè)溫程序mlx90614+lcd1602顯示 [打印本頁(yè)]

作者: 郭云飛    時(shí)間: 2021-6-17 19:27
標(biāo)題: 51單片機(jī)無(wú)接觸測(cè)溫程序mlx90614+lcd1602顯示
本來(lái)想著把他改成32的用oled屏顯示的,一直沒(méi)有時(shí)間,有程序,pcb圖,誤差還可以
可以無(wú)接觸測(cè)體溫,而且還能測(cè)環(huán)境溫度,后期可以自己加個(gè)人體感應(yīng)模塊或著超聲波,
制作出來(lái)的實(shí)物圖如下:

布線參考(PCB工程暫不分享,大家可以參考此圖自行畫)

單片機(jī)源程序如下:
#include<reg52.h> //包含頭文件,一般情況不需要改動(dòng),頭文件包含特殊功能寄存器的定義
#include<stdio.h>         
#include<intrins.h>
#include "delay.h"
#include "1602.h"
#include "mlx90614.h"

sbit buzzer=P1^0; //引腳定義
sbit key1=P2^0;
sbit key2=P2^1;

unsigned long time_20ms;  //定時(shí)計(jì)數(shù)
char dis0[16];              //液晶數(shù)組顯示暫存
char dis1[16];
unsigned int setNum = 37; //設(shè)置值
//---------------------------------------
//Name: CALTEMP           
//Temperature data is T=(Data)*0.02-273.15
//---------------------------------------
bit rekey =0;//防止按鍵重復(fù)按下
bit disFlag =0;//更新顯示標(biāo)志
unsigned int  Tem;       //溫度
float objTemp,envTemp;     //物體溫度和環(huán)境溫度

void Init_Timer0(void);     //函數(shù)聲明

void main (void)
{   
    Init_Timer0();        //定時(shí)器0初始化
                 
    LCD_Init();           //初始化液晶
    DelayMs(20);          //延時(shí)有助于穩(wěn)定
    LCD_Clear();

    while (1)         //主循環(huán)
    {
        if(disFlag==1)       //顯示標(biāo)志
        {
            Tem=ReadObjectTemp();     //讀取實(shí)物溫度
            objTemp=(float)(Tem)*0.02-273.15;
   
            Tem=ReadEnvironTemp();     //讀取環(huán)境溫度
            envTemp=(float)(Tem)*0.02-273.15;

            sprintf(dis0,"E: %4.1f'C   ",envTemp);//打印溫度值
            LCD_Write_String(0,0,dis0);//顯示
            sprintf(dis1,"O:%5.1f'C   %3d  ",objTemp,setNum);//打印溫度設(shè)置值
            LCD_Write_String(0,1,dis1);//顯示

            if(objTemp>setNum)
            {buzzer =0;    }    //溫度高蜂鳴器鳴叫
            else
            {buzzer=1;}        //溫度低 停止
            disFlag = 0;

        }

        if((key1 == 0)||(key2 == 0))   //有按鍵按下
        {
             if(rekey == 0)
            {
                DelayMs(10);
                if(key1 == 0)  //按鍵1按下
                {
                    rekey =1;    //防止重復(fù)按下
                    if(setNum<200) setNum++;      //++
                }
                else if((key2 == 0))//按鍵2按下
                {
                     rekey =1;    //防止重復(fù)按下
                    if(setNum>0) setNum--;        //--
                }
            }
        }
        else
        {
            rekey = 0;     //防止重復(fù)按下
        }                    
    }
}


void Init_Timer0(void)
{
    TMOD |= 0x01;      //使用模式1,16位定時(shí)器,使用"|"符號(hào)可以在使用多個(gè)定時(shí)器時(shí)不受影響            
    TH0=(65536-20000)/256;          //重新賦值 20ms
    TL0=(65536-20000)%256;
    EA=1;            //總中斷打開(kāi)
    ET0=1;           //定時(shí)器中斷打開(kāi)
    TR0=1;           //定時(shí)器開(kāi)關(guān)打開(kāi)
}

void Timer0_isr(void) interrupt 1
{
    TH0=(65536-20000)/256;          //重新賦值 20ms
    TL0=(65536-20000)%256;   
    time_20ms++;
    if(time_20ms%20==0)      //定時(shí)更新顯示
    {disFlag = 1;}
}


全部C語(yǔ)言程序51hei下載地址:
91、程序-MLX90614.rar (65.33 KB, 下載次數(shù): 157)

作者: aktuan007    時(shí)間: 2021-6-18 08:18
這個(gè)傳感器是去年電賽推薦的吧?
作者: 王源01    時(shí)間: 2021-12-12 23:14
這些頭文件是怎么調(diào)用的?
#include "delay.h"
#include "1602.h"
#include "mlx90614.h"
作者: czmmzc    時(shí)間: 2023-5-26 21:03
測(cè)量溫度準(zhǔn)確嗎?
作者: chuxiaocc    時(shí)間: 2023-12-22 21:08
有溫度補(bǔ)償嗎





歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1