• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于單片機控制的DDZ型熱工儀表檢測儀的設計

    基于單片機控制的DDZ型熱工儀表檢測儀的設計

    作者: 時間:2013-11-07 來源:網絡 收藏

    數據格式
    設RC7為PIC16F877的數據輸出口,RC6為數據輸入口,通過MAX232轉化模塊與PC機相連。由于PIC 單片機的RS-232的通信格式固定為1個開始位,1個停止位,沒有奇偶校驗位,設計數據位為8位。
    傳輸方式
    采用中斷的方式來實現單片機與PC之間的通信,UART的傳輸與接收可以分別產生一個中斷源,寄存器PIE1中的位TXIE=1時產生傳輸中斷源;RCIE=1時產生接收中斷源。進行串口通信時PC機發一個請求發送信號”Requst”給單片機,單片機接收到此信號后查詢PIR1寄存器中的位TXIF是否為1,若為1表示傳送數據寄存器TXREG為空,將待傳送的數據寫入TXREG寄存器,即刻開始執行UART的傳送工作,按照單片機和PC機共同定義的通信協議將數據發送完畢。
    鍵盤設置
    儀表的表面板上有4個開關鍵(“Reset”鍵和控制3路模擬量輸入的3個開關鍵K1,K2,K3),和一個鍵盤(10個數字鍵,6個功能鍵)。 鍵盤設置用來控制儀表執行何種功能:是測量信號還是產生信號,測量和產生的分別是那一種信號都可以通過按鍵來完成,通過對鍵盤接口的編程把各模塊聯系起來統一的工作。

    軟件設計
    由于本儀表的功能較多,因此不但硬件電路復雜,同時也需很強的軟件系統支持。本儀表的軟件系統由一個主程序和多個子程序組成。
    儀表的主程序
    儀表的軟件系統總的來說有三大部分組成:
    (1) 系統的初始化。它包括PIC16F877芯片本身的初始化,串口、鍵盤接口、數碼顯示模塊的初始化等。
    (2) 響應外部中斷由鍵盤中斷程序來完成儀表具體執行那項任務:測量或輸出模擬信號,并動態顯示信號大小。
    (3) 數據的采集、計算、顯示部分。在這個循環中,程序根據不同的輸入信號每10ms采集、刷新顯示一次。
    儀表的軟件系統主程序流程圖如圖3所示。
    儀表的子程序及功能
    軟件系統由多個子程序組成,現就主程序中的A/D轉換來介紹一下其程序原理和流程圖。
    A/D轉換的程序原理與流程圖
    以循環掃描方式利用PIC16F877的A/D轉換讀取RA0管腳上輸入的模擬電壓,并將其數值大小在數碼管上顯示出來。設計主程序的掃描時間為10ms,經過運算處理輸出模擬量對應的BCD碼至C口并重復循環。使用PIC16F877單片機的Timer1產生2ms的定時中斷作為程序的基本時序,其主程序和中斷服務程序的流程圖如圖4所示。
    PIC16F877芯片使用外部4MHz的石英振蕩器,其指令周期為1?s,Timer1子程序中預先定義的寄存器Scaler的值為5,在每一次中斷過程中都使其值減1,主程序中檢測Scaler寄存器中的值是否等于0,不等于0則主程序處于等待狀態,當等于0時則使用命令:movlw 5 ;addwf Scaler,f 使寄存器Scaler始終為5,并返回到A/D轉換子程序,這樣使主程序的循環時間為10ms。
    A/D轉換中的編碼運算
    A/D轉換的位數是10位,根據每次A/D轉換后A/DRESH和A/DRESL中的值由公式:
    A=(5/1023)*D可以計算出轉換前模擬量的值。在進行動態顯示時,采用4位數碼管顯示2位整數、2位小數,從高位到低位依次設為S3 S2 S1 S0,單片機依次送出S0 S1 S2 S3對應的BCD碼到顯示模塊,并通過對數碼管位選端的控制來實現動態顯示的功能。

    結語
    隨著儀器、儀表在日常生產、生活頻繁的使用,其維修也越來越頻繁。作為提供維修信號源的標準儀表發揮著十分重要的作用。該設備采用集成的原理做成了一個便攜式的裝置,經過實際反復測試,性能良好,有著廣泛的市場應用前景。

    參考文獻:
    [1]. PIC16F877 datasheet http://www.dzsc.com/datasheet/PIC16F877_318821.html.
    [2]. RS-232 datasheet http://www.dzsc.com/datasheet/RS-232_584855.html.
    [3]. OP07 datasheet http://www.dzsc.com/datasheet/OP07_950754.html.
    [4]. BCD datasheet http://www.dzsc.com/datasheet/BCD_1225719.html.
    [5]. MAX232 datasheet http://www.dzsc.com/datasheet/MAX232_1074207.html.


    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 西峡县| 庆云县| 扶沟县| 瓦房店市| 汉源县| 阿城市| 台北市| 本溪| 平阳县| 昌都县| 塔河县| 辽宁省| 湖口县| 财经| 平舆县| 兖州市| 台北县| 繁峙县| 太谷县| 苗栗市| 稻城县| 买车| 治多县| 永州市| 鄄城县| 墨玉县| 五台县| 怀宁县| 公主岭市| 方山县| 资阳市| 汽车| 凌云县| 平和县| 鄢陵县| 福泉市| 中牟县| 保山市| 呼图壁县| 剑川县| 马公市|