娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

①采用單片機(jī)設(shè)計電子溫度計,選擇適合的感溫元件,溫度測量范圍-50℃~110℃;

②測量誤差小于0.1℃;

③LED數(shù)碼直讀顯示;

1.2總體方案分析

在單片機(jī)電路設(shè)計中,大多都是使用傳感器,所以本次設(shè)計采用溫度傳感器DS18B20。整個系統(tǒng)由單片機(jī)控制,溫度傳感器采用DS18B20。DS18b20采用單總線方式與單片機(jī)相連.把采集到得溫度信息傳給單片機(jī)。單片機(jī)采集到的溫度輸出到四個數(shù)碼管上進(jìn)行顯示。當(dāng)四位數(shù)碼管顯示的溫度超過上限值時可以實(shí)現(xiàn)報警功能。系統(tǒng)總體方案如圖1-1所示。

圖1-1 系統(tǒng)總體方案

2 電路設(shè)計2.1電路原理圖

電路原理圖如圖2-1所示;


圖2-1 電路原理圖

2.2電路PCB圖

電路PCB圖底層如圖2-2所示;

圖2-2 電路PCB底層圖

電路PCB頂層如圖2-3所示;

圖2-3 電路PCB頂層圖

電路PCB3D圖如2-4所示;

圖2-4 電路PCB3D圖

2.3設(shè)計計算及分析說明2.3.1時鐘電路和復(fù)位電路

①復(fù)位電路

復(fù)位電路的基本功能是:系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號。在本系統(tǒng)中,上電復(fù)位采用電平方式開關(guān)復(fù)位。上電復(fù)位采用RC電路,其中電容為10uF,電阻為10K。

②晶振電路

單片機(jī)系統(tǒng)里晶振的作用非常大,它結(jié)合單片機(jī)內(nèi)部的電路,產(chǎn)生單片機(jī)所必須的時鐘頻率,單片機(jī)的一切指令的執(zhí)行都是建立在這個基礎(chǔ)上的,晶振提供的十種頻率越高,單片機(jī)運(yùn)行的速度也就越快。單片機(jī)的晶振頻率應(yīng)低于40MHZ,本設(shè)計中采用的晶振頻率為11.0592MHZ,在晶振上并聯(lián)兩個30pF電容。

時鐘電路和復(fù)位電路如圖2-5所示。

圖2-5 電路和復(fù)位電路圖

2.3.2溫度采集電路

DS18B20溫度傳感器是一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過簡單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式。DS18B20的性能特點(diǎn)如下:
    ①獨(dú)特的單線接口僅需要一個端口引腳進(jìn)行通信;
    ②多個DS18B20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;
    ③無須外部器件;
    ④可通過數(shù)據(jù)線供電,電壓范圍為3.0~5.5V;
    ⑤零待機(jī)功耗;
    ⑥溫度以9或12位數(shù)字;
    ⑦用戶可定義報警設(shè)置;
    ⑧報警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報警條件)的器件;
    ⑨負(fù)電壓特性,電極接反時,溫度計不會因發(fā)熱而燒毀,只是不能正常工作。溫度采集電路如圖2-6所示。

圖2-6 溫度采集電路圖

DS18B20測溫原理如圖2.7所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計數(shù)器2的脈沖輸入。計數(shù)器1和溫度寄存器被預(yù)置在-55℃所對應(yīng)的一個基數(shù)值。計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)計數(shù)器1的預(yù)置值減到0時,溫度寄存器的值將加1,計數(shù)器1的預(yù)置將重新被裝入,計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計數(shù),如此循環(huán)直到計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。圖中的斜率累加器用于補(bǔ)償和修正測溫過程中的非線性,其輸出用于修正計數(shù)器1的預(yù)置值。

圖2-7 DS18B20測溫原理

2.3.3蜂鳴器報警電路

