基于18B20的溫度測量儀課程設計報告_第1頁
基于18B20的溫度測量儀課程設計報告_第2頁
基于18B20的溫度測量儀課程設計報告_第3頁
基于18B20的溫度測量儀課程設計報告_第4頁
基于18B20的溫度測量儀課程設計報告_第5頁
已閱讀5頁,還剩28頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、基于18b20的溫度測量儀 目 錄第一章 單片機原理及應用技術課程設計的目的意義21.1 設計目的21.2 課程在教學計劃中的地位和作用2第二章 基于18b20的溫度測量儀設計任務22.1 設計內容及要求22.2 課程設計的要求2 2.2.1 控制要求2 2.2.2 設計要求2第三章 系統的硬件設計與選型3 3.1 總體設計思想與選型33.2 硬件設計方案33.3 硬件設計系統原理圖33.4 選型芯片及其各自功能說明5 3.4.1 89c51的引腳與功能簡介5 3.4.2 ds18b20的引腳與功能簡介8 3.4.3 74ls138的引腳與功能簡介13 3.4.4 74lc573的引腳與功能簡

2、介153.4.5 數碼管簡介15第四章 軟件設計174.1 源程序說明17第五章 系統調試及使用說明205.1 系統使用說明205.2 系統調試25收獲、體會26附錄 系統源程序及實物圖27第一章 單片機原理與技術應用課程設計的目的意義1.1 課程設計目的單片機原理及技術應用主要內容包括mcs-51單片機的內部結構、指令系統、匯編語言和c語言程序設計、并行接口和并行設備的擴展、中斷系統結構與應用、定時器計數器原理與應用、串行接口與串行通信、模擬量接口以及單片機應用系統設計技術。 本課程設計目的在于培養學生綜合運用理論知識來分析和解決實際問題的能力,是通過設計單片機檢測系統,加深學生對單片機技術

3、的了解,進一步掌握其程序設計與硬件接口技術。 本課程的主要任務是運用所學單片機技術、單片機原理等方面的知識,設計出一臺以89c51mcu為核心的單片機數據采集、通訊或測控系統,完成信息的采集、處理、輸出及人機接口電路等部分的軟、硬件設計。1.2 課程設計在教學計劃中的地位和作用本課程是生物醫學工程的一門主要專業課之一。以mcs-51系列的8位單片機為教學對象,介紹單片機的發展概況、原理及應用。 主要內容:單片機的基本概念,mcs-51系列單片機的結構,mcs-51系列單片機指令系統,程序設計基礎,中斷系統,mcs-51系列單片機內部定時器/計數器及其應用,串行接口,單片機應用系統擴展設計基礎,

4、模擬量輸入輸出接口技術,人機接口技術,功率接口技術,單片機應用系統設計技術,單片機應用系統舉例,新型單片機介紹等。 學生獲得的知識和能力:單片機的基本結構和原理、指令系統、匯編語言程序設計、c51開發技術,簡單的單片機應用系統的設計等。 單片機原理及應用課程設計的目的就是讓同學們在理論學習的基礎上,通過完成一個涉及mcs-51單片機多種資源應用并具有綜合功能的小系統目標板的設計與編程應用,使學生不但能夠將課堂上學到的理論知識與實際應用結合起來,而且能夠對電子電路、電子元器件、印制電路板等方面的知識進一步加深認識,同時在軟件編程、排錯調試、焊接技術、相關儀器設備的使用技能等方面得到較全面的鍛煉和

5、提高。使學生增進對單片機的感性認識,加深對單片機理論方面的理解,為以后設計和實現單片機應用系統打下良好基礎。第二章 基于18b20的溫度測量儀設計任務2.1 設計內容 基于18b20的溫度測量儀是以溫度傳感器ds18b20為關鍵的測溫系統,測得的溫度由三位數碼管顯示,精確到一度。2.2 課程設計要求掌握18b20溫度傳感器原理;三位數碼管顯示溫度值。2.2.1 控制要求 設計技術參數,溫度測量精確到一度。2.2.2 設計要求設計出硬件電路,說明工作原理,編寫程序,調試、得到要求現象。第三章 系統硬件設計與選型3.1 總體設計思想與選型本次課程設計會用到的主要器件是51單片機和ds18b20溫度

