《單片機技術與應用》課件 項目六 溫度檢測報警系統設計_第1頁
《單片機技術與應用》課件 項目六 溫度檢測報警系統設計_第2頁
《單片機技術與應用》課件 項目六 溫度檢測報警系統設計_第3頁
《單片機技術與應用》課件 項目六 溫度檢測報警系統設計_第4頁
《單片機技術與應用》課件 項目六 溫度檢測報警系統設計_第5頁
已閱讀5頁,還剩128頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

項目六溫度檢測報警系統設計項目任務本項目的任務是以51單片機為核心,將溫度傳感器DS18B20所采集的溫度,在液晶屏上實時顯示并可實現報警。串口概述任務一用串口擴展I0口(1)任務二用串口擴展I0口(2)任務三單片機雙機通信任務四

PC與單片機通信任務五DS18B20溫度采集報警系統設計任務六項目目標●了解:基本通信知識●熟悉:單片機串口結構及作用●掌握:串口通信工作原理及使用方法任務一串口概述任務描述了解單片機串口基礎知識,掌握串口相關寄存器的初始化方法以及步驟。知識鏈接一串行通信基礎知識二串口結構概述一串行通信基礎知識計算機與外界的信息交換稱為通信。通信的基本方式可分為并行通信和串行通信兩種。所謂并行通信是指數據的各位同時在多根數據線上發送或接收。串行通信是數據的各位在同一根數據線上依次逐位發送或接收。1.概述

并行通信示意圖P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0P2.7RDWRRDWRCSD7D6D5D4D3D2D1D0825589C51

串行通信示意圖89C51外設TXDTXDRXDRXD發送接收你能由圖發現兩種通信方式各自的優缺點嗎?串行通信可分為同步和異步兩種方式(1)同步通信同步通信中雙方使用頻率一致的時鐘,稱為一個數據幀,通過獨特的bit串作為啟停標識。發送方要以固定的節奏去發送數據,而接收方要時刻做好接收數據的準備,識別到前導碼后馬上要開始接收數據了。同步這種方式中因為分組很大,很長一段數據才會有額外的輔助位負載,所以效率更高,更加適合對速度要求高的傳輸,當然這種通信對時序的要求也更高。(2)異步通信在異步通信中,數據通常是以字符或字節為單位組成數據幀進行傳送的。收、發端各有一套彼此獨立,互不同步的通信機構,由于收發數據的幀格式相同,因此可以相互識別接收到的數據信息。同步字符數據字符1數據字符2…數據字符n-1數據字符n校驗字符(校驗字符)同步通信的數據幀格式異步通信的數據幀格式D0D1D2D3D4D5D6D70/11111D70/1100D0D1第n字符幀空閑位停止位奇偶校驗停止位8位數據8位數據起始位起始位奇偶校驗第n-1字符幀第n+1字符幀8位數據

----起始位在沒有數據傳送時,通信線上處于邏輯“1”狀態。當發送端要發送1個字符數據時,首先發送1個邏輯“0”信號,這個低電平便是幀格式的起始位。其作用是向接收端表示發送端開始發送一幀數據。接收端檢測到這個低電平后,就準備接收數據信號。D0D1D2D3D4D5D6D70/11111D70/1100D0D1第n字符幀空閑位停止位奇偶校驗停止位8位數據8位數據起始位起始位奇偶校驗第n-1字符幀第n+1字符幀8位數據----數據位在起始位之后,發送端發出(或接收端接收)的是數據位,數據的位數沒有嚴格的限制,5~8位均可。由低位到高位逐位傳送。D0D1D2D3D4D5D6D70/11111D70/1100D0D1第n字符幀空閑位停止位奇偶校驗停止位8位數據8位數據起始位起始位奇偶校驗第n-1字符幀第n+1字符幀8位數據----奇偶校驗位數據位發送完(接收完)之后,可發送一位用來檢驗數據在傳送過程中是否出錯的奇偶校驗位。奇偶校驗是收發雙方預先約定好的有限差錯檢驗方式之一,有時也可不用奇偶校驗。D0D1D2D3D4D5D6D70/11111D70/1100D0D1第n字符幀空閑位停止位奇偶校驗停止位8位數據8位數據起始位起始位奇偶校驗第n-1字符幀第n+1字符幀8位數據----停止位字符幀格式的最后部分是停止位,邏輯“1”電平有效,它可占1/2位、1位或2位。停止位表示傳送一幀信息的結束,也為發送下一幀信息作好準備。D0D1D2D3D4D5D6D70/11111D70/1100D0D1第n字符幀空閑位停止位奇偶校驗停止位8位數據8位數據起始位起始位奇偶校驗第n-1字符幀第n+1字符幀8位數據

