freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的電子密碼鎖的設(shè)計_課程設(shè)計任務(wù)書(完整版)

2025-08-29 17:28上一頁面

下一頁面
  

【正文】 DS18B20 完成溫 度轉(zhuǎn)換后,就把測得的溫度值與 RAM 中的 TH、 TL 字節(jié)內(nèi)容作比較。 減法計數(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ù)器計數(shù)到 0時,停止溫度寄存器的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。 表 35 DS18B20 的 ROM 操作指令 表 36 DS18B20 的存儲器操作指令 主機(jī)一旦檢測到 DS18B20的存在,根據(jù) DS18B2的工作協(xié) 議,就應(yīng)對 ROM進(jìn)行操作,接著對存儲器操作,最后進(jìn)行數(shù)據(jù)處理。所有時序都是將主機(jī)作為主設(shè)備,單總線器件作為從設(shè)備。 uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f}。 for(i=0。 DQ = 1。 DQ=0。 i8。 //右移一位 } } uchar read() { uint i, value=0。 // 讀到的 DQ=1, 0010 1010| 1000 0000=1010 1010 _nop_()。 } void display(uchar num) { uchar a,b。 P0=table[b]。 // 跳過 ROM 即不必讀 64 位序列號的 ROM write(0x44)。0XF0)4。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖 7所示。 sbit dp=P0^7。 //上限報警溫度,默認(rèn)值為 38 signed char xiaxian=6。 //精確延時,大于 480us DQ=1。i) 23 { DQ=0。 i0。 WriteOneChar(0xCC)。 WriteOneChar(0xCC)。 t= tt*100+。 P0 = 0x80。p35=0。p37=1。 //計算得到小數(shù)點后兩位 c=(e%100)/10。 P0 =LEDData[d]。p36=0。 p34=0。p36=1。 //顯示十位 p34=0。p37=0。p36=0。 27 p34=0。p37=0。 //顯示上限溫度個位 } else { P0 =LEDData[k]。p35=0。p36=0。 } 28 /*****外部中斷 0服務(wù)程序 *****/ void int0(void) interrupt 0 { EX0=0。 if(SET==1) shangxian。 EX1=1。 if(sign==1) { for(z=0。在此過程中也 遇到很多的困難,經(jīng)過自己的思考,翻閱資料及老師耐心的講解問題都 得到了解決。20xx 年 31 期 。以便以后查閱。z++) disptiaozheng()。 ReadTemperature()。 Delay(500)。 if(SET==1) shangxian++。 Delay(200)。p37=0。 } p34=0。 p34=0。p36=0。 P0 =0xc0。 f=shangxian/10。p36=0。 Delay(300)。p36=0。 P0 =LEDData[c]。p35=0。 if(mshangxian || mxiaxian) LING=1。 P0 = 0x80。p37=0。p35=1。 } /*****顯示開機(jī)初始化等待畫面 *****/ Disp_init() { P0 = 0x80。 //讀取溫度寄存器 a=ReadOneChar()。 //啟動溫度轉(zhuǎn)換 24 } /*****讀取溫度 *****/ unsigned int ReadTemperature(void) { unsigned char a=0。 DQ=datamp。 DQ=1。 x=DQ。 /*****延時子程序 *****/ void Delay(uint i) { while( i )。 sbit DQ=P2^2。其程序流程圖如圖 8示 溫度轉(zhuǎn)換子程序 溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用 12 位分辨率時轉(zhuǎn)換時間約為 750ms,在本程序設(shè)計中采用 1s 顯示程序延時法等待轉(zhuǎn)換的完成。0xF0)=1011 0000 4 :0000 1011 +HB :1010 1011 temp=HB。 write(0xcc)。 delay1(5)。 b=num%10。 //讀到的 DQ=0, value=01010101 _nop_()。 _nop_()。 DQ = date amp。 //廷遲 24+50*16=824us DQ=1。 flag = DQ。i++)。 for(x=z。數(shù)據(jù)和命令的傳輸都是低位在先。 主機(jī)在發(fā)送完 ROM操作指令之后,就可以對 DS18B20內(nèi)部的存儲器進(jìn)行操作,同樣 DS18B20規(guī)定了 6條操作指令。 另外,由于 DS18B20 單線通信功能是分時完成的,它有嚴(yán)格的時隙概念,因此讀寫時序很重要。因此,可用多只 DS18B20 同時測量溫度并進(jìn)行報警搜索。第 9 字節(jié)讀出前面所有 8字節(jié)的 CRC 碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。 TM R1 1R0 1 1 1 1 .... 圖 DS18B20 的字節(jié)定義 DS18B20 高速暫存器共 9 個存存單元,如表所示: 表 31 DS18B20 的引腳分布圖 以 12 位轉(zhuǎn)化為例說明溫度高低字節(jié)存放形式及計算: 12 位轉(zhuǎn)化后得到的12 位數(shù)據(jù),存儲在 18B20 的兩個高低兩個 8位的 RAM 中,二進(jìn)制中的前面 5位是符號位。溫度報警觸發(fā)器TH和TL,可通過軟件寫入戶報警上下限。 3 主控制器:單片機(jī) AT89S51 具有低電壓供電和體積小等特點,四個端口只需要兩個口就能滿足電路系統(tǒng)的設(shè)計需要,很適合便攜手持式產(chǎn)品的設(shè)計使用系統(tǒng)可用二節(jié)電池供電。 3 課程設(shè)計方案及器材選用分析 設(shè)計總體方案 本數(shù)字溫度計設(shè)計采用智能溫度傳感器 DS18B20 作為檢測元件,測溫范圍為55176。 系主任審查意見: 簽字: 年 月 日 設(shè)計說明書應(yīng)包括以下主要內(nèi)容: ( 1)封面:課程設(shè)計題目、班級、姓名、指導(dǎo)教師、時間 ( 2)設(shè)計任務(wù)書 ( 3)目錄 ( 4)設(shè)計方案簡介 ( 5)設(shè)計條件及主要參數(shù)表 ( 6)設(shè)計主要參數(shù)計算 ( 7)設(shè)計結(jié)果 ( 8)設(shè)計評述 ,設(shè)計者對本設(shè)計的評述及通過設(shè)計的收獲體會 ( 9)參考文獻(xiàn) 目錄 1 前言 ............................................................1 2 設(shè)計任務(wù)及要求 ..................................................1 設(shè)計任務(wù) .....................................................1 3設(shè)計方案及器材選用分析 .
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1