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

正文內(nèi)容

基于單片機的除氧器壓力控制系統(tǒng)設(shè)計(編輯修改稿)

2025-02-14 16:29 本頁面
 

【文章內(nèi)容簡介】 出信號強制單片機復位重新啟動工作,保證儀器正常工作。本設(shè)計利用了MAX831L的手動復位輸入端。只要程序一旦跑飛引起程序“死機”,端電平由高到低,當變低超過140ms,將引起MAX831產(chǎn)生一個200ms的復位脈沖。同時使看門狗定時器清0和使腳變成高電平。也可以隨時使用手動復位按扭使MAX831L產(chǎn)生復位脈沖,由于為產(chǎn)生復位脈沖端要求低電平至少保持140ms以上,故可以有效地消除開關(guān)抖動。該電路可以適時地監(jiān)控電源故障(掉電、電壓降低等)。圖中RI的一端接未經(jīng)穩(wěn)壓的直流電源。電源正常時。當電源發(fā)生故障,電源故障輸出端電平由高變低,引起單片機中斷,CPU響應(yīng)中斷,執(zhí)行相應(yīng)的中斷服務(wù)程序,保護數(shù)據(jù),斷開外部用電電路等。程序正常運行時,以消除芯片內(nèi)部的看門狗定時器。實現(xiàn)指令為:,則內(nèi)部看門狗定時器溢出,8號引腳由高電平變?yōu)榈碗娖健R餗AX831L產(chǎn)生一個200ms的復位脈沖。同時使看門狗定時器清零和使8號引腳變成高電平[15]。需要引起注意的是,整個單片機系統(tǒng)完成復位后,在PC指針的指針下整個程序?qū)?000H地址處重新開始初始化運行,而這在很多情況下是不允許的(如連續(xù)的工藝流程),為此必須采取相應(yīng)的措施。首先在對單片機系統(tǒng)完成復位后,程序應(yīng)該先判斷是開機運行(冷啟動)還是運行過程中“死機”之后的重新加載運行(熱啟動)。因此一般情況下在這兩種啟動方式下,系統(tǒng)程序在進入主流程在進入主流程前所要做的工作往往不同。如冷啟動后,系統(tǒng)程序在初始化程序往往要進行系統(tǒng)資源的自檢以及將各外圍設(shè)備修改設(shè)置,只是對單片機系統(tǒng)本身的一些資源進行必要的設(shè)置工作。其次,在大多數(shù)情況下,我們總可以把一個連續(xù)的過程分解開來,把它變成一個個獨立的子過程(狀態(tài))組成的連續(xù)過程。在主程序運行過程中,適時保存相應(yīng)狀態(tài)和該狀態(tài)下的相關(guān)參數(shù)。其設(shè)計如圖311所示[16]。 圖311 看門狗電路 這樣當程序運行出現(xiàn)“死機”,在MAX831L作用下系統(tǒng)復位和初始化后,將首先查詢事先保存的狀態(tài)參數(shù),然后根據(jù)此參數(shù)決定程序的流向。同時把該狀態(tài)下事先保存的參數(shù)取出,對系統(tǒng)外圍設(shè)備進行必要的恢復設(shè)置工作和引導程序繼續(xù)運行。第4章 系統(tǒng)軟件設(shè)計 系統(tǒng)軟件相關(guān)介紹8051系類單片機共擁有111條系統(tǒng)指令,可實現(xiàn)51種基本操作。然而匯編語言指令卻有程序的可讀性低,程序開發(fā)人員的開發(fā)時間長與開發(fā)難度大,程序移植性差等缺點。C語言是一種編譯型程序設(shè)計語言。它兼顧了多種高級語言的特點,并具備匯編語言的功能。用C語言來編寫目標系統(tǒng)軟件,會大大縮短開發(fā)周期,增加軟件的可讀性,便于改進和擴充。用C語言進行51系列單片機程序設(shè)計是單片機開發(fā)與應(yīng)用的必然趨勢。KEIL C51開發(fā)工具套件可用于匯編C語言程序、匯編源程序,鏈接和定位目標文件和庫,創(chuàng)建HEX文件以及調(diào)試目標程序[17]。本設(shè)計使用KEIL C51 μVision4為開發(fā)編譯環(huán)境,使用C語言編寫程序,實現(xiàn)各模塊功能設(shè)計。 系統(tǒng)主程序流程圖系統(tǒng)主程序的功能主要是完成對單片機的初始化,設(shè)置警戒壓力的上下限值,實時顯示壓力值以及鍵盤掃描等工作。主程序流程圖如圖41所示。系統(tǒng)啟動CPU初始化參數(shù)設(shè)定按鍵輸入按鍵處理采樣子程序顯示實時壓力數(shù)據(jù)處理子程序控制調(diào)節(jié)閥顯示開關(guān)是否是圖41 主程序流程圖 系統(tǒng)初始化該模塊在系統(tǒng)上電開機時將系統(tǒng)端口、數(shù)據(jù)存儲區(qū)、標志位、指針、地址等賦予有含義的值。具體分為以下幾個模塊列表描述。: 初始化參數(shù)及含義模塊變量/端口初始值功能控制端口初始化adRD/1A/D轉(zhuǎn)換芯片數(shù)據(jù)讀入控制,初始為不讀入adWR/0A/D轉(zhuǎn)換芯片轉(zhuǎn)換控制,初始為停止E/0通信接收發(fā)送控制,初始為接收DIS/0顯示數(shù)據(jù)鎖存控制,初始為保持RELAY/1繼電器控制,初始狀態(tài)為斷開波特率發(fā)生器初始化TMOD0x22單片機片內(nèi)定時/計數(shù)器工作在方式二SCON0x40串行口為8位UART工作方式TH10xf4波特率設(shè)置為4800bpsTL10xf4IE0禁止定時器中斷TR11啟動定時器REN1允許串行口接收數(shù)據(jù)數(shù)據(jù)參數(shù)初始化xmark0x7531數(shù)據(jù)存儲狀態(tài)標志字節(jié)指針numtab0x0001數(shù)據(jù)存儲區(qū)指針Uplq0xCF高壓力警戒值,初始值downlq0x10低壓力警戒值,初始值 顯示與A/D轉(zhuǎn)換的數(shù)據(jù)處理系統(tǒng)中,顯示輸出的要求為壓縮BCD碼,而A/D轉(zhuǎn)換輸入的數(shù)據(jù)是8位16進制碼,因此在實現(xiàn)顯示之前需要編碼的轉(zhuǎn)換。對8位A/D轉(zhuǎn)換器而言,其十六進制、相對滿偏電壓比率、: A/D轉(zhuǎn)換幅值數(shù)據(jù)關(guān)系對照表十六進制二進制滿刻度比率相對電壓幅值Vref=高四位低四位高四位電壓低四位電壓F111115/1615/256E111014/1614/256D110113/1613/256C110012/1612/256B101111/1611/256A101010/1610/256910019/169/256010008/168/256701117/167/256601106/166/256501015/165/256401004/164/256300113/163/256200102/162/256100011/161/256000000/160/256設(shè)輸入8位二進制數(shù)據(jù)為,的商即為以分米為單位的壓力數(shù)據(jù),余數(shù)為以厘米為單位的數(shù)據(jù),由于顯示位數(shù)僅為2位,最低位為分米,固使用“二舍三入”的辦法保留分米單位的整數(shù)倍數(shù)據(jù)。為了將這個數(shù)據(jù)轉(zhuǎn)換為為壓縮BCD碼,再將,得到的商左移四位(相當于乘以16)為壓縮BCD碼高四位,余數(shù)為壓縮BCD碼低四位,二者相加,就是最終的結(jié)果。對于ADC0809的工作流程,[18]。綜上,電壓幅值與壓力在數(shù)值上是相等的。為了通過LCD直觀顯示壓力,進行轉(zhuǎn)換的思路如下:圖42 ADC0809的工作流程圖 按鍵部分軟件設(shè)計由于使用的按鍵較少,所以本文采用了獨立式鍵盤,即每個按鍵單獨占用一根口線。在程序查詢方式下,通過I/O端口讀入按鍵狀態(tài),當有按鍵按下時,相應(yīng)的端口變?yōu)榈碗娖?,這樣通過讀入I/O口狀態(tài)判斷是否有按鍵按下。圖43 查詢式鍵盤的程序流程圖 通信協(xié)議及通信模塊軟件設(shè)計①通信協(xié)議為了使PC上位機與設(shè)備實現(xiàn)有意義的通信,設(shè)計了簡單的通信協(xié)議。通信波特率設(shè)計為4800bps,過高的波特率在沒有檢糾錯方式的情況下易發(fā)生數(shù)據(jù)的丟失,過低的波特率會使傳輸變慢。傳送以字節(jié)為單位,發(fā)送命令與數(shù)據(jù)。軟件設(shè)計上,系統(tǒng)以查詢的方式檢測上位機的命令控制字,并及時進入各響應(yīng)函數(shù)予以響應(yīng)[19] 。 通信協(xié)議上位機命令控制字含義下位機命令控制字含義0x00請求聯(lián)機檢測0xF0響應(yīng)聯(lián)機檢測成功0x01讀系統(tǒng)時間0xF1響應(yīng)寫時間指令,發(fā)送7字節(jié)時間數(shù)據(jù)0x02設(shè)置系統(tǒng)時間0xF2響應(yīng)度時間指令,接收7字節(jié)時間數(shù)據(jù)0x03讀當前壓力值0xF3響應(yīng)讀當前壓力指令,發(fā)送1字節(jié)壓力數(shù)據(jù)0x04讀記錄數(shù)據(jù)0xF4響應(yīng)讀記錄數(shù)據(jù)指令,發(fā)送2字節(jié)數(shù)據(jù)量及相應(yīng)數(shù)據(jù)0x05讀壓力上下限0xF5響應(yīng)讀壓力上下限指令,發(fā)送2字節(jié)壓力上下限數(shù)據(jù)0x06設(shè)置壓力上下限0xF6響應(yīng)設(shè)置壓力上下限指令,接收2字節(jié)壓力上下限數(shù)據(jù)0x07讀當前壓力及電機狀態(tài)0xF7響應(yīng)讀當前壓力及電機狀態(tài)指令,發(fā)送2字節(jié)壓力數(shù)據(jù)及電機狀態(tài)②通信模塊的控制該模塊在控制上設(shè)計兩個函數(shù),一個是發(fā)送函數(shù),另一個是接收函數(shù)。由于采用半雙工的通信方式,需要控制變量E的置位與復位轉(zhuǎn)換發(fā)送與接收的狀態(tài)。發(fā)送的過程:置E為1,使系統(tǒng)處于發(fā)送數(shù)據(jù)狀態(tài);將數(shù)據(jù)寫入串行通信緩沖區(qū)SBUF;等待,直到發(fā)送完畢,將E清0,返回接收狀態(tài)。接收過程:清零E,使系統(tǒng)處于接收狀態(tài);等待,直到接收完畢,讀串行通信緩沖區(qū)SBUF;繼續(xù)保持接收狀態(tài)[20]。圖44 通訊檢測流程圖 時間模塊軟件設(shè)計DS1302內(nèi)部寄存器的定義直接影響著軟件的設(shè)計,大概可分為時間控制寄存器和內(nèi)部RAM寄存器。其中:CH: 時鐘停止位寄存器2的第7位12/24小時標志CH=0 振蕩器工作允許bit7=1,12小時模式CH=1 振蕩器停止bit7=0,24小時模式WP: 寫保護位寄存器2的第5位:AM/PM定義WP=0 寄存器數(shù)據(jù)能夠?qū)懭?AP=1 下午模式WP=1 寄存器數(shù)據(jù)不能寫入 AP=0 上午模式TCS: 涓流充電選擇DS:二極管選擇位TCS=1010 使能涓流充電 DS=01 選擇一個二極管TCS=其它 禁止涓流充電 DS=10 選擇兩個二極管DS=00 或11, 即使TCS=1010, 充電功能也被禁止RS: 涓流充電電阻選擇位由于DS1302數(shù)據(jù)傳輸方式為串行移位輸入輸出。地址、數(shù)據(jù)的寫操作流程是相同的。地址沒有讀操作。無論是讀還是寫,二者結(jié)構(gòu)類似。讀寫的核心是產(chǎn)生SCLK移位信號與移位,讀操作是將數(shù)據(jù)從DS1302的I/O口移入單片機,寫操作是將數(shù)據(jù)從單片機移入DS1302時鐘芯片。我們最終處理的對象是時間數(shù)據(jù)或狀態(tài)數(shù)據(jù),在獲取數(shù)據(jù)時,首先寫入地址,然后讀取數(shù)據(jù);寫入數(shù)據(jù)時,先寫入地址,再輸出數(shù)據(jù)。完成時間的模塊軟件的設(shè)計[21]。 RS狀態(tài)標志及含義RS位電阻典型值00無無01R12KΩ10R24KΩ11R38KΩ 第5章 系統(tǒng)軟件仿真 系統(tǒng)仿真軟件相關(guān)介紹 MATLAB簡介MATLAB是矩陣實驗室(MatrixLaboratory)之意。除具備卓越的數(shù)值計算能力外,它還提供了專業(yè)水平的符號計算,文字處理,可視化建模仿真和實時控制等功能。MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達式與數(shù)學,工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完成相同的事情簡捷得多。MATLAB控制系統(tǒng)仿真軟件是當今國際控制界公認的標準計算軟件,MATLAB擁有更豐富的數(shù)據(jù)類型和結(jié)構(gòu)、更友善的面向?qū)ο?、更加快速精良的圖形可視、更廣博的數(shù)學和數(shù)據(jù)分析資源、更多的應(yīng)用開發(fā)工具。特別是SIMULINK這一個交互式操作的動態(tài)系統(tǒng)建模、仿真、分析集成環(huán)境的出現(xiàn),使人們有可能考慮許多以前不得不做簡化假設(shè)的非線性因素、隨機因素,從而即使學生沒有對非線性動態(tài)系統(tǒng)進行分析研究的數(shù)學基礎(chǔ),仍可通過仿真來認知非線性對系統(tǒng)動態(tài)的影響。時至今日,經(jīng)過MathWorks公司的不斷完善,MATLAB已經(jīng)發(fā)展成為適合多學科,多種工作平臺的功能強大大大型軟件。在國外,MATLAB已經(jīng)經(jīng)受了多年考驗。在歐美等高校,MATLAB已經(jīng)成為線性代數(shù),自動控制理論,數(shù)理統(tǒng)計,數(shù)字信號處理,時間序列分析,動態(tài)系統(tǒng)仿真等高級課程的基本教學工具;成為攻讀學位的大學生,碩士生,博士生必須掌握的基本技能。在設(shè)計研究單位和工業(yè)部門,MATLAB被廣泛用于科學研究和解決各種具體問題。在國內(nèi),特別是工程界,MATLAB一定會盛行起來??梢哉f,無論你從事工程方面的哪個學科,都能在MATLAB里找到合適的功能[22]。 MATLAB仿真軟件相關(guān)操作 MATLAB仿真設(shè)計在本設(shè)計中,主要以51單片機設(shè)計的數(shù)據(jù)采集系統(tǒng)通過串口和MATLAB相連,通過自定的一項通訊協(xié)議,在MATLAB的界面上可以實現(xiàn)對測控系統(tǒng)的完全控制。如I/O口查詢,I/O口設(shè)置,數(shù)據(jù)實時采集顯示,數(shù)據(jù)處理等一系列功能。 單片機電路設(shè)計ATMEL公司生產(chǎn)的AT89C51單片機采用高性能的幾臺80C51設(shè)計,由先進工藝制造,并帶有非易失性Flash程序儲存器。它是一種高性能,低功耗的8位CMOS微處理芯片。該系統(tǒng)的硬件電路設(shè)計圖如圖51所示[23]。圖51 單片機測試系統(tǒng)圖 MATLAB對串口的編程串口通信接口用于計算機與外部設(shè)備進行通信,它以串行的方式傳送數(shù)據(jù),為了便于通信能順利進行,數(shù)據(jù)的發(fā)送方和接收方都必須遵守基本的規(guī)則。常用的串口接口標準有RS232,RS422和RS485。MATLAB的串口對象都支持這些標準,使我們能直接訪問外設(shè),通過建立串行接口對象,能實現(xiàn)如下功能:(1)配置串行接口通信(2)讀寫數(shù)據(jù)(3)用事件和回調(diào)函數(shù)(4)記錄信息到磁盤 MATLAB與單片機測控系統(tǒng)的軟件設(shè)計定義五字節(jié)的數(shù)據(jù)為一幀開始位55HXXXXXX校驗位第一位為開始位,向單片機發(fā)送55H;第二位位功能判斷位:設(shè)置I/O狀態(tài)參數(shù)時發(fā)送數(shù)據(jù)0x01;查詢I/O狀態(tài)參數(shù)時發(fā)送數(shù)據(jù)0x02;選擇A/D轉(zhuǎn)換時發(fā)送數(shù)據(jù)0x03;第三位為端口選擇判斷位:端口8位端口P0P2P3A/D送數(shù)據(jù)/0x080x090x100x11第四位為數(shù)據(jù)位,即要發(fā)送的數(shù)據(jù)。在該系統(tǒng)中規(guī)定:設(shè)置P0,P2,P3狀態(tài)時,該位為用戶事先設(shè)定的數(shù)據(jù);查詢P0,P2,P3狀態(tài)時,該位發(fā)送數(shù)據(jù)0x00。第五位為數(shù)據(jù)校驗位,在該系統(tǒng)中,采用累加和校驗,以達到軟件抗干擾的目的,增加通信的可靠性[24]。 MATLAB仿真程序流程在該設(shè)計中,利用MATLAB設(shè)置出整體的控制界面。設(shè)計的界面如5
點擊復制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1