6、傳感器以及數碼管,主要就是通過溫度傳感器的檢測,把實際測得的溫度值轉換成二進制,再傳回單片機處理,然后通過數碼管顯示出溫度值。其次是74ls138和74lcx573芯片,用來控制數碼管顯示。3.2硬件設計方案系統的硬件部分主要包括:電源、晶振、復位、單片機、數碼管、ds18b20、74ls138和74lcx573。3.3 硬件設計系統原理圖 硬件電路原理圖反映了所用到的芯片的連接情況, 也可以清楚看到各硬件是如何連接的,具體請看圖3.4 選型芯片及其各自功能說明3.4.1 芯片列表 依照設計思路,本次設計使用了如下芯片:1. 微處理器89c512. 溫度傳感器 ds18b203. 譯碼器 74

7、ls1384. 集成芯片74lc5733.4.2 89c51的引腳與功能簡介mcs-51系列單片機是美國intel公司在1980年推出的高性能8位單片機,它包含51和52兩個子系列。單片機由于體積小、功耗低、易于產品化,面向控制,抗干擾能力強,適用溫度范圍寬,可以方便地實現和分布式控制等優點,因而被廣泛地應用于各種控制系統和分布式系統中。89c51和mcs-51是完全兼容的,是一種帶4k字節閃爍可編程可擦除只讀存儲器(fperomfalsh programmable and erasable read only memory)的低電壓、高性能cmos8位微處理器。 其主要特點如下: 8位cpu

8、。 工作頻率最高為24m。 128b數據存儲器。 4kb程序存儲器。 程序存儲器的尋址空間為64kb。 片外數據存儲器的尋址空間為64kb。 128個用戶位尋址空間。 21個字節特殊功能寄存器。 4個8位的并行i/o接口:p0、p1、p2、p3。 兩個16位定時/計數器。 兩個優先級別的5個中斷源。 1個全雙工的串行i/o接口,可多機通信。 111條指令,喊乘法指令和除法指令。 較強的位處理能力 。 采用單一+5v電源。對于89c52而言,不同之處在于:有256b的數據存儲器、8k的程序存儲器、全雙工串行i/o接口、6個中斷源、3個16位定時/計數器,工作頻率可升直33mhz。比51擁有更高的

9、性能。圖1-1是51單片機的接口硬件分布圖我們此次采用的是am-51h學習板(如圖1-2),板載的芯片是89c52芯片,擁有豐富功能模塊及外接電路,如圖的標注。i. 89c51單片機兩種封裝形式:(1) 雙列直插(pdip): 40引腳。 (2) 方形(plcc)封裝形式: 44引腳,有4條引腳是空腳(標為nc)。圖3-2(a)為引腳排列圖。圖3-2(b)為邏輯符號圖。 ii. 89c51引腳功能:1. 電源引腳vcc和vss(1) vcc :電源端,接+5v電源。(2) vss :接地端。2. 外接晶體引腳xtall和xtal2(1) xtal1:片內振蕩電路的輸入端; (2) xtal2:

10、片內振蕩電路的輸出端。3. 控制信號引腳 (1) rst / vpd:rst是復位信號輸入端,高電平有效。出現兩個機器周期以上的高電平時復位;圖3-4 89c51單片機引腳排列及邏輯符號圖 rst引腳的第二功能:備用電源vpd的輸入端; 當主電源vcc發生故障,降低到規定值時,此引腳可接備用供電,由vpd向內部ram提供備用供電,以保持片內ram中的數據。 (2) ale/prog:地址鎖存允許信號 訪問外部存儲器時,ale信號的輸出用于鎖存低8位地址的控制信號。 信號頻率為振蕩器的1/6; ale端可以驅動8個ttl負載; 對flash存儲器編程時,用于輸入編程脈沖信號。(3) /psen:

