隨著觸摸屏的應用和產量的增加,價格下降。因而有可能使用觸摸屏作為單片機控制設備的鍵盤和顯示裝置,提高單片機控制設備的檔次。觸摸屏與PLC聯合使用時,觸摸屏的主要功能是:
①顯示PLC輸入,輸出端13或輔助繼電器的開關狀態。
③顯示PLC中定時器、計數器和數據寄存器的內容。
④用觸摸屏鍵盤把設定數據送入PLC的數據寄存器中。
可規納成觸摸屏與PLC問對應地址的數據位、字的讀和寫。因此可以利用MOD—BUS通信協議來實現觸摸屏與單片機的通信和控制,或觸摸屏與多臺單片機通信,構成一個集散控制系統。
1 觸摸屏與單片機的硬件聯接
采用MT500觸摸屏與AT89C52單片機一對一通信。把觸摸屏的PLC232 9針插座與帶有RS232接口的AT89C52單片機相連接。如圖1所示。注意:通信電纜DB9是2-2、3—3、5-5。
這種接法的電纜也可用于與PC機通信或做通信摸擬。作PC機通信時在連接PC機端的DB9短接4—6、7—8。由于AT89C52單片機無RS232接口,因此需要擴展一片MAx232,把RXD、T×D的TTL電平轉換成RS232電平。
圖1 觸摸屏與單片機通信聯接方法
2 建立觸摸屏與單片機的內部存儲器地址對應關系
打開觸摸屏組態軟件,從[編輯]下拉菜單中選[系統參數],彈出如圖2所示參數設置對話框。觸摸屏的系統參數中PLc類型設置成MODBUS RTU,通信參數設置必需與單片機通信參數設置一致。通信口類型設置成RS232,數據位設置成8位,1個停止位,波特率9600,校驗位設置與單片機編程一致,PLC站號是單片機定義的站地址一樣,站號需從1開始。參數設置完成,按確定鍵。
圖2參數設置對話框
這時觸摸屏的可操地址范圍如表1所示。
表1 觸摸屏在設置成MODBUS RTU摸式時可操作地址范圍
Ox1—Ox9999、1×1—1x9999用于位操作的存儲器,3xl一3x9999、4xl一4x9999用于字操作的存儲器。lxl一1x9999作為輸入節點(只讀)位操作的存儲器,用作觸摸屏上的位狀態指示燈。Oxl~oX9999可讀可寫,可作位狀態指示燈、按鍵、觸發控制摸位等。3xl-3x9999作為輸入數據存儲器,可作觸摸屏中的數值顯示元件和多狀態指示燈等。4xl一4x9999可讀可寫,可作觸摸屏中的數值輸入元件和多狀態設定元件等。其地址采用十進制數表示。OxO、lx0、3xO、4x0不可使用,否則編譯時會出錯。
在單片機中可自由定義分配與觸摸屏相對應的寄存器地址。
如假設P2、P3口為輸入口,P0、P1為輸出口。為了便于單片機編程,可以把P2、P3口的引腳狀態映射到20H、21H,與觸摸屏lxl一1x16相對應。把P0、P1輸出口數據存到寄存器22H、23H,與觸摸屏0xl一0x16相對應。24H一28H作為位操作存儲區,與觸摸屏0x16-1x56相對應。把30H-3F:H設置成8個數據顯示寄存器,與觸摸屏3xl-3x8相對應。把40H一4FH設置成8個數據設置寄存器,與觸摸屏4x1-4x8相對應。這樣可列出觸摸屏與單片機通信地址對應表,位地址如表2所示。字地址如表3所示。
表2摸屏與單片機通信位地址對應表
表3摸屏與單片機通信字地址對應表
3 觸摸屏組態軟件編輯
打開觸摸屏組態軟件,先按上述方法設置[系統參數],光標移到[窗口/元件選擇列表框],單擊鼠標右鍵,新建一個窗口,按要求填寫對話框。按確定鍵,出現一個編輯窗,下面以設置一個位狀態顯示元件(指示燈)和一個數值顯示元件(數據顯示窗)為例,說明觸摸屏編輯的地址與單片機內的地址建立相互聯系的方法。現以要顯示單片機中位20H(24H.0)的狀態和顯示40H、41H的數值為例。把鼠標點擊元件工具箱中的元件圖或從菜單[元件]的選項中拖出一個位狀態指示元件。并彈出位狀態顯示元件屬性對話框。
在讀取地址欄[設備類型]中選0x,[設備地址]寫入17,見表2,0x17對應20H,選擇適當的圖形、標簽、大小和位置。按確定鍵。對話框消失,在編輯窗口出現一個位狀態顯示元件L1。一旦建立了正確的通信關系,則這個位狀態顯示元件的不同顯示狀態反應了單片機中位20H狀態的變化。
把鼠標點擊元件工具箱中的元件圖或從菜單[元件]的選項中拖出一個數值顯示元件。并彈出數值顯示元件屬性對話框。如圖3所示。
圖3數值顯示元件一性對話框
在讀取地址欄[設備類型]中選敘,[設備地址]寫入1,見表3,3xl對應40H(高位),41H(低位),選擇適當的圖形、標簽、大小和位置。按確定鍵,對話框消失。
在編輯窗口出現一個數值顯示元件,一旦建立了正確的通信關系,則這個數值顯示元件顯示單片機中位40H(高位),41H(低位)的數值。
4 MODBUS RTU(遠程終端設備)通信協議簡介
觸摸屏與單片機通信是主從通信方式,觸摸屏是主機,單片機是從機。觸摸屏根據畫面編輯的控件,不斷發送位、字的讀或寫的指令。單片機不斷應答指令。
本文介紹MODBUS RTU通信格式,字符幀由8個數據位,1個起始位,1個停止位,1個奇偶校驗位(當不采用校驗位時,則設置2個停止位)。發送或接收每個字節,必需經過一次CRC出錯校驗運算。運算方法詳見參考文獻。
一個指令幀由從機地址、功能碼、數據域和CRC校驗碼組成。數據域由讀、寫位或字數據的十六位首地址(高位在前,低位在后)、十六位操作數(高位在前,低位在后)、最后為十六位CRC校驗碼(低位在前,高位在后)。發送或接收前后必需有大于3.5MS的延時,以示一個指令幀的開始或結束。地址碼和功能碼均為一個字節。
下面舉例說明用MODBUS RTU通信協議的通信格式:
1)讀觸摸屏指定首地址0x17對應單片機中首地址20H的一個字(十六位)的位狀態。
觸摸屏發送通信格式:
單片機應答通信格式:
觸摸屏位地址0x17對應單片機首地址24H.0,回送24H.
0~20H.7,25H.0-25H.7,十六位狀態。
2)讀觸摸屏指定首地址4xl對應單片機中首地址40H的一個字(40H。41H)的數值。
觸摸屏發送通信格式:
單片機應答通信格式:
3)將觸摸屏指定地址位0x18對應單片機中21H(24H.1)位置1或清零。
觸摸屏發送通信格式:
單片機應答通信格式:
表中置位命令0FF00H為置1,0000H為清零。
4)將觸摸屏指定首地址4x2對應單片機中首地址42H的一個字42H,43H寫入一個設定值oal64H。
觸摸屏發送通信格式:
單片機應答通信格式:
用類似的方法,根據項目要求,選擇控件和編輯控件屬性。
建立觸摸屏與單片機的地址聯系,按照MODBUS協議編寫單片機與觸摸屏的通信程序。則可實現用觸摸屏顯示單片機中位狀態變化,設定數值或顯示數值。
-
單片機
+關注
關注
6035文章
44554瀏覽量
634675 -
控制系統
+關注
關注
41文章
6604瀏覽量
110577 -
觸摸屏
+關注
關注
42文章
2301瀏覽量
116120
發布評論請先 登錄
相關推薦
評論