波特率(BaudRate)是串行通信中一個重要概念,它是指傳輸數據的速率,亦稱比特率。波特率的定義是每秒傳輸二進制數碼的位數。

如:波特率為1200bps是指每秒鐘能傳輸1200位二進制數碼。2.串行通信的波特率

波特率的倒數即為每位數據傳輸時間。例如:波特率為1200bps,每位的傳輸時間為:Td=1/1200=0.833(ms)

二串口結構概述AT89C51內部有一個可編程全雙工串行通信接口。該部件不僅能同時進行數據的發送和接收,也可作為一個同步移位寄存器使用。下面將對其內部結構、工作方式以及波特率進行介紹。1.串行接口的結構及功能AT89C51串行口結構框圖發送SBUF(99H)接收SBUF(99H)同步時鐘門電路發送控制器接收控制器輸入移位寄存器串行口控制寄存器(98H)內部總線≥1串行口中斷TIRITXD(P3.1)RXD(P3.0)

發送數據過程:CPU通過內部總線將并行數據寫入發送SBUF,在發送控制電路的控制下,按設定好的波特率,每來一次移位脈沖,通過引腳TXD向外輸出一位。一幀數據發送結束后,向CPU發出中斷申請,TI位置1。CPU響應中斷后,開始準備發送下一幀數據。發送SBUF(99H)接收SBUF(99H)同步時鐘門電路發送控制器接收控制器輸入移位寄存器串行口控制寄存器(98H)內部總線≥1串行口中斷TIRITXD(P3.1)RXD(P3.0)發送SBUF(99H)接收SBUF(99H)同步時鐘門電路發送控制器接收控制器輸入移位寄存器串行口控制寄存器(98H)內部總線≥1串行口中斷TIRITXD(P3.1)RXD(P3.0)

接收數據過程:CPU不停地檢測引腳RXD上的信號,當信號中出現低電平時,在接收控制電路的控制下,按設定好的波特率,每來一次移位脈沖,讀取外部設備發送的一位數據到移位寄存器。一幀數據結束后,數據被存入接收SBUF,同時向CPU發出中斷申請,RI位1。CPU響應中斷后,開始接收下一幀數據。

(1)串行數據緩沖器SBUF

SBUF是串行口緩沖寄存器,包括發送寄存器和接收寄存器,以便能以全雙工方式進行通信。此外,在接收寄存器之前還有移位寄存器,從而構成了串行接收的雙緩沖結構,這樣可以避免在數據接收過程中出現幀重疊錯誤。發送數據時,由于CPU是主動的,不會發生幀重疊錯誤,因此發送電路不需要雙重緩沖結構。在邏輯上,SBUF只有一個,它既表示發送寄存器,又表示接收寄存器,具有同一個單元地址99H。但在物理結構上,則有兩個完全獨立的SBUF,一個是發送緩沖寄存器SBUF,另一個是接收緩沖寄存器SBUF。如果CPU寫SBUF,數據就會被送入發送寄存器準備發送;如果CPU讀SBUF,則讀入的數據一定來自接收緩沖器。即CPU對SBUF的讀寫,實際上是分別訪問上述兩個不同的寄存器。(2)串行控制寄存器SCON串行控制寄存器SCON用于設置串行口的工作方式、監視串行口的工作狀態、控制發送與接收的狀態等。它是一個既可以字節尋址又可以位尋址的8位特殊功能寄存器。其格式如下圖所示:串行口控制寄存器SCONRITIRB8TB8RENSM2SM1SM0SCON98H99H9AH9BH9CH9DH9EH9FH位地址0:雙機1:多機多機通信0:禁止1:允許接收控制發送數據第9位接收數據第9位發送中斷標志接收中斷標志----SM0SM1