11、片外程序存儲器讀選通信號 低電平有效,可驅動8個ttl負載。(4) /ea(vpp):片內、外程序存儲器選擇端 編程電壓輸入端; 當/ea端為高電平時,先訪問片內eprom; 當/ea端接地時,只訪問片外eprom; 在flash存儲器編程時,提供編程電壓。 4. i / o引腳(1) p0口(p0.0p0.7): 第一功能:通用i/o口,用來輸入/輸出數據 第二功能:當cpu訪問片外存儲器時,分時提供低8位地址和高8位數據的復用總線。(2) p2口(p2.0p2.7): 第一功能:不擴展片外存儲器時,作為通用i/o口。 第二功能:擴展片外存儲器時,輸出片外存儲器的高8位地址。(3) p1口(

12、p1.0p1.7): 第一功能:通用i/o口。 第二功能:片內rom編程或校驗時,輸入片內rom的低8位地址。(4) p3口(p3.0p3.7): 第一功能:通用的i/o口。 第二功能:控制功能。iii. 89c51的外部總線外部總線結構圖如圖3-5所示。圖3-5 外部總線結構圖(1) 地址總線(ab)。16位,尋址范圍64kb。高8位(a15a8)由p2口輸出,低8位(a7 a0)由p0口輸出。(2) 數據總線(db)。8位,由p0口提供。(3) 控制總線(cb)。由4條控制線和p3口的第二功能狀態組成。 iv. 89c51的內部結構89c51單片機在一塊芯片中集成了cpu、ram、 rom

13、、定時器/計數器和i/o口等基本功能部件。各功能部件由內部總線連接在一起。89c51基本結構見圖3-6所示。圖3-6 89c51單片機基本結構圖cpu是單片機的核心部件,由運算器和控制器等部件組成。運算器的功能主要是進行算術運算和邏輯運算。由8位alu單元,兩個8位的暫存器,8位的累加器acc、b寄存器,程序狀態寄存器psw等組成。控制器用于控制單片機各部分的運行,由程序計數器pc,指令寄存器、譯碼器及定時控制邏輯和數據指針dptr組成。3.4.3 ds18b20溫度傳感器簡介ds18b20是dallas公司生產的單總線數字溫度傳感器芯片,具有3引腳to-92小體積封裝形式;溫度測量范圍為-5

14、5+125,可編程為9-12為a/d轉換精度,測量分辨率可達0.0625,被測溫度用16位補碼方式串行輸出;其工作電源既可在遠端引入,也可采用寄生電源方式產生;多個ds18b20可以并聯到3根或2根線上,cpu只需一根端口線就能與諸多ds18b20通信,占用微處理器的端口較少。可廣泛用于工業、民用、軍事等領域的溫度測量及控制儀器、測控系統和大型設備中。(一)ds18b20的主要特性如下:1、 適應電壓范圍寬:3.0v-5.5v,在寄生電源方式可有數據線共電。2、 在使用中不需要任何外圍元件。3、 獨特的單線接口方式:ds18b20與微處理器連接時僅需要一條信號線既可實現微處理器與ds18b20

15、的雙向通信。4、 溫度范圍:-55+125,在-10-+85時精度為0.5。5、 編程可實現分辨率為9-12位,對應的可分辨溫度分別為0.5、0.25、0.125和0.0625,可實現高精度測溫。6、 在9位分辨率時最多在93.75ms內把溫度值轉換為數字,12位分辨率時最多在750ms內把溫度值轉換為數字。7、 支持多點組網功能,多個ds18b20可以并聯在唯一的三線上,實現組網多點測溫。8、 用戶可自設定非易失性的報警上下限值。9、 負壓特性:電源極性接反時,溫度計不會因發熱而燒壞,但不能正常工作。(二)ds18b20內部結構主要由四部分組成:64位光刻rom、溫度傳感器、非揮發的溫度報警

16、觸發器th和tl、配置寄存器。該裝置信號線高的時候,內部電容器儲存能量通由1線通信線路給片子供電,而且在低電平期間為片子供電直至下一個高電平的到來重新充電。 ds18b20的電源也可以從外部3v-5 .5v的電壓得到。ds18b20的外部機構圖和內部結構圖(如圖1-3、1-4)圖1-4 ds1820內部結構 圖1-3 tq-92封裝及8腳soic封裝(三)ds18b20溫度值格式默認的12位轉化后得到的12位數據,存儲在18b20的兩個8比特的ram中,二進制中的前面5位是符號位,如果測得的溫度大于0,這5位為0,只要將測到的數值乘于0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測

17、到的數值需要取反加1再乘于0.0625即可得到實際溫度。 圖1-5 ds18b20溫度值格式表(四)ds18b20采用一線通信接口。因為一線通信接口,必須在先完成rom設定,否則記憶和控制功能將無法使用。主要首先提供以下功能命令之一: 1 )讀rom, 2 )rom匹配, 3 )搜索rom, 4 )跳過rom, 5 )報警檢查。這些指令操作作用在沒有一個器件的64位光刻rom序列號,可以在掛在一線上多個器件選定某一個器件,同時,總線也可以知道總線上掛有有多少,什么樣的設備。若指令成功地使ds18b20完成溫度測量,數據存儲在ds18b20的存儲器。一個控制功能指揮指示ds18b20的演出測溫。

