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

正文內(nèi)容

基于pic單片機(jī)的多路溫度巡回檢測系統(tǒng)設(shè)計(jì)論文-wenkub

2023-03-09 10:02:27 本頁面
 

【正文】 是完全分開的 ,一個(gè)用于指令 ,一個(gè)用于數(shù)據(jù) ,由于 可以對(duì)程序和數(shù)據(jù)同時(shí)進(jìn)行訪問 ,所以提高了數(shù)據(jù)吞吐率。多點(diǎn)溫度檢測系統(tǒng)通常能夠?qū)Χ鄠€(gè)工作點(diǎn)的溫度進(jìn)行檢測,顯示當(dāng)前溫度 ,并能夠?qū)囟冗M(jìn)行存儲(chǔ)和報(bào)警,還能將溫度上傳至 PC 機(jī),進(jìn)行后續(xù)處理。 MCU。系統(tǒng)中通過控制按鈕實(shí)現(xiàn)了實(shí)時(shí)各路的報(bào)警溫度,并且實(shí)現(xiàn)多路與任一單路溫度顯示切換,從而既可以進(jìn)行多路的檢測又可以進(jìn)行任一單路的監(jiān)控,而且還有數(shù)字跟圖形兩種顯示方式更為直觀。在溫度超過設(shè)定溫度時(shí) 溫度跟時(shí)間通過 24C02 存儲(chǔ)起來,以便查看,同時(shí) 可以 通過固定電話遠(yuǎn)程報(bào)警 ,還能將溫度上傳至 PC 機(jī),進(jìn)行后續(xù)處理。 Seria Communication。傳統(tǒng)的測溫元件有熱電偶和熱電阻,需很多硬件支持并且電路復(fù)雜。正因?yàn)樵? PIC 單片機(jī)中采用了哈佛雙總線結(jié)構(gòu),所以與常見的微控制器不同的一點(diǎn)是:程序和數(shù)據(jù)總線可以采用不同的寬度。 (3)寄存器組 : PIC 單片機(jī)的所有寄存器 ,包括 I/O 口 ,定時(shí)器和程序計(jì)數(shù)器等都采用 RAM結(jié)構(gòu)形式 ,而且都只需要一個(gè)指令周期就可以完成訪問和操作 。在 4MHz時(shí)鐘下工作時(shí)耗電不超過 2mA,在睡眠模式下耗電可以低到 1uA 以下。 ( 8)程序保密性強(qiáng) 目前,尚無辦法對(duì)其直接進(jìn)行解密拷貝,可以最大限度的保護(hù)用戶的程序版權(quán)。 這里簡單介紹一下人工復(fù)位 人 工復(fù)位:無論是單片機(jī)在正常運(yùn)行程序,還是處在睡眠狀態(tài)或出現(xiàn)死機(jī)狀態(tài),只要在人工復(fù)位端 MCLR 加入低點(diǎn)平信號(hào),就令其復(fù)位。 PIC16F877A 的時(shí)鐘電路是由片內(nèi)的一個(gè)反相器和一個(gè)反饋電阻,與外接的 1個(gè)石英晶體和 2個(gè)電容,共同構(gòu)成的一個(gè)自激多諧振蕩器。芯片自身功能的增加給設(shè)計(jì)帶來了很多靈活性,同時(shí)也是學(xué)習(xí)的難點(diǎn)。 //設(shè)置該字節(jié)數(shù)據(jù)為控制命令 rw = 0。 nop()。 chk_busy() 。 // 讀置高 rw=1。 // 讀數(shù)據(jù) e=0。顯示起始行是由 Z 地址計(jì)數(shù)器控制的,該命令自動(dòng)將 A0A5 位地址送入 Z 地址計(jì)數(shù)器,起始地址可以是 063 范圍內(nèi)任意一行。 本次設(shè)計(jì)液晶初始化如下: void lcd_init() { rst = 0。 // psb = 1。 //指定在寫入或讀取時(shí),光標(biāo)的移動(dòng)方向 send_i(0x0c)。 for(j = 0。 for(k = 0。 for(j = 0。 for(k = 0。 //打開繪圖顯示 send_i(0x30)。 const uchar table3[ ]={ 巡回檢測系統(tǒng) }。 // 寫:基 PIC 單片機(jī) send_i(0x90)。 // 寫:巡回檢測系統(tǒng) send_i(0x98)。基本驅(qū)動(dòng)跟 1602 相似難度不大。 ( 2) 獨(dú)特的單線接口方式,與微處理器連接時(shí)只需要一條口線即可實(shí)現(xiàn)微處理器與 DS18B20 的雙向通信。 ℃ ( 6) 可編程分辨率為 9~12 位,對(duì)應(yīng)的可分辨溫度分別為 ℃ 、℃、 ℃和 ℃,可實(shí)現(xiàn)高精度測溫。由此我們可以看出 DS18B20 主要由 4部分組成: 64位 ROM、溫度傳感器、非揮發(fā) 的溫度報(bào)警觸發(fā)器 TH和 TL、配置寄存器。光刻 ROM 的作用是使每一個(gè) DS18B20 都各不相同,這樣就可以實(shí)現(xiàn)一條總線 掛接多個(gè) DS18B20 的目的。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作 為從設(shè)備。DQ=0 void reset() { uchar st=1。 while(st) { DQ_LOW()。 //延時(shí) 60us if(DQ==1) //沒有接收到應(yīng)答信號(hào),繼續(xù)復(fù)位 st=1。 對(duì)于 DS18B20 的讀時(shí)隙是從主機(jī)把單總線拉低之后,在 15uS 之內(nèi)釋放單總線,以讓 DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。 //讀出溫度 static bit j。 DQ_LOW()。NOP()。 //拉至高電平 NOP()。NOP()。 //63us } return (value)。 uch temp。 0x01。NOP()。 //如果寫 1,拉高電平 delay(2, 7)。 val = val 1。 12位轉(zhuǎn)換時(shí)長典型值 750ms 讀暫存器 BEH 讀內(nèi)部 RAM中 9字節(jié)的數(shù)據(jù)。前 5 個(gè)數(shù)字為符號(hào)位,這 5 位同時(shí)變化,我們只需要判斷 11 位就可以了。 /***************************************************************** * 名 稱: get_temp() * 功 能:啟動(dòng)溫度轉(zhuǎn)換 *****************************************************************/ void get_tem() { uchar tem1,tem2,num。 //跳過 ROM write_byte(0x44)。 //再次復(fù)位,等待從機(jī)應(yīng)答 write_byte(0xCC)。 //讀出溫度高 8位 shu=(tem24|tem14)。 //取溫度十位 a2=temper%1000/100。 圖 DS18B20 原理圖 圖 DSB18B20 硬件連接實(shí)物圖 軟件設(shè)計(jì) 根據(jù) DS18B20 約定的通訊協(xié)議,每次使用 DS18B20 之前都必須經(jīng)過三個(gè)步驟,即先復(fù)位 DS18B20,接著發(fā)出 ROM操作指令,然后才可以發(fā)出 RAM操作指令以進(jìn)行溫度轉(zhuǎn)換等命令。我曾經(jīng)因此燒壞了兩個(gè)傳感器,得此痛訓(xùn)! 軟件設(shè)計(jì): DS18B20 時(shí)序要求較為嚴(yán)格,這里的嚴(yán)格不是說一 定要按手冊的時(shí)間一摸一樣而是說相對(duì)其他芯片來說嚴(yán)格了一點(diǎn)。開機(jī)會(huì)出現(xiàn) 85C 那是 18B20 復(fù)位值 不足: 此次設(shè)計(jì)沒有處理溫度負(fù)數(shù)情況,如果要處理應(yīng)該判斷最高位符號(hào)位,然后取反加一。該器件通過 IC總線接口進(jìn)行操作,有一個(gè)專門的寫保護(hù)功能。主器件和從器件都可以作為發(fā)送器或接 收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過器件地址輸入端 A0、 A1 和 A2 可以實(shí)現(xiàn)將最多 8 個(gè) AT24C02 器件連接到總線上。 圖 溫度儲(chǔ)存之后統(tǒng)計(jì)分析通過液晶顯示出來 管腳定義及接口實(shí)現(xiàn) AT24C02 管腳圖及硬件連接電路圖如圖 所示。當(dāng)使用 AT24C02 時(shí)最大可級(jí)聯(lián) 8 個(gè)器件。上拉電阻 不可以省,不然會(huì)出現(xiàn)問題。 DS1302 是 DS1202 的 升級(jí)產(chǎn)品,與 DS1202兼容,但增加了主電源 /后背電源雙電源引腳,同時(shí)提供了對(duì)后背電源進(jìn)行涓細(xì)電流充電的能力。當(dāng) Vcc2大于 Vcc1+ , Vcc2給 DS1302供電。 RST輸入有兩種功能:首先, RST 接通控制邏輯,允許地址 /命令序列送入移位寄存器;其次, RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。只有在 SCLK 為低電平時(shí),才能將 RST 置為高電平。位 5至位 1指示操作單元的地址 。 DS1302 一共 有 12個(gè)寄存器,其中有 7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為 BCD 碼形式 ,其日歷、時(shí)間寄存器及其控制字見 圖 。 DS1302 的接口實(shí)現(xiàn) DS1302 的初始化過程非常簡單,在 DS1302 上電之后先關(guān)閉 DS1302 的寫保護(hù),接著依據(jù)不同的寄存器地址分別寫入年份、月份、日期,以及需要設(shè)定的時(shí)間,然后啟動(dòng) DS1302 的時(shí)鐘振蕩,打開寫保護(hù),這樣 DS1302 就能正常走時(shí)了,并且不會(huì)因 為誤操作而干擾到 DS1302。 DS1302 與 RAM 相關(guān)的寄存器分為兩類:一類是單個(gè) RAM單元,共 31個(gè),每個(gè)單元組態(tài)為一個(gè) 8位的字節(jié),其命令控制字為 C0H~ FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā) ( Burst) 方式下的 RAM 寄存器,此方式下可一次性讀寫所有的 RAM 的 31 個(gè)字節(jié),命令控制字為 FEH(寫 )、FFH(讀 )。 圖 固話內(nèi)部電路 圖 改裝后的固話 找出重?fù)苕I引腳之后通過外線引出來,中間通過一個(gè)繼電器連接單片機(jī)既可工作。 設(shè)計(jì)心得體會(huì) 沒有做不到 ,只有想不到,一個(gè)非常簡單的小小改裝就可以實(shí)現(xiàn)一個(gè)遠(yuǎn)程RC0 改裝后 的固話 溫度 監(jiān)控系統(tǒng) 繼電器 報(bào)警功能,其實(shí)生活就是缺少發(fā)現(xiàn)。 2. 波特率設(shè)為 119200bps。 //設(shè)置波特率為 119200BPS TXSTA=0X24。 //開放全局中斷 PEIE=0X1。而 的 MSComm 通信控件提供了標(biāo)準(zhǔn)的事件處理函數(shù)、事件、方法,并通過控件屬性對(duì)串口參數(shù)進(jìn)行設(shè)置,比較容易地解決了串口通信問題。時(shí)間延遲子程序,單位是毫秒 (ms) Dim TTamp。RS 是欲等待的字符 39?,F(xiàn)在的 X軸位置 Dim MaxPlotNo As Long 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。若通信端口號(hào)碼和現(xiàn)在的選擇一樣時(shí)就不必理會(huì),直接跳出此子程序 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。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。關(guān)閉通信端口 End If = 已停止檢測并關(guān)閉通訊端口 = True 39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。當(dāng)選擇通信端口的 Combo 控件被選中后激活此事件 39。39。39。39。39。39。39。39。39。39。39。39。39。39。39。前一個(gè)測量值 39。正常時(shí)返回值是所得的完整字符串,不正常時(shí)返回值是空字符串 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 字符串返回,或是時(shí)間到達(dá) 39。 MSComm 控件具有功能完善的串口數(shù)據(jù)發(fā)送和接受功能,有兩種處理通信的方式,即事件驅(qū)動(dòng)方式和查詢方式,事 件驅(qū)動(dòng)方式是利用 MSComm 控件的OnComm 事件捕獲并處理通信錯(cuò)誤事件,是處理串行端口交互作用的一種非常有效的方法;查詢方式是通過檢查 CommEvent 屬性的值來判斷事件和錯(cuò)誤。用 開發(fā)串行通信程序有兩種法,一種是利用 Windows 的 API 函數(shù);另一種是采用 的通信控件 MSComm。 //使能串口工作,連續(xù)接收 RCIE=0X1。 單片機(jī)串口初始化: TRISC=0XFF。最為簡單且常用的是三線制接地法,即地、接收數(shù)據(jù)和發(fā)送數(shù)據(jù)三腳相連,本文只涉及到最為基本的接法,且直接用 RS232 相連,電路圖如圖 所示 圖 串口通信電路圖 本系統(tǒng)串行通信采用異步通信方式。 圖 固話報(bào)警連接圖 上限溫度通過軟件設(shè)計(jì)設(shè)定也可以通過功能按鍵設(shè)定,當(dāng)滿足條件達(dá)到上限溫度,單片機(jī)引腳觸發(fā)高電平引發(fā)繼電器工作既可實(shí)現(xiàn)自動(dòng)重?fù)?。拆出來后下一步就是找出重?fù)苕I對(duì)應(yīng)的引腳,先找到重?fù)苕I位置然后通過萬用表就可以測出重?fù)苕I對(duì)應(yīng)的兩個(gè)引腳線,這個(gè)過程相當(dāng)簡單,通過肉眼也能很快找出來。 圖 DS1302初始化 此外, DS1302 還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與 RAM 相關(guān)的 寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 圖 DS1302控制字 DS1302 的 數(shù)據(jù)輸入輸出 方式 (I/O) , 在控制指令字輸入后的下一個(gè) SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入 DS1302,數(shù)據(jù)輸入從低位即位 0 開始。 圖 DS1302 的控制字如圖 。如果在傳送過程中 RS
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1