0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何用8051單片機(jī)做一個(gè)溫度計(jì)?

科技觀察員 ? 來(lái)源:英銳恩 ? 作者:英銳恩 ? 2023-07-07 11:40 ? 次閱讀

溫度傳感器廣泛用于電子設(shè)備中,用來(lái)顯示實(shí)時(shí)溫度,比如我們經(jīng)??吹揭恍?shù)字時(shí)鐘便帶有溫度計(jì),這是由于其中嵌入了溫度傳感器。在這個(gè)項(xiàng)目中,將展示如何設(shè)計(jì)數(shù)字溫度傳感器電路。在這個(gè)過(guò)程中,使用的是8051單片機(jī)。

溫度值是模擬的,因此它需要使用模數(shù)轉(zhuǎn)換器(ADC)轉(zhuǎn)換為數(shù)字值,然后顯示出來(lái)。

一、數(shù)字溫度傳感器電路原理

該電路的主要原理是將模擬溫度值轉(zhuǎn)換為數(shù)字值,并在LCD顯示屏上顯示數(shù)字溫度值。這里使用了8051單片機(jī)AT89C51,它沒有內(nèi)置ADC。因此,需要將外部ADC芯片ADC0804與8051單片機(jī)連接起來(lái),以將模擬溫度值轉(zhuǎn)換為數(shù)字值。

二、使用8051的數(shù)字溫度傳感器電路

1.所需組件

AT89C51(8051單片機(jī));

11.0592MHz晶振;

2X33pF電容器;

10μF/16V電容;

3X10KΩ電阻器;

1KΩx8電阻包;

10KΩ電位器;

16X2液晶顯示器;

ADC0804;

LM35;

150pF電容;

330Ω電阻;

電源;

連接電線。

2.電路設(shè)計(jì)

ADCIC的數(shù)字輸出引腳連接到8051的PORT3引腳。PORT0引腳使用1KΩ電阻包上拉,它們連接到16×2LCD的數(shù)據(jù)引腳。8051的P2.0和P2.1接LCD的RS和E。

LM35連接到ADC0804的模擬輸入引腳VIN+(引腳6)。此處不解釋振蕩器、復(fù)位等基本組件。

完成所有連接并將代碼燒錄到8051單片機(jī)后,打開電源。LM35溫度傳感器向ADC0804提供模擬溫度數(shù)據(jù),ADC0804將其轉(zhuǎn)換為數(shù)字值并發(fā)送到8051。

接收到數(shù)字值后,8051單片機(jī)執(zhí)行一個(gè)小的計(jì)算,然后在LCD上顯示溫度。詳細(xì)代碼如下:

#include

#define lcd P0

#define dat P3

sbit rs=P2^0;

sbit e=P2^1;

void delay (int);

void display (unsigned char);

void cmd (unsigned char);

void init (void);

void string (char *);

void intro (void);

unsigned char degree[8]={0x0e,0x0a,0x0e,0x00,0x00,0x00,0x00,0x00};

char i=0;

void delay (int d)

{

unsigned char i=0;

for(;d>0;d--)

{

for(i=250;i>0;i--);

for(i=248;i>0;i--);

}

}

void cmd (unsigned char c)

{

lcd=c;

rs=0;

e=1;

delay(10);

e=0;

}

void display (unsigned char c)

{

lcd=c;

rs=1;

e=1;

delay(10);

e=0;

}

void string (char *c)

{

while(*c)

{

display(*c++);

}

}

void init (void)

{

cmd(0x38);

cmd(0x01);

cmd(0x0c);

cmd(0x80);

}

void intro (void)

{

string(" Electronics ");

cmd(0xc0);

string(" Hub ");

delay(1000);

cmd(0x01);

string(" Digital ");

cmd(0xc0);

string(" Thermometer ");

delay(1000);

cmd(0x01);

cmd(0x40);

for(i=0;i<8;i++)

display(degree[i]);

i=0;

cmd(0x80);

}

void main()