串行口工作方式選擇位。其狀態組合所對應的工作方式如表所示。SM0SM1工作方式功能說明000同步移位寄存器輸入/輸出,波特率固定為fosc/1201110位異步收發,波特率可變(T1溢出率/n,n=32或16)10211位異步收發,波特率固定為f0sc/n,n=64或32)11311位異步收發,波特率可變(T1溢出率/n,n=32或16)串行口工作方式----SM2多機通信控制器位。在方式0中,SM2必須設成0。在方式1中,當處于接收狀態時,若SM2=1,則只有接收到有效的停止位“1”時,RI才能被激活成“1”(產生中斷請求)。在方式2和方式3中,若SM2=0,串行口以單機發送或接收方式工作,TI和RI以正常方式被激活并產生中斷請求;若SM2=1,RB8=1時,RI被激活并產生中斷請求。----REN串行接受允許控制位。該位由軟件置位或復位。當REN=1,允許接收;當REN=0,禁止接收。----TB8方式2和方式3中要發送的第9位數據。該位由軟件置位或復位。在方式2和方式3時,TB8是發送的第9位數據。在多機通信中,以TB8位的狀態表示主機發送的是地址還是數據:TB8=1表示地址,TB8=0表示數據。TB8還可用作奇偶校驗位。----RB8接收數據第9位。在方式2和方式3時,RB8存放接收到的第9位數據。RB8也可用作奇偶校驗位。在方式1中,若SM2=0,則RB8是接收到的停止位。在方式0中,該位未用。----TI

發送中斷標志位。TI=1,表示已結束一幀數據發送,可由軟件查詢TI位標志,也可以向CPU申請中斷。

注意:TI在任何工作方式下都必須由軟件清0。----RI接收中斷標志位。RI=1,表示一幀數據接收結束。可由軟件查詢RI位標志,也可以向CPU申請中斷。

注意:RI在任何工作方式下也都必須由軟件清0。

在AT89C51中,串行發送中斷TI和接收中斷RI的中斷入口地址是同是0023H,因此在中斷程序中必須由軟件查詢TI和RI的狀態才能確定究竟是接收還是發送中斷,進而作出相應的處理。單片機復位時,SCON所有位均清0。2.電源控制寄存器PCON

SMOD:串行口波特率倍增位。在工作方式1~工作方式3時,若SMOD=1,則串行口波特率增加一倍。若SMOD=0,波特率不加倍。系統復位時,SMOD=0。PCOND7D6D5D4D3D2D1D0位名稱SMOD---GF1GF0PDIDL任務實施程序設計#include<reg51.h> //包含單片機寄存器的頭文件SCON=0x00;//設定串口工作于方式0PCON=0x00;//波特率不加倍知識總結1.串行通信的概念;2.單片機串行口的結構;3.串行口使用時的程序設置。綜合評價課后作業請設定串口工作于方式1,給出C語言代碼。謝謝觀看《單片機技術與應用》課程項目六溫度檢測報警系統設計串口概述任務一用串口擴展I0口(1)任務二用串口擴展I0口(2)任務三單片機雙機通信任務四

PC與單片機通信任務五DS18B20溫度采集報警系統設計任務六任務二用串口擴展I0口(1)任務描述本次任務要求用單片機的串口擴展出8個IO口,實現數碼管顯示效果。知識鏈接串行口工作方式0串行口工作方式0