18、測量結果將被放置在ds18b20內存中,并可以讓閱讀發出記憶功能的指揮,閱讀內容的片上存儲器。溫度報警觸發器th和tl都有一字節eeprom 的數據。如果ds18b20不使用報警檢查指令,這些寄存器可作為一般的用戶記憶用途。在片上還載有配置字節以理想的解決溫度數字轉換。寫th,tl指令以及配置字節利用一個記憶功能的指令完成。通過緩存器讀寄存器。所有數據的讀,寫都是從最低位開始。ds18b20有4個主要的數據部件:(1)光刻rom中的64位序列號是出廠前被光刻好的,它可以看作是該ds18b20的地址序列碼。64位光刻rom的排列是:開始8位(28h)是產品類型標號,接著的48位是該ds18b20

19、自身的序列號,最后8位是前面56位的循環冗余校驗碼(crc=x8+x5+x4+1)。光刻rom的作用是使每一個ds18b20都各不相同,這樣就可以實現一根總線上掛接多個ds18b20的目的。(2) ds18b20中的溫度傳感器可完成對溫度的測量,以12位轉化為例:用16位符號擴展的二進制補碼讀數形式提供,以0.0625/lsb形式表達,其中s為符號位。ds18b20內部結構主要由四部分組成:64位光刻rom,溫度傳感器,溫度報警觸發器th和tl,配置寄存器。存儲器ds18b20的存儲器包括高速暫存器ram和可電擦除ram,可電擦除ram又包括溫度觸發器th和tl,以及一個配置寄存器。存儲器能完

20、整的確定一線端口的通訊,數字開始用寫寄存器的命令寫進寄存器,接著也可以用讀寄存器的命令來確認這些數字。當確認以后就可以用復制寄存器的命令來將這些數字轉移到可電擦除ram中。當修改過寄存器中的數時,這個過程能確保數字的完整性。高速暫存器ram是由8個字節的存儲器組成;第一和第二個字節是溫度的顯示位。第三和第四個字節是復制th和tl,同時第三和第四個字節的數字可以更新;第五個字節是復制配置寄存器,同時第五個字節的數字可以更新;六、七、八三個字節是計算機自身使用。用讀寄存器的命令能讀出第九個字節,這個字節是對前面的八個字節進行校驗。存儲器的結構圖如圖4.6所示。64位光刻rom的前8位是ds18b2

21、0的自身代碼,接下來的48位為連續的數字代碼,最后的8位是對前56位的crc校驗。64-位的光刻rom又包括5個rom的功能命令:讀rom,匹配rom,跳躍rom,查找rom和報警查找。64-位光刻rom的結構圖如圖4.7所示。 ds18b20外部電源的連接方式ds18b20可以使用外部電源vdd,也可以使用內部的寄生電源。當vdd端口接3.0v5.5v的電壓時是使用外部電源;當vdd端口接地時使用了內部的寄生電源。無論是內部寄生電源還是外部供電,i/o口線要接5k左右的上拉電阻。連接圖如圖4.8、圖4.9所示。配置寄存器配置寄存器是配置不同的位數來確定溫度和數字的轉化。r1,r0是溫度的決定

22、位,由r1,r0的不同組合可以配置為9位,10位,11位,12位的溫度顯示。這樣就可以知道不同的溫度轉化位所對應的轉化時間,四種配置的分辨率分別為0.5,0.25,0.125和0.0625,出廠時以配置為12位。4.3.4.2 溫度的讀取ds18b20在出廠時以配置為12位,讀取溫度時共讀取16位,所以把后11位的2進制轉化為10進制后在乘以0.0625便為所測的溫度,還需要判斷正負。前5個數字為符號位,當前5位為1時,讀取的溫度為負數;當前5位為0時,讀取的溫度為正數。16位數字擺放是從低位到高位ds18b20常用rom、ram指令(如表1、表2)指 令 約定代碼功 能讀rom33h讀ds1

