陳翰揚,張金龍
(南京師范大學 電氣與自動化工程學院,江蘇 南京 210020)
隨著互聯網技術的發展更新,人與物的交互逐漸智能化,其中,觸摸屏是重要媒介。實際應用中,觸摸屏通常與 PLC 相互配合使用,但是 PLC 相對成本高,體積大, 更適宜在工業場合使用而不適宜家用。以觸摸屏為基礎,輔以數字信號處理技術設計一個匯集各種家電控制方式的總控系統,不失為一種化繁為簡,統籌兼顧的可行方案。故本系統嘗試將觸摸屏與 DSP 相配合,充分利用觸摸屏的顯示功能和 DSP 的數據處理能力,達到輕便易操作的效果[1]。作為筆者學習研究觸摸屏與 DSP 的一個階段性成果, 通過 DSP 軟件編程和觸摸屏的畫面設計,從而控制小電機的轉速,以此模擬實際家用觸摸屏控制小型高速新風系統的情景。
本系統采用的是迪文DGUS屏和數字信號處理器TMS320F28335。系統的完成首先需要構建好觸摸屏工程、設計界面、設置觸控元件,然后將觸摸屏與 DSP 進行串口連接。觸摸屏通過觸屏操作發送數據信息給 DSP,DSP 接收到數據幀后經過程序處理得到用戶側需要的轉速并轉化為 PWM 的占空比輸出,從而達到控制電機的目的。故本系統中最重要一環為兩者之間的通信協議設計。整體結構框架,如圖1所示。

圖1 整體結構
觸摸屏作為當今使用范圍最廣,用戶體驗最好,技術生態最為成熟的人機交互方式之一,無疑也是未來人機交互的主要潮流。本系統采用的是迪文DGUS屏。
DGUS 是迪文圖形應用軟件(DWIN Graphic Utilized Software)的縮寫。DGUS 屏是由北京迪文科技有限公司基于K600+內核驅動的智能屏自主研發的性能優異的智能屏,具有可靠、穩定、功能性強、易用性良好等多個優點,并且界面設計簡單,文件配置方便。
DGUS開發體系是由DGUS屏和DGUS開發軟件構成的。與傳統的HMI不同,迪文DGUS是迪文自己獨有的、固化在硬件中的專用界面設計軟件,包括界面圖形設計和觸控元件的選擇。
利用繪圖軟件對界面、圖標、字體庫、按鈕樣式等進行設計,并通過PC端開發軟件對界面上的控件進行配置。DGUS 提供FLASH儲存空間以存儲參數配置文件、圖片文件、聲音文件、字庫文件、圖標庫等;在DGUS中可快速配置數據和文字的顯示及輸入,同時也具有動畫顯示,圖標顯示,曲線顯示等多種功能[2]。
本系統主要界面分為功能選擇界面與參數調節界面,圖2(a)為功能選擇界面,點擊不同圖標可進入不同模式;圖2(b)為參數調節界面,點擊加減可以調節檔位,滑條為快速調節方式。

(a)
所謂數據的串行傳輸就是由建立在線路鏈接,接口等的物理層,和建立在物理層上的數據協議共同構成的一種傳輸方式。數據在傳輸中只有1個數據位會在設備之間進行的傳輸,而對其他任何一個由若干位二進制表示的字符,串行傳輸都是用一個傳輸信道,按位有序地對字符進行傳輸[3]。通信中的數據往往都會以數據包的形式進行傳送,這樣的數據包又被稱為數據幀。一個可靠的數據幀通常由幀頭、地址信息、數據類型、數據長度、數據塊、校驗碼、幀尾組成。
F28335 內部有3路專用的串行通信模塊SCIA、SCIB、SCIC,它們是雙線異步串行端口,具有兩個引腳:發送引腳SCITXD用于實現數據的發送;接收引腳SCIRXD用于實現數據的接收,如圖 3 所示。SCI 模塊則具有雙緩沖接收和發送功能,發送緩沖寄存器為 SCITXBUF,接收緩沖寄存器為 SCIRXBUF[4]。應實際工程需要,僅使用一路 SCIC 進行通信,同時由于本系統沒有必要進行長距離通信,為節省成本采用 RS-232 協議。

圖3 SCI模塊
本系統設計主要討論的是觸摸屏與 DSP 之間的通信問題,因而主要介紹其串口操作。DGUS屏次選擇異步、全雙工串口(UART),串口模式為8n1,即每個數據傳送采用十個位,包括1個起始位,1個停止位,8個數據位。串口的波特率可通過 SD 卡中的文件配置。串口所有指令或數據都采用16進制格式;對于字型(2 字節)數據,總是優先采用高字節先傳送方式,如 0x2019 現傳送0x20。
下面將對數據幀格式和指令集進行具體說明解釋:
迪文DGUS屏的串口數據幀由5個數據塊構成,見表1。

表1 數據幀格式
其中,幀頭為整個數據幀的識別標志和上位機的地址,占兩字節,經寄存器內部配置定義。DSP 查詢到幀頭有效,則接受該幀,否則丟棄;DSP上傳數據時,只有數據幀地址與觸摸屏內部配置一致時,才會接受該幀。
①等待接收(或發送)信號置位; ②將接收(發送)寄存器里的數據賦值給預先定義好的變量中。
①檢測幀頭,無誤則繼續以下步驟,否則丟棄該幀數據。重新等待檢測幀頭。②讀取數據長度n,并創建長度為n的數組以存儲之后的n個字節的數據。③讀取數據并存儲。④取出存在數組第一個字節的指令字節,以確定該數組后續數據的形式。⑤將后續數據按照指令重新組合成為例如變量儲存器地址之類的具有實際意義的數據。⑥將數據賦予對應變量備用。
完整軟件流程,如圖4所示。

圖4 軟件流程