AT89C51串行通信共有4種工作方式,它們分別是方式0、方式1、方式2和方式3,由串行控制寄存器SCON中的SM0SM1決定。在方式0下,串行口作為同步移位寄存器使用。此時SM2、RB8、TB8均應設置為0。

---發送:TI=0時,執行“MOVSBUF,A”啟動發送,8位數據由低位到高位從RXD引腳送出,TXD發送同步脈沖。發送完后,由硬件置位TI。

---接收:RI=0,REN=1時啟動接收,數據從RXD輸入,TXD輸出同步脈沖。8位數據接收完,由硬件置位RI。可通過“MOVA,SBUF”讀取數據。說明:(1)方式0的波特率為fosc/12,即一個機器周期發送或接收一位數據。(2)方式0并非是同步通信方式。它的主要用途是外接同步移位寄存器,以擴展并行I/O口。

----數據發送TI=0,發送數據前,先由軟件設置TB8,可使用如下指令完成:

TB8=1;將TB8位置1

TB8=0;將TB8位置0

然后再向SBUF寫入8位數據,并以此來啟動串行發送。一幀數據發送完畢后,CPU自動將TI置1,其過程與方式1相同。----數據接收

REN=1,RI=0時,啟動接收。①若SM2=0,接收到的8位數據送SBUF,第9位數據送RB8。②若SM2=1,接收到的第9位數據為0,數據不送SBUF;接收到的第9位數據為1,數據送SBUF,第9位送RB8。任務實施1.硬件電路2.程序設計1.硬件電路2.程序設計#include<reg51.h> //包含單片機寄存器的頭文件unsignedcharcodedispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共陰段碼/**********延時程序***********/voiddelay(){intm,n;for(m=0;m<400;m++)for(n=0;n<400;n++);}/***********************主程序*************************///功能:將串口發送的數據通過74LS164串并轉換送數碼管顯示/*****************************************************/voidmain(){inti=0;//循環變量

SCON=0x00;//設定串口工作于方式0for(i=0;i<10;i++){SBUF=dispcode[i];

//將dispcode數組中的段碼依次發送出去

delay();

//延時

while(TI==0);//等待發送完畢

TI=0;

//發送完畢清除發送中斷標志位

if(i==10)//10個數據發送完畢就清為0 { i=0; }}}知識總結當發送使用時,就采用SBUF=XXX;

(XXX為需要傳送的數據);當接收使用時,采用XXX=SBUF;串行的傳輸都是一位一位進行的。綜合評價課后作業利用串行口設計4位數碼管的顯示,畫出電路圖并編寫程序,要求4位數碼管每間隔1s交替顯示“1234”和“5678”。謝謝觀看《單片機技術與應用》課程項目六溫度檢測報警系統設計串口概述任務一用串口擴展I0口(1)任務二用串口擴展I0口(2)任務三單片機雙機通信任務四

PC與單片機通信任務五DS18B20溫度采集報警系統設計任務六任務三用串口擴展I0口(2)任務描述通過指撥開關動作產生高低電平,作為74ls165的輸入,74ls165將接收到的數據發往串口,串口負責接收,串口將接收到的數據送P0口顯示。知識鏈接74ls164的基本使用(回顧)74ls165的基本使用74ls164的基本使用74ls165的基本使用

74ls165是8位并入串出移位寄存器。當74LS165的SH/LD端由高到低跳變,并行輸入端的數據被置入寄存器;當SH/LD=1,且時鐘禁止端(15腳)為低時,允許TXD(P3.1)移位時鐘輸入,在該脈沖作用下,數據由右向左方向移動。任務實施1.硬件電路2.程序設計1.硬件電路2.程序設計/***********延時函數***********/voidDelayMS(uintms){uchari;while(ms--)for(i=0;i<120;i++);}#include<reg51.h>//包含單片機寄存器的頭文件#defineucharunsignedchar //宏定義,定義uchar為無符號字符型#defineuintunsignedint//宏定義,定義int為無符號整型sbitSPL=P2^5;//shift/load

