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

正文內(nèi)容

基于gprs數(shù)據(jù)監(jiān)控采集終端的實(shí)現(xiàn)畢業(yè)論文-文庫(kù)吧資料

2025-07-11 20:53本頁(yè)面
  

【正文】 證程序的穩(wěn)定性,在發(fā)送字符串時(shí)要禁能串行口中斷。直到字符串全部發(fā)送完畢才使能串行口中斷并返回到主程序。當(dāng)程序中有字節(jié)寫(xiě)入 SBUF0 寄存器時(shí),串行口立即進(jìn)入字符串發(fā)送狀態(tài)。 本系統(tǒng)在發(fā)送字符串時(shí)使用的是查詢方式。字符串處理子函數(shù)的程序流程圖如圖 49所示。 字符串處理子函數(shù)主要功能是處理串行口接收到的字符串,使接收到的字符串更容易辨別。字符串發(fā)送完畢后,標(biāo)志位 TI 會(huì)置 1,在程序中我們寫(xiě)入SBUF0 之后就進(jìn)入等待 TI 置 1的等待循環(huán)結(jié)構(gòu)。為了保證程序的穩(wěn)定性,在發(fā)送字符串 時(shí)要禁能串行口中斷。字符串發(fā)送子函數(shù)的程序流程圖如圖 48 所示。 在本系統(tǒng) GPRS 數(shù)據(jù)傳輸部分,字符串發(fā)送子函數(shù)是一個(gè)很重要的函數(shù)。 22 Y N 開(kāi)始 T im e o u t= 0 T im e o u t+ + 發(fā)送“ AT ” 等待 5 0 0 M S 處理接收字符串 接收到“ OK ” ? Y T im e o u t 6 ? N 標(biāo)志位置 0 返回 標(biāo)志位置 1 圖 47 給出 “AT” 命令的程序流程圖 在發(fā)送 “AT” 命令后,考慮到數(shù)據(jù)傳輸有一定的延時(shí),在程序中總 是要限定等待一定的時(shí)間。和時(shí)鐘源選擇相關(guān)的寄存器有系統(tǒng)時(shí)鐘選擇寄存器 CLKSEL 和外部振蕩器控制寄存器OSCXCN 還有與鎖相環(huán)相關(guān)的寄存器 所有的 AT 命令子函數(shù)都有著相似的程序結(jié)構(gòu),這里以驗(yàn)證 GPRS 模塊正常初始化的 “AT” 命令作為一個(gè)例子。 該寄存器存儲(chǔ)串行口收發(fā)的 數(shù)據(jù)。這部分的程序設(shè)計(jì)設(shè)計(jì)大量的命令子函數(shù),這些子函數(shù)組成了 GPRS 數(shù)據(jù)傳輸?shù)闹鞒绦颉?表41是本系統(tǒng)所涉及的幾條 AT 指令及其 功 能。( 4)執(zhí)行命令。( 3)查詢命令。( 2)測(cè)試命令。一般來(lái)講 AT 命令包括四種類型:( 1)設(shè)置命令。 11= 2 5 6 1T CL KTH?定 時(shí) 器 的 溢 出 率( 42) 圖 46給出串行口通信的程序流程圖。 S MO D 011 = 132S MO D 111 = 116????當(dāng) 時(shí) : 方 式 的 波 特 率 定 時(shí) 器 的 溢 出 率當(dāng) 時(shí) : 方 式 的 波 特 率 定 時(shí) 器 的 溢 出 率 ( 41) 定時(shí)器 1 溢出率由定時(shí)器 1 的時(shí)鐘源( T1CLK)和重載值( TH1)確定。并選擇定時(shí)器 1 做 UART0 的波特率發(fā)生的時(shí)鐘源。與定時(shí)器相關(guān)的寄存器有定時(shí)器控制寄存器 TCON、定時(shí)器方式寄存器 TMOD 和時(shí)鐘控制寄存器 CKCON 等不再做詳細(xì)介紹。為了讓串行口正常的工作,除了設(shè)置這些寄存器的參數(shù)之外還要設(shè)置與時(shí)鐘選擇和定時(shí)器相關(guān)的寄存器。 SSTA0 是 UART0 狀態(tài)和時(shí)鐘選擇寄存器,該寄存器主要用于判定串 行口傳送數(shù)據(jù)的錯(cuò)誤檢測(cè)及串行口波特率發(fā)生器的時(shí)鐘源選擇。 與 UART0 相關(guān)的寄存器有 SCON0、 SSTA0、 SBUF0,這里對(duì)其作出簡(jiǎn)要的介紹。 要使用 UART0 必須現(xiàn)在交叉開(kāi)關(guān)的設(shè)置時(shí)使能 UART0,交叉開(kāi)關(guān)是通過(guò) XBR0、XBR1 和 XBR2 這三個(gè)寄存器設(shè)置的。接收數(shù)據(jù)被暫存于一個(gè)保持寄存器中, 19 這就允許 UART0 在軟件尚未讀取前一個(gè)數(shù)據(jù)字節(jié)的情況下開(kāi)始接收第二個(gè)輸入數(shù)據(jù)字節(jié)。 串行口通信的數(shù)據(jù)傳輸 C8051F120 有兩個(gè)串口 UART0 和 UART1,本設(shè)計(jì)使用的是 UART0。所以該部分的程序設(shè)計(jì)包括串行口通信程序設(shè)計(jì)和GPRS 數(shù)據(jù)傳輸程序設(shè)計(jì)。 電壓數(shù)據(jù)采集的程序流程圖如圖 45 所示。這兩種格式是通過(guò) 由于 GPRS 模塊返回的數(shù)據(jù)總是以回車符和換行符結(jié)束,所以在字符串處理模塊中就要以回車符和換行符為界限,把 GPRS 模塊的返回?cái)?shù)據(jù)分為幾個(gè)字符串分別存放在不同的數(shù)組里,在需要使用時(shí)直接從相應(yīng)的字符串?dāng)?shù)組中取出需要的數(shù)據(jù)即可。字符串處理子函數(shù) 。 字符串處理子函數(shù)主要功能是處理串行口接收到的字符串,使接收到的字符串更容易辨別。當(dāng) ADC0LJST 為 1 時(shí),ADC0H:ADC0L 寄存器數(shù)據(jù)左對(duì)齊。還有一點(diǎn)需要說(shuō)明的是,電壓數(shù)據(jù)轉(zhuǎn)換結(jié)束后 ADC0 存儲(chǔ)的電壓數(shù)據(jù)有左對(duì)齊和右對(duì)齊兩種格式。在 A/D 轉(zhuǎn)換過(guò)程中,先選定一個(gè)通道設(shè)置好 AD 轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)方式,然后在需要的時(shí)候想ADC0BUSY 位寫(xiě)入 1 觸發(fā) ADC0 進(jìn)行 A/D 轉(zhuǎn)換然后等待 AD0INT 位(數(shù)據(jù)轉(zhuǎn)換結(jié)束標(biāo)志位)置 1。根據(jù) GPRS 模塊 AT 指令手冊(cè), GPRS 模塊返回的數(shù)據(jù)最多有兩個(gè)換行符,所以在字符串處理子函數(shù)中只需要兩個(gè)存儲(chǔ)字符串的數(shù)組 Rec_temp1 和 Rec_temp2就行了。字符串處理子函數(shù)的程序流程圖如圖 49所示。字符串處理子函數(shù)主要功能是處理串行口接收到的字符串,使接收到的字符串更容易辨別。下面主要介紹 A/D 轉(zhuǎn)換的程序設(shè)計(jì)。 16 開(kāi)始 復(fù)位總線上的 D S 1 8 B 2 0 K= 0 K 2 ? 匹配第 K 路 DS1 8 B 2 0 啟動(dòng)第 K 路溫度轉(zhuǎn)換 讀取暫存器的數(shù)據(jù) 將暫存器數(shù)據(jù)轉(zhuǎn)化為十進(jìn)制數(shù)據(jù)并存儲(chǔ) 返回 Y N 圖 44 溫度采集的程序流程圖 電壓數(shù)據(jù)的采集的程序設(shè)計(jì) C8051F120 片內(nèi)集成了 8 路 12位精度的 A/D 轉(zhuǎn)換器,其入口在 1825 管腳。然后把所讀得的數(shù)據(jù)通過(guò)數(shù)據(jù)轉(zhuǎn)換就可以得到該地點(diǎn)的環(huán)境溫度。掛在總線上的溫度傳感器件就會(huì)把收到的序列號(hào)與自己的序列號(hào)相匹配,如果匹配成功該器件就可以繼續(xù)響應(yīng)總線控制器的指令。如果器件復(fù)位成功,就可以發(fā)出匹配 ROM 指令( 0x55),該指令發(fā)出后總線控制器上的 DS18B20 就處于等待匹配序列號(hào)的狀態(tài)。要采集制定地點(diǎn)的溫度,只要通過(guò)總線控制器將指定地點(diǎn)溫度傳感器件的序列號(hào)寫(xiě)入單線總線等待指定器件的響應(yīng)然后再做其他相關(guān)操作就可以了。圖 43 給出了讀取 DS18B20 序列號(hào)的程序流程圖。( 2)同時(shí)掛上所有的器件,通過(guò)廣播和排除的方法讀取器件的序列號(hào)。所以,讀取器件序列號(hào)必須在溫度采集之前進(jìn)行。 14 i= 0 開(kāi)始 i 8 ? 拉高 DQ 延時(shí) 2 u s 讀取數(shù)據(jù)右移一位 拉低 DQ 延時(shí) 4 u s 拉高 DQ i ++ 讀出數(shù)據(jù)送至讀取數(shù)據(jù)最高位 返回讀取數(shù)據(jù) N Y 圖 42 讀字節(jié) 子程序的程序流程圖 在多路溫度采集系統(tǒng)中,一條總線控制器上可以掛上無(wú)數(shù)的 DS18B20 器件。由于讀字節(jié)的時(shí)序和寫(xiě)字節(jié)的相似,限于篇幅這里只給出讀字節(jié)的程序流程圖。在這部分程序設(shè)計(jì)中 最重要的就是讀寫(xiě)和復(fù)位操作,下面分別對(duì)其進(jìn)行介紹在這部分程序設(shè)計(jì)中最重要的就是讀寫(xiě)和復(fù)位操作,下面分別對(duì)其進(jìn)行介紹 由于該器件是基于單線總線的,所有的讀列號(hào)來(lái)識(shí)別每一個(gè)器件的??偩€控制器就是通過(guò)它們的 ROM 中存儲(chǔ)的唯一的序列號(hào)來(lái)識(shí)別每一個(gè)器件的。 總線控制器就是通過(guò)它們的 ROM 中存儲(chǔ)的唯一的序列號(hào)來(lái)識(shí)別每一個(gè)器件的??偩€控制器就是通過(guò)它們的 ROM 中存儲(chǔ)的唯 一的序可以把所有的 DS18B20 掛在同一條線上。 由于 DS18B20 只有一根數(shù)據(jù)線與總線控制器相連接,當(dāng)總線控制器需要對(duì)進(jìn)行讀寫(xiě)字節(jié)操作時(shí)必須對(duì)其逐位的讀取或?qū)懭?。在這部分程序設(shè)計(jì)中最重要的就是讀寫(xiě)和復(fù)位操作,下面分別對(duì)其進(jìn)行介紹 由于該器件是基于單線總線的,所有的讀寫(xiě)操作都有一條數(shù)據(jù)線來(lái)完成,所以在使用過(guò)程中總線控制器必須要嚴(yán)格的遵守給定的時(shí)序。 總線控制器就是通過(guò)它們的 ROM 中存儲(chǔ)的唯一的序列號(hào)來(lái)識(shí)別每一個(gè)器件的。在實(shí)現(xiàn)多路溫度采集的系統(tǒng)中,可以把所有的 DS18B20 掛在同一條線上。 溫度數(shù)據(jù)采集的程序設(shè)計(jì) DS18B20 是基于單 線總線的數(shù)字溫度傳感器,總線控制器連接在 DS18B20 的開(kāi)始 關(guān)閉看門(mén)狗 系統(tǒng)時(shí)鐘初始化 UART0 初始化 ADC0 初始化 DS18B20 初始化 GPRS 模塊初始化 兩路溫度數(shù)據(jù)采集 兩 路溫度數(shù)據(jù)傳送 八路電壓數(shù)據(jù)采集 八路電壓數(shù)據(jù)傳送 13 DQ 管腳上,控制器所有的讀寫(xiě)操作都是通過(guò)該管腳實(shí)現(xiàn)的。溫度數(shù)據(jù)的采集是通過(guò)支持單線總線協(xié)議的數(shù)字溫度傳感器 DS18B20 來(lái)實(shí)現(xiàn)的,八路電壓數(shù)據(jù)的采集則是通過(guò) C8051F120 集成的 8 路 12 位精度 A/D 轉(zhuǎn)換器實(shí)現(xiàn)的。系統(tǒng) 的初始化設(shè)置系統(tǒng)各組建的工作方式,包含 UART0 初始化、 ADC0 初始化、定時(shí)器初始化、溫度傳感器初始化等。 12 圖 41 主程序流程圖 主程序決定了系統(tǒng)的框架,系統(tǒng)所要實(shí)現(xiàn)的各種功能都需要通過(guò)主程序?qū)崿F(xiàn)。所以系統(tǒng)軟件設(shè)計(jì)包括數(shù)據(jù)采集部分程序設(shè)計(jì)、 GPRS 數(shù)據(jù)傳輸部分程序設(shè)計(jì)和上位機(jī)軟件程序設(shè)計(jì)三個(gè)部分。 4 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)軟件部分的設(shè)計(jì)包括基于單片機(jī)的程序設(shè)計(jì)和基于 LabVIEW 的上位機(jī)軟件設(shè)計(jì)。一個(gè)簡(jiǎn)單的電路接法是: SYNC 端 11 通過(guò)電阻接到 NPN 三極管(如 9013)的基極,射極接地,集電極通過(guò)一個(gè)限流電阻接到 LED2 的負(fù)端, LED2 的正端接 VCC。( 2) SYNC 引腳可以用來(lái)輸出一個(gè)同步信號(hào)( synchronization signal),也可以在應(yīng)用使來(lái)控制一個(gè) LED2 燈的輸出狀態(tài)。對(duì)于點(diǎn)火信號(hào) IGT的處理,需要首先拉低該引腳的電平到地,并至少維持 100ms。 VBATT1VBATT2VBATT3VBATT4VBATT5GND6GND7GND8GND9GND10POWER11POWER12VDD13AKKU_TEMP14IGT15DSR0_RXD116RING0_TXD117RXD018TXD019CTS020RTS021DTR0_SB22DCD023CCIN24CCRST25CCIO26CCCLK27CCVCC28CCGND29LOW_BATTERY30PD31SYNC32EPP233EPN234EPP135EPN136MICP137MICN138MICP239MICN240GTM900CU7VCC220nFC16100uF\10VC17GNDVCC1KR2247KR2347KR25R241KR271KR26LED2LED3Q18050Q28550GNDGNDRINGVCCRXDTXDGNDRINGCCRSTCCINCCCLKCCGNDCCVCCVCC100KR28330uF\16VC28D81N4007GND 圖 37 GTM900C 的外圍電路電路圖 其中需要說(shuō)明的有以下幾點(diǎn):( 1)觸發(fā)點(diǎn)火信號(hào)端 IGT, 用 OC 門(mén)或者一個(gè)簡(jiǎn)單的開(kāi)關(guān)拉低該端電平來(lái)開(kāi)啟模塊,低電平有效。 GTM900C 模塊一共有 40 個(gè)信號(hào)連接口,其各信號(hào)連接口的功能如表31所示。 9 VCC1RST2CLK3CCIN7GND4VPP5IO6VCC8U8SIM100pFC2222RR1622RR1722RR1822RR1910KR2010KR2127nHL2CCGND GNDCCGNDCCVCCCCINCCCLKCCRSTCCVCC 圖 36 SIM 卡外圍電路電路圖 ( 3) GTM900C 外圍電路 GTM900C 是華為公司生產(chǎn)的一款雙頻 GSM/GPRS 無(wú)線通信模塊。 J2S1 D21N4007VIN1OUT2GND3FEBACK4ON/OFF5LM2576100pFC15GNDD31N5822GNDGND100mHL1C18470uFC19470uFC20470uFC21GNDVCCR121KR13R14D422R15LED1GNDGND 圖 35 GPRS 部分的供電電路 ( 2) SIM 卡外圍電路 在本系統(tǒng)的工作工程中使用了移動(dòng)通信公司提供的 GPRS 業(yè)務(wù),要使用該項(xiàng)業(yè)務(wù)就要用到移動(dòng)公司的 SIM 卡。對(duì)于其各部分功能不再 詳細(xì)的給出。下面分別其他幾個(gè)電路模塊進(jìn)行介紹。 34 GTM900C 的邏輯框圖 GPRS 模塊的電路 GPRS 模塊部分的電路分為四個(gè)部分:供電電源電路,串行通信電路, SIM 卡外圍電路以及 GTM900C 外圍電路。 GTM900C 使用 AT 指令集,通過(guò) UART 接口與外部 CPU 進(jìn)行通信,主
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1