a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 測試測量 > 設計應用 > 基于89C52單片機的實用八路物位測量儀

基于89C52單片機的實用八路物位測量儀

作者:于京生 史源平 宿茹 時間:2008-05-09 來源:微計算機信息 收藏

  1總體構成

本文引用地址:http://www.j9360.com/article/82349.htm

  本的信號采樣通過P0口的八根輸入線可接受八路經過整形后的標準TTL電平,因此可測量不同傳感器傳來的脈沖型物位采樣信號,只要在原始信號基礎上加以整形處理即可,每來一個脈沖均被P0口捕捉到并可以通過軟件編制使脈沖計數增一,定時讀取計數和便可以換算成相應的物位情況。通過P3.3~P3.5三條線與串行顯示驅動器Max7219的連接加以軟件編程可完成八位數碼管顯示驅動,利用P1.3~P1.6四條口線接入四個按鍵,完成按鍵操作,利用P2口作為八路輸出控制,可驅動八路固態繼電器。具體組成見圖1。

        

  2硬件線路設計

  2.1 資源分配

  AT 芯片是基于MCS-51結構的高集成度8位微控制器,其主要特性是具有一個用于多處理器通訊的增強型串口和一個增/減定時器計數器,專門適用于控制應用。選用的另外一個重要原因就是在芯片上實現了256字節的RAM,高端128字節的地址和特殊功能寄存器(SFR)的地址相同,但可以通過不同尋址方式區分,因此解決了的軟件編程所用的RAM空間,不必再另外擴展隨機存儲器,節約了硬件資源。

  2.2 串行顯示設計

  多位顯示時,常將所有位的段選線并聯在一起,由一個8位I/O口控制,也可采用并行擴展口構成顯示電路,通常,需要擴展器件管腳的較多,價格較高。在本中,為了節約I/O口資源,采用了由Max7219芯片構成的串行顯示方式。Max7219是串行輸入,輸出共陰極顯示驅動電路,可直接與的3條I/O線接口,特別適用于I/O口線少的系統,并且可以程序控制數碼管的亮度。在本設計中,采用P3.3~P3.4三條線經74LS273鎖存后與Max7219相連接,P3.3、P3.4鎖存后分別作為7219串行數據輸入信號DIN和時鐘信號 CLK,P3.5輸出口鎖存作為LOAD信號。具體硬件線路圖見圖2。

       

  圖2 主要硬件連接圖

  2.3  軟件計數器的設計

  在物位測量儀表中,當傳感器書送來的信號為脈沖量時,通常需要通過專門計數器芯片如8254等來完成脈沖的計數,CPU將此變化的計數信號處理后使傳感器送來的脈沖的個數與物位信號相對應。而在本設計中,巧妙利用了的P0口資源,將脈沖量整形后直接送至P0口的8條數據線,此時P0口作為數據輸入口使用。通過軟件設計,每路開辟存貯單元(利用片內RAM),當P0口有電平跳變時,相應的計數單元計數加1,通過軟件設置定時器,當定時時間到時,讀取存儲單元數值并清零,這樣就完成了軟件計數器的功能,節約了硬件資源,降低了硬件成本。

  3軟件設計

  3.1 128字節內存分配

  本測量儀設計的另一大特點就是充分利用了128字節的片內RAM,無外部擴展存儲芯片。CPU內部地址從15H開始算起,直到0C5H全部被開辟作標志或存儲單元。具體分配為:15H~1CH為各路采樣時間, 09H~0FH 為各種標志位, 42H~5BH為與各路計數有關的計數存儲處理單元,5CH~63H為物位報警域值對應的計數存儲單元,64H~6FH和 3cH~3FH位報警類別等存儲單元。通過合理分配,盡管只有128字節RAM,可以滿足8路物位測量的數據處理要求。

  3.2 串行顯示子程序

  Max7219驅動的顯示部分程序放在DISP顯示子程序中,在程序開始完成Max7219的初始化工作,將每次待顯示的數據放置于從20H~27H開始的顯示緩沖區地址中,每路需要送顯時,直接調用顯示子程序即可。

  其中顯示部分程序如下:

  DISP:  MOV R0,#20H       ;R0指向顯示緩沖區首地址

         MOV R1,#01H      

         MOV R3,#08H

  LOOP3: MOV a,@R0       

  MOV R4,A         ;顯示緩沖區數據送R4


         MOV A,R1

         lCALL WRITE        ;數據鎖存到273

         INC R1

         INC R0

         DJNZ R3,LOOP3

  3.3 采樣處理子程序

  調試過的部分源代碼如下:

  LOOP: MOV A,#0FH        ;主程序循環開始

  MOV P0,A          ;先查詢P0口,讀取射線計數

  MOV A,P0

  XCH A,PQ

  XRL A,PQ

  MOV B,A

  JB B.0,JIA1           ;第1路有計數,跳至加1程序

  JIA10:JB B.1,JIA2    ;第2路有計數,跳至加1程序

  JIA20:JB B.2,JIA3     ;…..

  JIA30:JB B.3,JIA4

  JIA40:JB B.4,JIA5

  JIA50:JB B.5,JIA6

  JIA60:JB B.6,JIA7

  JIA70:JB B.7,JIA8     ;第8路有計數,跳至加1程序

  LJMP LOOP01      ;接著處理鍵盤的查詢

  3.4 主程序部分流程圖

  主程序流程圖見圖3

       

  圖3 主程序流程圖

  4結束語

  本設計的創新點在于充分利用了AT89C52的硬件資源,實現了軟件計數器,能夠對脈沖量信號所反映的物位信號通過數碼管來顯示,顯示部分的處理采用Max7219顯示驅動器,與軟件編程相結合,大大節約了硬件資源,減少了通用的擴展芯片,降低了成本。本儀表投入生產后成本比用其它方式組成的系統節約直接硬件成本每臺約300元,投產后產生年經濟效益約60萬元(按每套儀表利潤0.8萬元計)。

  參考文獻:

  1 吳玉平譯  MCS51微控制器系列用戶指南   電子工業出版社  1995

  2 王建萍  Max7219串行顯示驅動器及應用,電子技術應用,1996,6

  3 劉志壯 洪添勝等  一種智能液位檢測儀的設計  微計算機信息 2007年第2-1期 P156-157

  4 史源平 于京生等  基于工控機的多路核子秤  微計算機信息  2008年第2-1期



評論


相關推薦

技術專區

關閉