新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于單片機的寬范圍高精度光纖傳感測溫儀的研制

        基于單片機的寬范圍高精度光纖傳感測溫儀的研制

        作者: 時間:2012-02-25 來源:網絡 收藏

        2.3 鍵盤和顯示單元

        本系統采用8255A的A口和C口擴展出一個4×4的鍵盤,包括10個數字鍵和6個功能鍵。在本系統中采用程序掃描法來識別按鍵。先使8255A的 PC口均為低電平,再讀A口。如果A口不全為高電平,則延時10ms去抖動;然后再讀A口,此時A口仍不全為高電平,說明確有鍵按下。進一步確定按下鍵的位置,先置PC0=0,PC1=PC2=PC3=1,讀A口,由A口低電平的位便可確定按下鍵的位置。依次類推,如果檢查完所有的鍵均無按下,說明是干擾或誤操作;掃描結束時,按下鍵的位置信息存在于某個存儲單元中。

        顯示采用以內藏HD61830控制器的液晶模塊8032B點陣型LCD。HD61830是點陣式液晶圖像顯示控制器,可與MPU直接接口,具有專用指令集,可完成文本顯示或圖形顯示的功能設置,以及畫面卷動光標、閃爍、位操作等功能。

        2.4 8051單元

        由于整個系統的程序較大,所以需要一個外部程序存儲器,在系統中選用了32KB的EEPROM。在系統中實現多點補償要存儲一些點的修正值以提高系統的測量精度,所以將EEPROM既作程序存儲器又作數據存儲器。整個系統的地址分配為:0000~7FFF為存儲器地址,D000~D003和 E000~E003分別為兩個8255A的四個端口地址,BEFC~BFFF為A/D轉換器的地址,FFF4~FFF5為D/A轉換器的地址。在地址譯碼中沒有采用GAL而是通過分離元件實現。地址譯碼通過兩片74LS138、一片74LS04、一片74LS08來實現。

        2.5 RS-232通訊單元

        為了方便數據的處理,將測量所得的數據送入計算機,本系統采用RS-232通訊方式,通訊速率為 9600波特率。接口用芯片為MAX232,接收端采用VC ++編制的接收程序,顯示并存儲接收到的數據。進而分析、處理得到擬和曲線。在中將利用此擬和曲線實時計算機當前被測物的值。

        2.6 數模轉換單元

        系統中預留一路模擬信號輸出,在測量、顯示的同時可將當前的溫度值通過D/A轉換輸出進而實現閉環控制。系統采用的D/A轉換器為MAX508,它是一種完備的12位、片內參考電壓、電壓輸出型的D/A轉換器,輸出電壓和參考電壓同極性,允許單電源工作,雙緩沖邏輯輸入接口使之與微處理器連接非常容易。

        3 系統的軟件設計

        系統軟件的設計安全按照結構化的程序設計方法來完成,將整個程序細分為若干個子程序(模塊),方便調試與檢查。開發系統采用Franklin C51編譯器和偉福仿真器,利用C51語言使用整個軟件開發變得簡單、快速、易于調試。整個軟件流程見圖3。下面就幾個主要的子程序作一簡單的介紹。

        3.1 初始化子程序

        在初始化程序中,主要對8051的系統資源,包括定時器、中斷、串行通訊、LCD顯示、8255等進行初始化工作。

        3.2 LCD顯示子程序和鍵盤輸入子程序

        在顯示程序中,完成顯示功能菜單的任務。菜單顯示的字符利用LCD顯示控制器HD61830的字符集中的資源,菜單為滾動式,通過功能鍵可使光標從往下移動,當移至最下一行時,屏幕開始滾動顯示。利用軟件程序掃描8255A的PA和PC口得到按鍵的鍵值,函數返回鍵碼。

        3.3 A/D轉換子程序和D/A轉換子程序

        A/D 轉換結果的讀入采用查詢方式。通過查詢MAX191的BUSY端的信號來判斷轉換是否結束;12位的轉換結果需要兩次讀取,然后拼接成12位結果。如果為了使外部干擾的影響減小可采用軟件濾波。對于溫度信號一般來說是緩變的,可采用一階滯后濾波或中值平均濾等。D/A轉換是直接將12位的數據送放 MAX508的緩沖器即可實現數摸的轉換。

        3.4 RS-232通訊子程序

        通訊中將12位的數據分兩次傳送,在計算機中采用VC++6.0中的一個通訊控件MS Communications Control6.0來實現串口的通訊程序。在接收到測量數據后,可進行一系列的數據處理與分析得到測溫儀的特性曲線,將此曲線生成電壓-溫度表存入單片機程序中計算機出溫度。

        光纖傳感器相關文章:光纖傳感器原理

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 龙口市| 胶南市| 马关县| 泽普县| 双流县| 额敏县| 陕西省| 铜陵市| 读书| 神池县| 泰宁县| 马山县| 噶尔县| 赤峰市| 海淀区| 如皋市| 牡丹江市| 洛阳市| 延寿县| 岳池县| 韶山市| 盖州市| 忻州市| 库尔勒市| 宿松县| 垣曲县| 枝江市| 福安市| 莫力| 江川县| 绍兴市| 赤水市| 政和县| 富顺县| 太原市| 涡阳县| 武汉市| 曲靖市| 永善县| 临夏县| 清原|