{

unsigned int val=0;

unsigned int temp=0;

init();

intro();

dat=0xff;

while(1)

{

if(i==0)

{

string("Temp: ");

i++;

}

val=dat*1.953;

cmd(0x86);

temp=(((val/10)%10)+48);
    display(temp);
    
    temp=((val%10)+48);
    display(temp);
if(i==1)
    {
    display(0);
    string("C");
        i++;
    }
    delay(300);
}
while(1);

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 溫度傳感器
    +關(guān)注

    關(guān)注

    48

    文章

    2854

    瀏覽量

    155318
  • 溫度計(jì)
    +關(guān)注

    關(guān)注

    6

    文章

    404

    瀏覽量

    78304
  • 8051單片機(jī)
    +關(guān)注

    關(guān)注

    5

    文章

    153

    瀏覽量

    25431
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何使用8051微控制器構(gòu)建個(gè)簡(jiǎn)單的數(shù)字溫度計(jì)

    有時(shí),由于波動(dòng),人們發(fā)現(xiàn)很難從模擬溫度計(jì)讀取溫度。因此,在這里我們將使用8051微控制器構(gòu)建個(gè)簡(jiǎn)單的數(shù)字
    的頭像 發(fā)表于 11-21 16:38 ?3028次閱讀
    如何使用<b class='flag-5'>8051</b>微控制器構(gòu)建<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>簡(jiǎn)單的數(shù)字<b class='flag-5'>溫度計(jì)</b>

    做一個(gè)不用單片機(jī)和AD轉(zhuǎn)換器的電子溫度計(jì)!?。?!

    做一個(gè)電子溫度計(jì),要求能用數(shù)字方式顯示出來(lái)不能用AD轉(zhuǎn)換器和單片機(jī)。。。。請(qǐng)問(wèn)下,有什么解決方案?
    發(fā)表于 04-22 13:02

    單片機(jī)數(shù)字溫度計(jì)

    求大神來(lái)個(gè)單片機(jī)數(shù)字溫度計(jì)的程序和仿真圖
    發(fā)表于 11-26 20:31

    基于單片機(jī)溫度計(jì)設(shè)計(jì)相關(guān)資料分享

    文末下載完整資料摘要:隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活,工作,科研,各個(gè)領(lǐng)域,已經(jīng)成為種比較成熟的技術(shù),本文將介紹種基于單片機(jī)控制的數(shù)字
    發(fā)表于 11-09 06:30

    怎樣去設(shè)計(jì)種基于單片機(jī)的數(shù)字溫度計(jì)

    1,開發(fā)前規(guī)劃基于單片機(jī)的數(shù)字溫度計(jì)-開發(fā)前規(guī)劃 關(guān)鍵字溫度計(jì);51單片機(jī);共陽(yáng)數(shù)碼管;MOS開關(guān);便攜式;課程設(shè)計(jì);畢業(yè)設(shè)計(jì) 要求
    發(fā)表于 11-10 06:51

    基于單片機(jī)溫度計(jì)電路原理圖

    下圖是基于單片機(jī)溫度傳感器DS18B20的溫度計(jì)的電路原理圖
    發(fā)表于 07-23 14:54 ?7065次閱讀
    基于<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>溫度計(jì)</b>電路原理圖

    基于51單片機(jī)溫度計(jì)

    基于51單片機(jī)溫度計(jì),包括protues仿真,程序。
    發(fā)表于 04-28 09:49 ?51次下載

    基于單片機(jī)的數(shù)字溫度計(jì)資料

    款基于單片機(jī)設(shè)計(jì)的溫度計(jì),有興趣的朋友可以下來(lái)看看。
    發(fā)表于 12-17 16:18 ?5次下載

    基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)

    51單片機(jī),數(shù)字溫度計(jì)
    發(fā)表于 01-04 14:52 ?56次下載

    基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)及顯示

    基于單片機(jī)的數(shù)字溫度計(jì)的設(shè)計(jì)及顯示
    發(fā)表于 01-14 12:29 ?77次下載

    基于單片機(jī)控制的數(shù)字溫度計(jì)的設(shè)計(jì)

    高靈敏度負(fù)溫度系數(shù)熱敏電阻為溫度傳感器。利用ATF1504芯片與單片機(jī)配合完成待測(cè)信號(hào)頻率的精確測(cè)量,從而實(shí)現(xiàn)溫度的精確測(cè)量。實(shí)驗(yàn)數(shù)據(jù)表明該溫度計(jì)
    發(fā)表于 01-19 03:27 ?2377次閱讀
    基于<b class='flag-5'>單片機(jī)</b>控制的數(shù)字<b class='flag-5'>溫度計(jì)</b>的設(shè)計(jì)

    如何使用溫度傳感器和單片機(jī)技術(shù)設(shè)計(jì)個(gè)數(shù)字溫度計(jì)

    利用溫度傳感器和單片機(jī)技術(shù)設(shè)計(jì)制作個(gè)顯示室溫的數(shù)字溫度計(jì)。測(cè)量誤差為±1℃,四位LED數(shù)碼管顯示。
    發(fā)表于 10-08 08:00 ?22次下載
    如何使用<b class='flag-5'>溫度</b>傳感器和<b class='flag-5'>單片機(jī)</b>技術(shù)設(shè)計(jì)<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>數(shù)字<b class='flag-5'>溫度計(jì)</b>

    基于單片機(jī)溫度計(jì)設(shè)計(jì)

    文末下載完整資料摘要:隨著時(shí)代的進(jìn)步和發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們生活,工作,科研,各個(gè)領(lǐng)域,已經(jīng)成為種比較成熟的技術(shù),本文將介紹種基于單片機(jī)控制的數(shù)字
    發(fā)表于 11-04 12:21 ?38次下載
    基于<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>溫度計(jì)</b>設(shè)計(jì)

    基于單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)-零妖

    1,開發(fā)前規(guī)劃 基于單片機(jī)的數(shù)字溫度計(jì)-開發(fā)前規(guī)劃 關(guān)鍵字 溫度計(jì);51單片機(jī);共陽(yáng)數(shù)碼管;MOS開關(guān);便攜式;課程設(shè)計(jì);畢業(yè)設(shè)計(jì) 要求
    發(fā)表于 11-05 12:51 ?46次下載
    基于<b class='flag-5'>單片機(jī)</b>的數(shù)字<b class='flag-5'>溫度計(jì)</b>設(shè)計(jì)-零妖

    基于單片機(jī)的數(shù)碼語(yǔ)音溫度計(jì)電路設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于單片機(jī)的數(shù)碼語(yǔ)音溫度計(jì)電路設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 10-18 09:47 ?1次下載
    基于<b class='flag-5'>單片機(jī)</b>的數(shù)碼語(yǔ)音<b class='flag-5'>溫度計(jì)</b>電路設(shè)計(jì)