23、820溫度傳感器rom中的編碼(即64位地址) 符合 rom 55h發出此命令之后,接著發出 64 位 rom 編碼,訪問單總線上與該編碼相對應的 ds1820 使之作出響應,為下一步對該 ds1820 的讀寫作準備。 搜索 rom 0foh用于確定掛接在同一總線上 ds1820 的個數和識別 64 位 rom 地址。為操作各器件作好準備。 跳過 rom 0cch忽略 64 位 rom 地址,直接向 ds1820 發溫度變換命令。適用于單片工作。 告警搜索命令 0ech執行后只有溫度超過設定值上限或下限的片子才做出響應。 表1 rom指令表指 令 約定代碼功 能溫度變換44h啟動ds1820進

24、行溫度轉換,12位轉換時最長為750ms(9位為93.75ms)。結果存入內部9字節ram中。 讀暫存器 0beh 讀內部ram中9字節的內容 寫暫存器 4eh 發出向內部ram的3、4字節寫上、下限溫度數據命令,緊跟該命令之后,是傳送兩字節的數據。 復制暫存器 48h 將ram中第3 、4字節的內容復制到eeprom中。 重調 eeprom 0b8h 將eeprom中內容恢復到ram中的第3 、4字節。 讀供電方式 0b4h 讀ds1820的供電模式。寄生供電時ds1820發送“ 0 ”,外接電源供電 ds1820發送“ 1 ”。 表2 ram指令表(四)ds18b20操作時序ds18b20

25、的時序有著嚴格的要求,每個操作之間的電平時間必須按照資料上面的進行,不然就不能對溫度傳感器正確的操作,一般有芯片初始化操作、讀操作和寫操作。ds18b20控制方法指令約定代碼操作說明溫度轉換 44h 啟動ds18b20進行溫度轉換讀暫存器 beh 讀暫存器9個字節內容寫暫存器 4eh 將數據寫入暫存器的th、tl字節復制暫存器 48h 把暫存器的th、tl字節寫到e2ram中重新調e2ram b8h 把e2ram中的th、tl字節寫到暫存器th、tl字節讀電源供電方式 b4h 啟動ds18b20發送電源供電方式的信號給主cpu1.ds18b20的初始化(1) 先將數據線置高電平“1”。(2)

26、延時(該時間要求的不是很嚴格,但是盡可能的短一點)(3) 數據線拉到低電平“0”。(4) 延時750微秒(該時間的時間范圍可以從480到960微秒)。(5) 數據線拉到高電平“1”。(6)延時等待(如果初始化成功則在15到60毫秒時間之內產生一個由ds18b20所返回的低電平“0”。據該狀態可以來確定它的存在,但是應注意不能無限的進行等待,不然會使程序進入死循環,所以要進行超時控制)。(7)若cpu讀到了數據線上的低電平“0”后,還要做延時,其延時的時間從發出的高電平算起(第(5)步的時間算起)最少要480微秒。(8) 將數據線再次拉高到高電平“1”后結束。2. ds18b20的寫操作(1)

27、數據線先置低電平“0”。(2) 延時確定的時間為15微秒。(3) 按從低位到高位的順序發送字節(一次只發送一位)。(4) 延時時間為45微秒。(5) 將數據線拉到高電平。(6) 重復上(1)到(6)的操作直到所有的字節全部發送完為止。(7) 最后將數據線拉高。3. ds18b20的讀操作(1)將數據線拉高“1”。(2)延時2微秒。(3)將數據線拉低“0”。(4)延時15微秒。(5)將數據線拉高“1”。(6)延時15微秒。(7)讀數據線的狀態得到1個狀態位,并進行數據處理。(8)延時30微秒。3.4.3 74ls138的引腳與功能簡介74ls138引腳圖 74hc138管腳圖:74ls138 為

28、3 線8 線譯碼器,共有 54/74s138和 54/74ls138 兩種線路結構型式,其工作原理如下: 當一個選通端(g1)為高電平,另兩個選通端(/(g2a)和/(g2b))為低電平時,可將地址端(a、b、c)的二進制編碼在一個對應的輸出端以低電平譯出。 利用 g1、/(g2a)和/(g2b)可級聯擴展成 24 線譯碼器;若外接一個反相器還可級聯擴展成 32 線譯碼器。 若將選通端中的一個作為數據輸入端時,74ls138還可作數據分配器用與非門組成的3線-8線譯碼器74ls1383線-8線譯碼器74ls138的功能表無論從邏輯圖還是功能表我們都可以看到74ls138的八個輸出引腳,任何時刻

