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

正文內(nèi)容

基于單片機的超溫警報顯示電路(編輯修改稿)

2025-07-24 19:48 本頁面
 

【文章內(nèi)容簡介】 ED3=1。 //左第四位 溫度小數(shù)部分 在控制系統(tǒng)中,有些參數(shù)的計算是非常復(fù)雜的,用公式計算不僅程序長,難于計算,而且需要耗費大量時間。還有一些非線形參數(shù),它們不是用一般算術(shù)運算就可以計算出來的,所有這些運算用編程的方法比較復(fù)雜,有些參數(shù)甚至無法建立相應(yīng)的數(shù)學(xué)模型,為了解決這些問題,可以采用查表法。溫度的小數(shù)部分采用的查表法。所謂的查表法,就是把事先計算或測得的數(shù)據(jù)按一定順序編制成表格,查表程序的任務(wù)就是根據(jù)被測參數(shù)的值或者中間結(jié)果,查出最終所需要的結(jié)果。查表法只需把轉(zhuǎn)換結(jié)果按序編成表,連續(xù)存放在ROM中,用查表指令即可實現(xiàn)轉(zhuǎn)換,查表法編程方便且程序量小,執(zhí)行速度快,修正起來方便。 溫度檢測子程序 溫度檢測子程序流程圖如圖4所示。本系統(tǒng)的溫度采集選用DS18B20溫度傳感器。在程序設(shè)計中S18B20溫度傳感器一般有四個步驟:初始化命令;傳送ROM命令;傳送RAM命令;數(shù)據(jù)交換命令。由于DS18B20有著嚴(yán)格的時序控制,因此在進行溫度采集時必須關(guān)閉所有的中斷,保證DS18B20安全的工作。初始化的時序是單片機先發(fā)出480~960us的復(fù)位脈沖,在15~60us后,DS18B20發(fā)出60~240us的應(yīng)答脈沖,完成對DS18B20的初始化。 DS18B20的傳送命令有:讀ROM命令(33H),匹配ROM命令(55H),跳過ROM命令(CCH),搜索ROM命令(F0H),報警搜索命令(ECH)。傳送RAM命令有:溫度轉(zhuǎn)換命令(44H),讀存儲器命令(EBH),寫存儲器命令(4EH),復(fù)制存儲器命令(48H),讀EEPROM命令(B8H),讀供電方式命令(B4H)。數(shù)據(jù)交換命令是用具體的讀/寫時序脈沖讀出或?qū)懭霐?shù)據(jù)。 對于DS18B20的讀時序分為讀0時序和讀1時序兩個過程。DS18B20的讀時隙是從主機把單總線拉低之后,在15秒之內(nèi)就得釋放單總線,以讓DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。DS18B20在完成一個讀時序過程,至少需要60us才能完成。 對于DS18B20的寫時序仍然分為寫0時序和寫1時序兩個過程。兩種寫時隙均起始于主機拉低總線,DS18B20寫0時序和寫1時序的要求不同,當(dāng)要寫0時序時,單總線要被拉低至少60us,保證DS18B20能夠在15us到45us之間能夠正確地采樣IO總線上的“0”電平,當(dāng)要寫1時序時,單總線被拉低之后,在15us之內(nèi)就得釋放單總線。寫時隙起始后1560μs期間,單總線器件采樣總線電平狀態(tài)。如果在此期間采樣為高電平,則邏輯1被寫入該器件,如果為0,則寫入邏輯0。當(dāng)DS18B20 接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第2字節(jié)。單片機可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,℃/LSB形式表示。溫度值格式如下。低字節(jié)格式:232178。212021222324高字節(jié)格式:SSSSS262524溫度存儲器高位的前5位為符號位,當(dāng)溫度大于零時,這5位為0,當(dāng)溫度小于零時,這5位為1,高位剩下的三位和低位的前四位是溫度的整數(shù)位,低位的后四位是小數(shù)位,當(dāng)溫度大于零時它們以原碼的形式存儲,而當(dāng)溫度小于零時都以二進制補碼的形式存儲,當(dāng)轉(zhuǎn)換位數(shù)為12位時,℃。在使用DS18B20時應(yīng)注意:主機控制DS18B20完成溫度轉(zhuǎn)換時,在每一次讀寫之前,都要對DS18B20進行復(fù)位,而且該復(fù)位要求主CPU要將數(shù)據(jù)線下拉500μs,然后釋放。DS18B20收到信號后將等待16~60μs左右,之后再發(fā)出60~240μs的低脈沖。主CPU收到此信號即表示復(fù)位成功。實際上,較小的硬件開銷需要相對復(fù)雜的軟件進行補償。由于DS18B20與微處理器間采用串行數(shù)據(jù)傳送方式,因此,在對DS18B20進行讀寫編程時,必須嚴(yán)格地保證讀寫時序,否則,將無法正確讀取測溫結(jié)果。本設(shè)計中與DS18B20通訊步驟如下:初始化;ROM 命令:跳越ROM命令[CCh](由于在本設(shè)計中只有DS18B20一個單總線協(xié)議芯片);功能命令:溫度轉(zhuǎn)換命令[44h];延時;初始化;ROM 命令:跳越ROM命令[CCh];功能命令:讀暫存器命令[BEh]。溫度檢測的主程序如下:read_temp(){ ow_reset()。 //總線復(fù)位 write_byte(0xcc)。 // 發(fā)命令 Skip ROM write_byte(0x44)。 //發(fā)讀命令 ow_reset()。 //總線復(fù)位 write_byte(0xcc)。 //發(fā)命令 Skip ROM write_byte(0xbe)。 // Read 發(fā)轉(zhuǎn)換命令 tplsb=read_byte()。 //溫度低8位 tpmsb=read_byte()。 //溫度高8位} 按鍵模塊按鍵電路的作用是設(shè)置時間及溫度,一般按鍵電路有按鍵查詢式,CPU不斷的檢測是否有按鍵按下,這樣將會耗費大量的CPU時間,且反應(yīng)速度慢,實時性不強;還有一種是中斷式按鍵,只有當(dāng)有按鍵按下時,單片機產(chǎn)生中斷,開始處理按鍵的輸入功能,沒有鍵按下時單片機處理其他,不需要不停地查詢按鍵是否按下。這樣采用中斷使按鍵反應(yīng)速度快,同時減少單片機處理時間,本設(shè)計采用中斷擴展式電路。鍵盤掃描流程圖如圖5。在51系統(tǒng)中,中斷的允許或禁止是由片內(nèi)的中斷允許寄存器IE控制的,IE寄存器的地址是A8H,位地址為AFHA8H。寄存器的內(nèi)容及位地址如下:位地址AFAEADACABAA99A8位符號EA//ESET1EX1ET0EX0EA—中斷允許總控制位。EA=0時,表示CPU禁止所有中斷,即所有的中斷請求被屏蔽;EA=1時,表示CPU開放中斷,但每個中斷源的中斷請求時允許還是禁止,要看各自的允許控制。EX0(EX1)外部中斷允許控制位。EX0(EX1)=0,禁止外中斷;EX0(EX1)=1,允許外中斷。ET0(ET1)定時/計數(shù)器的中斷允許控制位。ET0(ET1)=0,禁止定時/計數(shù)器中斷;ET0(ET1)=1,允許定時/計數(shù)器中斷。ES串行中斷允許控制位。ES=0,禁止串行中斷,ES=1,允許串行中斷。在本系統(tǒng)的設(shè)計中采用的是中斷0,定時時間的計算方式為 (MX)T=定時值,即 (216X)*1=50所以 X=3CB0 定時/計數(shù)器T0由TH0和TH0構(gòu)成,T1由TH1和TL1構(gòu)成。TMOD用于控制和確定各定時/計數(shù)器的功能和工作模式。TCON用于控制定時/計數(shù)器T0、T1啟動和停止計數(shù),同時包含定時/計數(shù)器的狀態(tài)。它們屬于特殊功能寄存器,這些寄存器的內(nèi)容靠軟件設(shè)置。系統(tǒng)復(fù)位時,寄存器的所有位都被清零。根據(jù)計算結(jié)果,在本系統(tǒng)中, TH0=0X3C,Tl0=0XB0 根據(jù)硬件的設(shè)計方法,編寫程序基本結(jié)構(gòu)如下:/*****************************功能:按鍵輸入 說明:用到中斷0,~/****************************/void inkey_int0() interrupt 0 { uchar input。 P2=P2|0x0f。 input=P2。 switch(inputamp。0x0f) {case 0x0e: //1110最右邊 //按鍵1功能 break。 case 0x0d: //1101 //按鍵2功能 case 0xb: //1011 //按鍵3功能 case 0x07: //0111 //按鍵4功能 break。 default: break。 } }NN鍵盤掃描有鍵閉合?延時去鍵抖動掃描鍵盤Y找到閉合鍵?計算鍵值執(zhí)行相應(yīng)功能返回YNN開始關(guān)中斷初始化DS18B20設(shè)置溫度轉(zhuǎn)換命令調(diào)用寫命令子程序設(shè)置跳過ROM命令調(diào)用寫命令子程序調(diào)延時子程序設(shè)置跳過ROM命令調(diào)用寫命令子程序初始化DS18B20返回讀DS18B20得到溫度數(shù)據(jù)設(shè)置讀溫度命令調(diào)用寫命令子程序 圖4 溫度檢測流程圖 圖5 鍵盤掃描流程圖4 系統(tǒng)調(diào)試 仿真器和調(diào)試軟件的使用本系統(tǒng)的調(diào)試是利用的TKS系列的仿真器,調(diào)試軟件是Keil編譯軟件。TKS系列仿真器可以實時在線仿真PHILIPS半導(dǎo)體公司的80C51系列單片機的同時,還能夠?qū)崟r在線仿真ATMEL、HY、Winbond等公司兼容MCS51內(nèi)核的標(biāo)準(zhǔn)80C51單片機,徹底解決80C51開發(fā)中的仿真工具的瓶頸問題。TKS仿真器可以選用外部晶振作為系統(tǒng)時鐘,同時還提供6MHz、12MHz、24MHz三個內(nèi)部晶振。利用微機把源程序匯編為目標(biāo)程序并通過串行口把目標(biāo)程序送入仿真機。 Keil是基于80C51內(nèi)核的微處理器軟件開發(fā)平臺,內(nèi)嵌多種符合當(dāng)前工業(yè)標(biāo)準(zhǔn)的開發(fā)工具,可以完成工程建立和管理,編譯,連接,目標(biāo)代碼的生成,軟件仿真,硬件仿真等完整的開發(fā)流程。尤其C編譯工具在產(chǎn)生代碼的準(zhǔn)確性和效率方面達到了較高的水平。整個調(diào)式軟件的使用流程為:建立工程→為工程選擇目標(biāo)器件→設(shè)置工程的配置參數(shù)→打開/建立程序文件→編譯和連接工程→使用TKS仿真器對應(yīng)用程序進行仿真→將生成的Hex文件燒寫到ROM中運行測試。 模塊程序的調(diào)式 在系統(tǒng)聯(lián)調(diào)前必須保證各個模塊調(diào)試正確,在每個模塊單獨通過調(diào)試后才能把它們串聯(lián)起來,進行整個系統(tǒng)的聯(lián)調(diào)。 顯示模塊的調(diào)試:顯示模塊主要是顯示溫度的數(shù)據(jù),用三極管驅(qū)動數(shù)碼管。先調(diào)試數(shù)碼管能被正確點亮,接著對數(shù)碼管的每個段
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1