/***********串口初始化函數***********/voidInit(){SCON=0x10;//串口工作于方式0,允許接收

EA=1;//CPU開中斷

ES=1; //允許串口中斷}/***********串口中斷服務函數***********/voidDateGet()interrupt4{SPL=0;//數據載入位設為低電平,將按鍵數據存入74LS165寄存器

DelayMS(50);//延時一會等待存入完成

P0=SBUF;//將串口收到的數據送P0口

SPL=1;//數據載入位設為高電平,將74LS165寄存器數據寫入串口寄存器

RI=0;//復位串口開始接收74LS165寄存器數據}知識總結當發送使用時,就采用SBUF=XXX;

(XXX為需要傳送的數據);當接收使用時,采用XXX=SBUF;串行傳輸都是一位一位進行的。綜合評價課后作業利用串行口設計4位靜態LED顯示,畫出電路圖并編寫程序,要求4位LED每間隔1s交替顯示“1234”和“5678”。謝謝觀看《單片機技術與應用》課程項目六溫度檢測報警系統設計串口概述任務一用串口擴展I0口(1)任務二

用串口擴展I0口(2)任務三單片機雙機通信任務四

PC與單片機通信任務五DS18B20溫度采集報警系統設計任務六任務四單片機雙機通信雙機通訊就是:

兩個單片機之間或單片機與PC之間的通訊。

什么是雙機通信呢?任務描述甲機發送信息,乙機就將接收到的信息送數碼管顯示,反之,乙機發送信息,甲機就將接收到的信息同樣送數碼管顯示出來。知識鏈接一工作方式1、2、3二多機通信基礎一工作方式1、2、3方式1是一幀10位的異步串行通信方式,包括1個起始位(0),8個數據位和一個停止位(1),其幀格式如下:1.工作方式1

起始位0D0D1D2D3D4D5D6D7

停止位1(1)數據發送過程當TI=0時,執行“SBUF=0xxx”指令后開始發送,由硬件自動加入起始位和停止位,構成一幀數據,然后由TXD端串行輸出。發送完后,TXD輸出線維持在“1”狀態下,并將SCON中的TI置1,表示一幀數據發送完畢。(2)數據接收過程

RI=0,REN=1時,接收電路以波特率的16倍速度采樣RXD引腳,如出現由“1”變“0”跳變,認為有數據正在發送。在接收到第9位數據(即停止位)時,必須同時滿足以下兩個條件:RI=0和SM2=0或接收到的停止位為“1”,才把接收到的數據存入SBUF中,停止位送RB8,同時置位RI。若上述條件不滿足,接收到的數據不裝入SBUF被舍棄。在方式1下,SM2應設定為0。(3)波特率波特率=2SMOD×(T1溢出率)/32T1溢出率=1/T1定時時間=1/((M-T初)·T機)波特率=2SMOD·fosc/(32·12·(M-T初))工作方式2和方式3都是11位異步收發串行通信方式,兩者的差異僅在波特率上有所不同。2.工作方式2、3方式2:波特率=2SMOD·fosc/64(SMOD=0或1)方式3:波特率=2SMOD·fosc/(32·12·(M-T初))(與方式1相同)二雙機通信基礎當要使用單片機的串口進行雙機通信時,需要保證通信雙方使用同樣的波特率。單片機串口初始化需完成單片機串口工作方式選擇、波特率設置、波特率發生器設置等基本的設置。

如設置單片機晶振頻率為11.0592MHz,串口波特率為9600b/s,串口選擇工作方式1,定時器配置為工作方式2。初始化程序如下:

voidUartInit(void){ TMOD=(TMOD&0x0f)|0x20;

//設置定時器T1為定時方式2 TH1=110592001/12/32/9600;

//求波特率為9600時定時器初值 TL1=TH1; TR1=1;

//啟動T1計數器 SCON=0x70;

//設置串行工作方式1,允許接收 PCON=0x80;}任務實施1.硬件電路2.程序設計1.硬件電路2.程序設計#include<reg51.h> //包含單片機寄存器的頭文件#defineucharunsignedchar //宏定義,定義uchar為無符號整型#defineuintunsignedint

//宏定義,定義uint為無符號整型#definekey_portP1

//P1=key_port#definedis_portP2 //P2=dis_port2.程序設計/***********主函數***********/voidmain(void){ ucharkey_in=0xff; SCON=0x50;

//方式1,允許接收

TMOD=0x20;

//定時器1工作于方式2 TH1=0xf3;

//波特率2400波特

TL1=0xf3; ET1=1;

//開放定時器1中斷

TR1=1; //啟動定時器中斷

EA=1;

//中斷允許

ES=1;

//開放串行中斷while(1) {if(key_in!=key_port)//P1狀態不等于0xff { key_in=key_port;//把P1狀態送給key_in SBUF=key_in;// 將P1的值發給串口

}}/***********串口中斷服務函數***********/voidget_disp(void)interrupt4using0{ if(RI) //如果是串口輸入引起中斷

{dis_port=SBUF;

//將串口值送P2口

RI=0;//清除接收中斷標志,便于下一次接收

} elseTI=0; //否則就是串口輸出引起的中斷}2.程序設計知識總結雙機通信一般要求通信速率要相同。綜合評價課后作業利用單片機雙機通信,假如乙機在P1.0引腳接有一按鍵,每次按鍵執行加1操作,把加一的結果送甲機,甲機收到以后驅動數碼管后顯示出來。謝謝觀看《單片機技術與應用》課程項目六溫度檢測報警系統設計串口概述任務一用串口擴展I0口(1)任務二

用串口擴展I0口(2)任務三

單片機雙機通信任務四

PC與單片機通信任務五DS18B20溫度采集報警系統設計任務六任務五PC與單片機通信任務描述

PC機鍵盤輸入的1個字符發送給51單片機,單片機接收到PC機發來的數據后,回送同一數據給PC機,并在PC機屏幕上顯示出來。只要PC機屏幕上顯示的字符與鍵入的字符相同,即表明PC機與單片機間通信正常。知識鏈接串行通信接口標準串行通信接口標準RS-232定義的是DTE(數據終端設備與)DCE(數據通信設備或者數據電路終端設備)間的接口標準。1.機械特性DB-25(陽頭)連接器DB-9(陰頭)連接器陽頭通常用于計算機側,陰頭用于連接線側

2.功能特性插針序號信號名稱功能信號方向1PGND保護接地2(3)TXD發送數據(串行輸出)DTE→DCE3(2)RXD接收數據(串行輸入)DTE←DCE4(7)RTS請求發送DTE→DCE5(8)CTS允許發送DTE←DCE6(6)DSRDCE就緒(數據建立就緒)DTE←DCE7(5)SGND信號接地8(1)DCD載波檢測DTE←DCE20(4)DTRDTE就緒(數據終端準備就緒)DTE→DCE22(9)RI振鈴指示DTE←DCERS-232采用負邏輯電平,規定(-3~-25V)為邏輯“1”,(+3~+25V)為邏輯“0”。-3V~+3V是未定義的過渡區。3.電氣特性RS-232規定的電平和一般微處理器的邏輯電平不一致,使用時必須進行電平轉換---早期常用MC1488、MC1489---近期常用MAXM232

片內帶有自升壓電路

僅需+5V電源

內含2個發送器,2個接收器遠程通信,需要調制解調器。4.過程特性(1)接口的信號電平值較高,易損壞接口電路的芯片。

(2)傳輸速率較低,在異步傳輸時,波特率為20Kbps。

(3)接口使用一根信號線和一根信號返回線而構成共地的傳輸形式,這種共地傳輸容易產生共模干擾,所以抗噪聲干擾性弱。

(4)傳輸距離有限,最大傳輸距離實際在50米左右。5.

RS-232的不足新標準RS-485改善了傳輸特性,應用廣泛!任務實施1.硬件電路2.程序設計1.硬件電路2.程序設計#include<reg51.h> //包含單片機寄存器的頭文件#defineucharunsignedchar //宏定義,定義uchar為無符號整型#defineuintunsignedint

//宏定義,定義uint為無符號整型#definekey_portP1

//P1=key_port#definedis_portP2 //P2=dis_port/***********主函數***********/voidmain(void){ ucharkey_in=0xff; SCON=0x50;

//方式1,允許接收

TMOD=0x20;

//定時器1工作于方式2 TH1=0xf3;

//波特率2400波特

TL1=0xf3; ET1=1;

//開放定時器1中斷

TR1=1; //啟動定時器中斷

EA=1;

//中斷允許

ES=1;

//開放串行中斷while(1) { if(key_in!=key_port)//P1狀態不等于0xff { key_in=key_port;//把P1狀態送給key_in SBUF=key_in;// 將P1的值發給串口

}}}/***********串口中斷服務函數***********/voidget_disp(void)interrupt4using0{ if(RI) //如果是串口輸入引起中斷

{dis_port=SBUF;

//將串口值送P2口

RI=0;//清除接收中斷標志,便于下一次接收

} elseTI=0; //否則就是串口輸出引起的中斷}知識總結PC與單片機的通信同樣要求通信速率要相同,RS-232使用時必須進行電平轉換。綜合評價課后作業編程實現甲乙兩個單片機進行點對點通信,甲機每間隔1s發送一次“A”字符,乙機接收到以后,在LCD上顯示出來。謝謝觀看《單片機技術與應用》課程項目六溫度檢測報警系統設計串口概述任務一用串口擴展I0口(1)任務二

用串口擴展I0口(2)任務三單片機雙機通信任務四

PC與單片機通信任務五DS18B20溫度采集報警系統設計任務六任務六DS18B20溫度采集報警系統設計任務描述使用數字溫度傳感器DS18B20,將采集到的溫度信息送單片機,單片機處理該實時溫度信息后,通過串口送PC進行顯示。知識鏈接溫度傳感器DS18B20溫度傳感器DS18B20

DS18B20是美國DALLAS半導體公司推出的第一片支持“一線總線”接口的溫度傳感器,它具有微型化、低功耗、高性能、抗干擾能力強、易配微處理器等優點,可直接將溫度轉化成串行數字信號供單片機處理,可實現溫度的精度測量與控制。DS18B20封裝外形如圖所示。

值得一提的是DQ引腳的I/O為數據輸入/輸出端(即單總線),該引腳為漏極開路輸出,常態下呈高電平。DS18B20引腳功能描述序號名稱描述1GND地信號2DQ數據輸入輸出引腳3Vdd(Vcc)電源輸入引腳,當工作于寄生電源模式時,此引腳必須接地1、內部結構

DS18B20的內部框圖如圖所示,主要包括寄生電源、溫度傳感器、存放中間數據的高速貯存器、用于存儲用戶設定的溫度上下限值、觸發器存儲與控制邏輯、8位循環冗余校驗碼發生器和64位編號ROM等7部分。下面重點說明高速貯存器。高速寄存器RAM由9個字節的存儲器組成。其中,第0、1字節是溫度轉換有效位,第0字節的低3位存放了溫度的高位,高5位存放溫度的正負值;第1字節的高4位存放溫度的低位,后4位存放溫度的小數部分;第2和第3個字節是DS18B20的與內部E2PROM的有關的TH和TL,用來存儲溫度上限和下限,可以通過程序設計把溫度的上下限從單片機中讀到TH和TL中,并通過

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論