29、要么全為高電平1芯片處于不工作狀態,要么只有一個為低電平0,其余7個輸出引腳全為高電平1。如果出現兩個輸出引腳同時為0的情況,說明該芯片已經損壞。當附加控制門的輸出為高電平(s1)時,可由邏輯圖寫出由上式可以看出,同時又是這三個變量的全部最小項的譯碼輸出,所以也把這種譯碼器叫做最小項譯碼器。71ls138有三個附加的控制端、和。當、時,輸出為高電平(s1),譯碼器處于工作狀態。否則,譯碼器被禁止,所有的輸出端被封鎖在高電平,如表3.3.5所示。這三個控制端也叫做“片選”輸入端,利用片選的作用可以將多篇連接起來以擴展譯碼器的功能。帶控制輸入端的譯碼器又是一個完整的數據分配器。在圖3.3.8電路中

30、如果把作為“數據”輸入端(同時),而將作為“地址”輸入端,那么從送來的數據只能通過所指定的一根輸出線送出去。這就不難理解為什么把叫做地址輸入了。例如當101時,門的輸入端除了接至輸出端的一個以外全是高電平,因此的數據以反碼的形式從輸出,而不會被送到其他任何一個輸出端上。 3.4.4 74hc573的引腳與功能簡介74hc573包含八進制3態非反轉透明鎖存器,是一種高性能硅門cmos器件。74hc573跟ls/al573的管腳一樣。器件的輸入是和標準cmos輸出兼容的,加上拉電阻他們能和ls/alsttl輸出兼容。鎖存器輸入是和標準 cmos 輸出兼容的;加上拉電阻,他們能和 ls/alsttl

31、 輸出兼容。當鎖存使能端le為高時,這些器件的鎖存對于數據是透明的(也就是說輸出同步)。當鎖存使能變低時,符合建立時間和保持時間的數據會被鎖存。三態總線驅動輸出置數全并行存取緩沖控制輸入使能輸入有改善抗擾度的滯后作用原理說明:74hc573的八個鎖存器都是透明的d 型鎖存器,當使能(g)為高時,q 輸出將隨數據(d)輸入而變。當使能為低時,輸出將鎖存在已建立的數據電平上。輸出控制不影響鎖存器的內部工作,即老數據可以保持,甚至當輸出被關閉時,新的數據也可以置入。這種電路可以驅動大電容或低阻抗負載,可以直接與系統總線接口并驅動總線,而不需要外接口。特別適用于緩沖寄存器,i/o 通道,雙向總線驅動器

32、和工作寄存器。3.4.5 數碼管簡介此系統采用的是共陰極性的led數碼管,高電平點亮。如圖1-6 圖1-6 數碼管極性及端口分布 不過,我們此次是采用的四合一的數碼管。如圖1-7 圖 四合一數碼管圖 數碼管的硬件連接圖第四章 軟件設計4.1 源程序說明#include reg52.h#include intrins.h /_nop_();延時函數用#define disdata p0 /段碼輸出口#define discan p2 /掃描口#define uchar unsigned char#define uint unsigned intsbit dq=p13; /溫度輸入口uint h;

33、 uint temp;uchar code dis_712=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40;/共陰led段碼表 0 1 2 3 4 5 6 7 8 9 不亮 - uchar code scan_con4=0xfb,0xfa,0xf9,0xf8; /列掃描控制字uchar data temp_data2=0x00,0x00; /讀出溫度暫放uchar data display5=0x00,0x00,0x00,0x00,0x00; /顯示單元數據,共4個數據和一個運算暫用/*11us延時函數*/void delay(uint t) for (;t0;t-);/*顯示掃描函數*/scan() char k; for(k=1;k0;i-) dq=1;_nop_();_nop_(); /從高拉倒低 dq=0;_nop_();_nop_();_nop_();_nop_(); /5 us dq=val&0x01; /最低位移出 delay(6); /66 us val=val/2; /右移1位 dq=1; delay(1);/*ds18b20讀1字節函數*/從總線上取1個字節uchar read_byte(void)uchar i;uchar value=0;for(i=

溫馨提示

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

最新文檔

評論

0/150

提交評論