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

正文內(nèi)容

基于pic單片機的多路溫度巡回檢測系統(tǒng)設(shè)計論文(參考版)

2025-03-02 10:02本頁面
  

【正文】 39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。單擊【結(jié)束】按鈕后激活此事件 39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。關(guān)閉通信端口 End If = 已停止檢測并關(guān)閉通訊端口 = True 39。若通信端口號碼和現(xiàn)在的選擇一樣時就不必理會,直接跳出此子程序 If + 1 = Then Exit Sub = False 39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。當選擇通信端口的 Combo 控件被選中后激活此事件 39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。前一個測量值 39?,F(xiàn)在的 X軸位置 Dim MaxPlotNo As Long 39。正常時返回值是所得的完整字符串,不正常時返回值是空字符串 Function WaitRS(Comm As MSComm, RS As String, DT As Long) As String Dim Buf$, TT As Long Buf = TT = GetTickCount Do Buf = Buf amp。RS 是欲等待的字符 39。等待 RS 字符串返回,或是時間到達 39。時間延遲子程序,單位是毫秒 (ms) Dim TTamp。 MSComm 控件具有功能完善的串口數(shù)據(jù)發(fā)送和接受功能,有兩種處理通信的方式,即事件驅(qū)動方式和查詢方式,事 件驅(qū)動方式是利用 MSComm 控件的OnComm 事件捕獲并處理通信錯誤事件,是處理串行端口交互作用的一種非常有效的方法;查詢方式是通過檢查 CommEvent 屬性的值來判斷事件和錯誤。而 的 MSComm 通信控件提供了標準的事件處理函數(shù)、事件、方法,并通過控件屬性對串口參數(shù)進行設(shè)置,比較容易地解決了串口通信問題。用 開發(fā)串行通信程序有兩種法,一種是利用 Windows 的 API 函數(shù);另一種是采用 的通信控件 MSComm。 //開放全局中斷 PEIE=0X1。 //使能串口工作,連續(xù)接收 RCIE=0X1。 //設(shè)置波特率為 119200BPS TXSTA=0X24。 單片機串口初始化: TRISC=0XFF。 2. 波特率設(shè)為 119200bps。最為簡單且常用的是三線制接地法,即地、接收數(shù)據(jù)和發(fā)送數(shù)據(jù)三腳相連,本文只涉及到最為基本的接法,且直接用 RS232 相連,電路圖如圖 所示 圖 串口通信電路圖 本系統(tǒng)串行通信采用異步通信方式。 設(shè)計心得體會 沒有做不到 ,只有想不到,一個非常簡單的小小改裝就可以實現(xiàn)一個遠程RC0 改裝后 的固話 溫度 監(jiān)控系統(tǒng) 繼電器 報警功能,其實生活就是缺少發(fā)現(xiàn)。 圖 固話報警連接圖 上限溫度通過軟件設(shè)計設(shè)定也可以通過功能按鍵設(shè)定,當滿足條件達到上限溫度,單片機引腳觸發(fā)高電平引發(fā)繼電器工作既可實現(xiàn)自動重撥。 圖 固話內(nèi)部電路 圖 改裝后的固話 找出重撥鍵引腳之后通過外線引出來,中間通過一個繼電器連接單片機既可工作。拆出來后下一步就是找出重撥鍵對應(yīng)的引腳,先找到重撥鍵位置然后通過萬用表就可以測出重撥鍵對應(yīng)的兩個引腳線,這個過程相當簡單,通過肉眼也能很快找出來。 DS1302 與 RAM 相關(guān)的寄存器分為兩類:一類是單個 RAM單元,共 31個,每個單元組態(tài)為一個 8位的字節(jié),其命令控制字為 C0H~ FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā) ( Burst) 方式下的 RAM 寄存器,此方式下可一次性讀寫所有的 RAM 的 31 個字節(jié),命令控制字為 FEH(寫 )、FFH(讀 )。 圖 DS1302初始化 此外, DS1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與 RAM 相關(guān)的 寄存器等。 DS1302 的接口實現(xiàn) DS1302 的初始化過程非常簡單,在 DS1302 上電之后先關(guān)閉 DS1302 的寫保護,接著依據(jù)不同的寄存器地址分別寫入年份、月份、日期,以及需要設(shè)定的時間,然后啟動 DS1302 的時鐘振蕩,打開寫保護,這樣 DS1302 就能正常走時了,并且不會因 為誤操作而干擾到 DS1302。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302 一共 有 12個寄存器,其中有 7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為 BCD 碼形式 ,其日歷、時間寄存器及其控制字見 圖 。 圖 DS1302控制字 DS1302 的 數(shù)據(jù)輸入輸出 方式 (I/O) , 在控制指令字輸入后的下一個 SCLK 時鐘的上升沿時,數(shù)據(jù)被寫入 DS1302,數(shù)據(jù)輸入從低位即位 0 開始。位 5至位 1指示操作單元的地址 。 圖 DS1302 的控制字如圖 。只有在 SCLK 為低電平時,才能將 RST 置為高電平。如果在傳送過程中 RST 置為低電平,則會終止此次數(shù)據(jù)傳送, I/O 引腳變?yōu)楦咦钁B(tài)。 RST輸入有兩種功能:首先, RST 接通控制邏輯,允許地址 /命令序列送入移位寄存器;其次, RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。 X1和 X2是振蕩源,外接 。當 Vcc2大于 Vcc1+ , Vcc2給 DS1302供電。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。 DS1302 是 DS1202 的 升級產(chǎn)品,與 DS1202兼容,但增加了主電源 /后背電源雙電源引腳,同時提供了對后背電源進行涓細電流充電的能力。采用三線接口與 CPU 進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或 RAM 數(shù)據(jù)。上拉電阻 不可以省,不然會出現(xiàn)問題。 WP 寫保護 如果 WP 管腳連接到 Vcc,所有的內(nèi)容都被寫保護只能讀。當使用 AT24C02 時最大可級聯(lián) 8 個器件。 SDA 串行數(shù)據(jù) /地址 AT24C02 雙向串行數(shù)據(jù) /地址管腳用于器件所有數(shù)據(jù)的發(fā)送或接收,SDA 是一個開漏輸出管腳,可與其它開漏輸出或集電極開路輸出進行線或( wireOR)。 圖 溫度儲存之后統(tǒng)計分析通過液晶顯示出來 管腳定義及接口實現(xiàn) AT24C02 管腳圖及硬件連接電路圖如圖 所示。只要有溫度較大變化都會被儲存,隨時可以通過功能按鍵切換功能查看,也可以將溫度傳回 PC 機統(tǒng)計分析。主器件和從器件都可以作為發(fā)送器或接 收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過器件地址輸入端 A0、 A1 和 A2 可以實現(xiàn)將最多 8 個 AT24C02 器件連接到總線上。任何從總線接收數(shù)據(jù)的器件為接收器。該器件通過 IC總線接口進行操作,有一個專門的寫保護功能。 5 存儲芯片 AT24C02 簡 單介紹及接口實現(xiàn) AT24C02 功能描述 管腳定義 AT24C02 是一個 2K 位串行 CMOS E2PROM, 內(nèi)部含有 256 個 8 位字節(jié), CATALYST 公司的先進 CMOS 技術(shù)實質(zhì)上減少了器件的功耗。開機會出現(xiàn) 85C 那是 18B20 復(fù)位值 不足: 此次設(shè)計沒有處理溫度負數(shù)情況,如果要處理應(yīng)該判斷最高位符號位,然后取反加一。再有一個難點就是溫度轉(zhuǎn)換問題。我曾經(jīng)因此燒壞了兩個傳感器,得此痛訓(xùn)! 軟件設(shè)計: DS18B20 時序要求較為嚴格,這里的嚴格不是說一 定要按手冊的時間一摸一樣而是說相對其他芯片來說嚴格了一點。由于 DS18B20 對時序要求很嚴格, 所以在程序設(shè)計時,時序要多加注意一點,不過數(shù)字不是死的,只要控制合理控制也不是掃描大問題。 圖 DS18B20 原理圖 圖 DSB18B20 硬件連接實物圖 軟件設(shè)計 根據(jù) DS18B20 約定的通訊協(xié)議,每次使用 DS18B20 之前都必須經(jīng)過三個步驟,即先復(fù)位 DS18B20,接著發(fā)出 ROM操作指令,然后才可以發(fā)出 RAM操作指令以進行溫度轉(zhuǎn)換等命令。 //小數(shù)點后個位 a4=temper%10。 //取溫度十位 a2=temper%1000/100。 //溫度小數(shù)部分 temper=(int)aaa。 //讀出溫度高 8位 shu=(tem24|tem14)。 //發(fā)送讀溫度命令 tem1=read_byte()。 //再次復(fù)位,等待從機應(yīng)答 write_byte(0xCC)。num0。 //跳過 ROM write_byte(0x44)。 reset()。 /***************************************************************** * 名 稱: get_temp() * 功 能:啟動溫度轉(zhuǎn)換 *****************************************************************/ void get_tem() { uchar tem1,tem2,num。前 5 位為 0 時,讀取的溫度為正值,且溫度為正值時,只要將測得的數(shù)值乘以 即可得到實際溫度值。前 5 個數(shù)字為符號位,這 5 位同時變化,我們只需要判斷 11 位就可以了。 表 4 DS18B20溫度數(shù)據(jù)存儲格式 位 7 位 6 位 5 位 4 位 3 位 2 位 1 位 0 23 22 21 20 21 22 23 24 位 15 位 14 位 13 位 12 位 11 位 10 位 9 位 8 S S S S S 26 25 24 DS18B20 在出廠是默認配置為 12 位,其中 最高位為符號位,即溫度值共 11位,單片機在讀取數(shù)據(jù)時,一次會讀 2字節(jié)共 16位,讀完后將低 11位的二進制數(shù)轉(zhuǎn)化為十進制數(shù)后再乘以 便為所測的實際溫度值。 12位轉(zhuǎn)換時長典型值 750ms 讀暫存器 BEH 讀內(nèi)部 RAM中 9字節(jié)的數(shù)據(jù)。 表 2 DS18B20高速暫存器結(jié)構(gòu) 寄存器內(nèi)容 字節(jié)地址 溫度值低位( LSB) 0 溫度值高位( MSB) 1 高溫限值( TH) 2 低溫限值( TL) 3 配置寄存器 4 保留 5 保留 6 保留 7 CRC校驗值 8 DS18B20 所包含的操作指令如表 3所示。 val = val 1。 NOP()。 //如果寫 1,拉高電平 delay(2, 7)。NOP()。NOP()。 NOP()。 0x01。i 0。 uch temp。 對于 DS18B20 寫 0 時序和寫 1時序的要求不同,當要寫 0時序時,單總線要被拉低至少 60us,保證 DS18B20 能夠在 15us 到 45us 之間能夠正確地采樣 IO總線上的“ 0”電平,當要寫 1時序時,單總線被拉低之后,在 15us之內(nèi)就得釋放單總線。 //63us } return (value)。 if (j) value |= 0x80。NOP()。NOP()。 //拉至高電平 NOP()。NOP()。NOP()。NOP()。 DQ_LOW()。i 0。 //讀出溫度 static bit j。 圖 DS18B20讀時序圖 /******************************************************************** * 名 稱: read_byte() * 功 能: 18b20 讀字節(jié) * 出口參數(shù):讀出 18B20 的內(nèi)容 ********************************************************************/ uch read_byte() { uch i。 對于 DS18B20 的讀時隙是從主機把單總線拉低之后,在 15uS 之內(nèi)釋放單總線,以讓 DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。 delayus(50,10)。 //延時 60us if(DQ==1) //沒有接收到應(yīng)答信號,繼續(xù)復(fù)位 st=1。 // 延時 503us DQ_HIGH()。 w
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1