本設(shè)計報警系統(tǒng)使用蜂鳴器報警電路,在單片機(jī)程序內(nèi)設(shè)置了報警溫度的上下限值,當(dāng)溫度高于設(shè)定溫度上限時,蜂鳴器提示;當(dāng)溫度低于設(shè)定溫度下限時,蜂鳴器也會提示。報警功能是重要功能之一,在很多應(yīng)用場合下通過報警功能可以避免很多人力、財力的損失,蜂鳴器報警電路所測溫度超出上、下限溫度極限值時,為實(shí)現(xiàn)報警功能,設(shè)計了蜂鳴器報警電路。報警電路如圖2-8所示。

圖2-8 蜂鳴器報警電路圖

2.3.4位LED數(shù)碼管顯示電路

              在該電路中采用的是4位共陽極數(shù)碼管,通過P2.0~P2.3端來控制四位數(shù)碼管的亮滅,通過P0并行口來控制數(shù)碼管顯示的數(shù)值。使用數(shù)碼管時,采用動態(tài)掃描的方式, 動態(tài)顯示的特點(diǎn)是將所有位數(shù)碼管的段選線s一位數(shù)碼管有效。選亮數(shù)碼管采用動態(tài)掃描顯示。所謂動態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和相應(yīng)的位選,利用發(fā)光管的余輝和人眼視覺暫留作用,使人的感覺好像各位數(shù)碼管同時都在顯示。LED數(shù)碼管顯示電路圖如圖2-9所示。

圖2-9 LED數(shù)碼管顯示電路圖

2.3.5按鍵控制電路

本電路具有按鍵輸入功能,當(dāng)有按鍵被按下時,相對應(yīng)的引腳會變成低電平,便可確定是哪一個按鈕被按下。按鍵可設(shè)定報警溫度的上限值和下限值,如果當(dāng)前環(huán)境溫度不在設(shè)定范圍之內(nèi),蜂鳴器就會報警。按鍵控制電路如圖2-10所示。

圖2-10 按鍵控制電路圖


2.4電路元件選擇

Altium Designer的bill of material功能導(dǎo)出得到本次設(shè)計的所有元器件,電路元器件如圖2-11所示。

圖2-11 電路元器件清單圖



3 程序3.1程序流程圖及說明3.1.1主程序

主程序設(shè)計如圖3-1所示;

圖3-1 主程序流程圖

代碼:

//主函數(shù)

void main()

{

              beep=0;

              delay(10);

              while( 1 )

              {

              tmpchange();                  //溫度變換

              if(shu==0)

              {

                      displayTemp(tmp( ));

              }

              keyscan();                                          //鍵盤掃描

              if(shu==1)

              {

                      displayTemp(count);                //設(shè)置上限溫度值

               }

              if(shu==2)

              {

                      displayTemp(alarm);              //設(shè)置下限溫度值

              }

              if(shu==3)

              {

                 shu=0;            

               }

              if(temp>count||(temp              {

              beep=0;

              }

              else

              beep=1;

              }

}


3.1.2按鍵控制程序設(shè)計

在鍵盤掃描程序中,對按鍵初始化,然后判斷按鍵是否閉合,如果按鍵閉合,通過軟件延時去抖,最后通過顯示程序可以看到相應(yīng)的按鍵設(shè)置值,以做下一步指示,這是最基本的人機(jī)交互模式。按鍵控制流程如圖3-2所示。

圖3-2 按鍵控制流程圖

代碼:

//鍵盤掃描函數(shù)

uint keyscan()

{

              if(key1==0)

              {

                   delay(5);

                   if(key1==0)

                   {

                            while(!key1);

                            shu++;

                    }

              }

                          if(key2==0)

                           {

                                  delay(5);

                                  if(key2==0)

                                  {

                                     while(!key2);

                                     count=count+10;

                                       if(shu==2)

                                       {

                                            alarm+=10;

                                        }

                                   }

                           }

                               if(key3==0)

                               {

                                     delay(5);

                                     if(key3==0)

                                     {

                                              while(!key3);

                                              count=count-10;

                                                           if(shu==2)

                                                {

                                                      alarm-=10;

                                                 }

                                     }

                                                    }

      return(count);

}


3.1.3DS18B20初始化程序設(shè)計

DS18B20的初始化

(1)先將數(shù)據(jù)線置高電平”1”

(2)延時(該時間要求的不是很嚴(yán)格,但是盡可能的短一點(diǎn))
(3)數(shù)據(jù)線拉到低電平“0”
(4)延時750微秒(該時間的時間范圍可以從480到960微秒)
(5)數(shù)據(jù)線拉到高電平“1”
(6)延時等待(如果初始化成功則在15到60毫秒時間之內(nèi)產(chǎn)生一個由DS18B20所返回的低電平”0”。據(jù)該狀態(tài)可以來確走它的存在,但是應(yīng)注意不能無限的進(jìn)行等待,不然會使程序進(jìn)入死循環(huán),所以要進(jìn)行超時控制)。
(7)若CPU讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時,其延時的時間從發(fā)出的高電平算起第(5)步的時間算起)最少要480微秒。
(8)將數(shù)據(jù)線再次拉高到高電平“1后結(jié)束。

DS18B20初始化程序流程圖如圖3-3所示。

圖3-3 DS18B20初始化程序流程圖

代碼:

void dsreset()//發(fā)復(fù)位

{   

              uint i;

              DS=0;

              i=103;

              while(i>0)i--;

              DS=1;

              i=4;

              while(i>0)i--;

}

uchar tmpread()   //讀取一字節(jié)

{

              uchar j,k,dat;

              uint i;

[1] [2]
關(guān)鍵字:DS18B20  單片機(jī)  數(shù)字溫度計 引用地址:DS18B20單片機(jī)數(shù)字溫度計

上一篇:STC89C51單片機(jī)+HX711稱重模塊電子秤程序
下一篇:STC15F104W編碼器兩路可調(diào)PWM輸出源程序

推薦閱讀

隨著機(jī)器人與科技不斷進(jìn)步,以及各種應(yīng)用的持續(xù)開發(fā)與擴(kuò)展,預(yù)估2019年全球機(jī)器人系統(tǒng)和無人機(jī)支出將成長17.6%,達(dá)1,157億美元;2022年支出還會攀升至2,103億美元。合計2017~2022年全球機(jī)器人系統(tǒng)和無人機(jī)支出年復(fù)長率(CAGR)為20.2%。 調(diào)研機(jī)構(gòu)顯示,2019年全球機(jī)器人系統(tǒng)支出預(yù)估為1,034億美元,占整體支出89.4%;無人機(jī)支出預(yù)估為123億美元,占整體10...
許多物聯(lián)網(wǎng)(IoT)項(xiàng)目的成本很難估量,這背后的一個主要因素,是每臺設(shè)備的數(shù)據(jù)成本難以估量。通過選擇設(shè)備與應(yīng)用程序之間進(jìn)行通信的有效方式,可以降低傳輸成本。 MQTT-SN(用于傳感器網(wǎng)絡(luò)的MQTT)是IoT通信協(xié)議的優(yōu)化版本,MQTT(消息查詢遙測傳輸)是專門為在大型低功耗IoT傳感器網(wǎng)絡(luò)中高效運(yùn)行而設(shè)計的標(biāo)準(zhǔn)。在部署可擴(kuò)展網(wǎng)絡(luò)時,成本是一個重要因素...
全球最負(fù)盛名的計算機(jī)科學(xué)家之一、NVIDIA研究工作負(fù)責(zé)人Bill Dally將于GTC 中國線上大會發(fā)表主題演講, GTC中國線上大會是近期聚焦AI、深度學(xué)習(xí)、高性能計算技術(shù)的全球頂級會議。 即將于12月15日-19日召開的GTC 中國線上大會是一場免費(fèi)注冊即可參加的線上盛會。本次主題演講將于北京時間12月15日上午10點(diǎn)正...
很長時間以來,我們一提起芯片相關(guān)的話題,總是會離不開“芯片短缺”這個問題。芯片短缺已經(jīng)深刻地影響到了各個行業(yè),對不少行業(yè)和消費(fèi)者來說十分不便,大家也一直在猜測,芯片短缺問題何時才能真正解決。近日,Susquehanna Financial Group最新的研究報告顯示,芯片交付時間比10月份增加了4天,達(dá)到約22.3周,這個時間也創(chuàng)下了該公司自2017年開始跟蹤數(shù)...

史海拾趣

問答坊 | AI 解惑

嵌入式C C++語言精華

呵呵~一些好的建議! 我看了,不錯。 介紹給大家 對于概念的理解有很大的幫助!…

查看全部問答∨

51控制RTL8019AS網(wǎng)卡的相關(guān)資料(英文)

51控制RTL8019AS網(wǎng)卡的相關(guān)資料(英文)…

查看全部問答∨

磁芯的數(shù)據(jù)手冊

磁芯的數(shù)據(jù)手冊…

查看全部問答∨

建議論壇規(guī)范資料帖格式。

論壇里面好多人上傳資料時只是有一個名字,要不就是識貨的下什么的,看著有時候挺吸引人的,但實(shí)際內(nèi)容有時候卻讓人大失所望,所以我建議論壇規(guī)范一下資料帖的格式。比如發(fā)書藉的時候最起碼也應(yīng)該把版權(quán)信息發(fā)出來吧,好多其它技術(shù)論壇里的這種電子 ...…

查看全部問答∨

看了論壇上寫的:HV9910B在什么時候會燒掉?

“問題一:  1 加 1 在什么時候等于 3 ? 答案:  在算錯了時候. 問題二:  HV9910B在什么樣應(yīng)用時會炸機(jī)? 答案:  在應(yīng)用電路設(shè)計不恰當(dāng)或有錯誤時, 才可能會炸機(jī). 問題三:  在交流市電照明 ...…

查看全部問答∨

wince與vs2005聯(lián)機(jī)調(diào)試的問題

主機(jī)安裝xp,想在主機(jī)上用vs2005智能應(yīng)用程序運(yùn)行在wince操作系統(tǒng)(不是模擬器)另一個顯示器上顯示 已經(jīng)用usb線把2方連接,然后應(yīng)該怎么操作??? 不是模擬器 還有,需要用activesync么? 具體怎么操作?能說說么,連接也可以,謝謝…

查看全部問答∨

關(guān)于MATLAB的opctool與RSLinx的接口問題

本人實(shí)驗(yàn)室用的Rockwell的PAC,提供了RSLinx Classic作為OPC server。 現(xiàn)在想利用MATLAB的OPC Toolbox建立OPC client來讀取現(xiàn)場數(shù)據(jù),可以用來在線辨識之類的。 OPC server能夠連上,但是每次想讀取某個Group下的Item數(shù)據(jù)時,總是提示“服務(wù)器出 ...…

查看全部問答∨

門外漢請教如何產(chǎn)生隨機(jī)誤碼的問題

各位專家,小弟請教:如何在10000個bit中隨機(jī)產(chǎn)生400個誤碼??又實(shí)現(xiàn)函數(shù)嗎?謝謝…

查看全部問答∨

MIPS網(wǎng)絡(luò)電視機(jī)開發(fā),大家給些建議吧!

MIPS科技致力于以顯著的成本優(yōu)勢為全球的半導(dǎo)體公司、ASIC 開發(fā)商和系統(tǒng)OEM 廠商提供范圍最廣泛的低功耗、高性能處理器內(nèi)核。在當(dāng)今ARM下,我們也要看到其它優(yōu)秀的架構(gòu)。不知道有多少朋友對MIPS核的MUC感興趣。   初步設(shè)想:    ...…

查看全部問答∨

清華大學(xué)的經(jīng)典ARM學(xué)習(xí)教材,全中文版

特附上首頁的目錄,一看便知道有無價值 前 言................................................................................................................................................1第一章 嵌入式系統(tǒng)的硬件構(gòu)成............. ...…

查看全部問答∨
小廣播
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 卓资县| 东平县| 靖西县| 剑川县| 庄浪县| 濮阳市| 广昌县| 平山县| 迭部县| 元谋县| 贞丰县| 大港区| 龙门县| 凤城市| 福海县| 安图县| 天等县| 左云县| 中山市| 清涧县| 黄山市| 三台县| 龙胜| 长岛县| 城步| 靖江市| 北安市| 调兵山市| 金塔县| 双牌县| 呈贡县| 虎林市| 南召县| 昌宁县| 桃园县| 桦甸市| 新平| 朝阳区| 凌源市| 新建县| 临澧县|