下載工具
下載工具的三個控制按鍵,如下圖所示:
下載到屏
最左邊的是下載到博象科技智慧屏的按鍵:
連接USB線並點擊按鍵即可將設計下載至控制板
當下載成功時,ADE 會出現下面的彈出視窗:
這表示 HMI 設計已經成功下載到博象科技智慧屏上。下載時間會隨著設計使用圖片的多寡而變化,若設計專案有錯誤,視窗會顯示錯誤訊息,並停止下載。
啟動模擬器
中間的按鍵是用來開啟內建的模擬器(Simulator):
內建的模擬器是模擬使用者設計被載入博象科技智慧屏之後的顯示以及互動功能,使用者可以在個人電腦上以滑鼠操作設計出來的介面,模擬器會模擬完整圖像介面功能,並且支援所見即所得 (What-You-See-Is-What-You-Get) 的特色,模擬的圖像與博象科技智慧屏上一致(色差可能發生於使用者螢幕以及博象科技智慧屏的規格差異)。
模擬器無法於個人電腦模擬博象科技智慧屏上的I/O、PWM、ADC等實體輸入輸出行為,但可以模擬博象科技智慧屏暫存器通訊協定。
啟動屏通訊程式(Messenger)
最右邊的按鍵啟動屏通訊程式(Messenger),目的是在個人電腦上與博象科技智慧屏或是模擬器進行通訊
如果打開對外通訊的屏通訊程式(Messenger),會出現以下視窗:
在這視窗中,使用者可以透過個人電腦的序列埠或網路,連結博象科技智慧屏,藉由暫存器通訊協定改變暫存器的內容值,模擬由外部 MCU 透過 UART 傳遞數值給博象科技智慧屏。
通訊分為兩種方法:一種為透過網路Socket,另一種為序列埠
如果透過網路Socket,則需要設定IP位址和通訊埠;如果透過序列埠則需要設定鮑率
-
Command Type:選擇Set Register,設定暫存器內容;或者Get Register,取得暫存器內容
-
Register ID:指定要進行操作的暫存器序號
-
Data Type:選擇要設定的資料型態,Set Register時有效
-
Data Length:選擇要設定的資料長度,Set Register時有效
-
Data:設定資料,Set Register時有效
-
Ack Test:確認連接是否正常,詳情參考Ack Test
以下詳細說明與模擬器以及博象科技智慧屏通訊方法:
利用屏通訊程式(Messenger)和模擬器通訊
-
首先用 ADE 開啟一個既有設計
確認IOConfig頁面UART為啟動且UART鮑率正確且暫存器已選取 註:在新版的Nexus Panel不需要進行此設定
-
到暫存器編輯視窗找到欲進行通訊的暫存器並勾選自動通訊上傳
-
打開屏通訊程式(Messenger)視窗與模擬器,進行以下操作
-
設定Socket
-
點擊連接,連接成功會看到彈出信息框顯示成功
-
點擊連接確認,屏通訊程式(Messenger)會送出連接確認命令,若是模擬器端正常接收,則會回復連接確認命令。
-
連接正常,接收確認資訊ack
-
通訊指令,詳情參考博象通訊協定
選擇 Set Register 表示要寫入暫存器內容,並且設定暫存器序號以及要寫入的資料和型態,該暫存器ID以及資料型態必須與ADE設計專案內暫存器設定相符。
-
模擬器接收通訊指令且模擬器上會依通訊指令修改對應暫存器數值,若該暫存器有對應的顯示元件則模擬器進行相對應的顯示
-
屏通訊程式(Messenger)與博象科技智慧屏通訊
-
首先利用ADE將既有的設計下載至博象科技智慧屏上
-
之後利用電腦UART(eg.USB to TTL模組)連接控制板的TX、RX、GND
-
連接完成後打開屏通訊程式(Messenger)視窗
-
設定序列埠,利用Scan掃描更新序列埠,選擇正確的序列埠並設定鮑率
-
點擊Ack Test確認連接
-
連接正常,接收到ack訊息
-
設定並傳送通訊指令,詳情參考博象通訊協定
-
-
接下來即可在智慧屏上看到相對應的顯示
博象科技智慧屏 和 MCU 通訊
-
首先,準備一個 ADE Project並且設好暫存器。再參考博象通訊協定寫出 Arduino 程式,將資料透過通訊傳給指定ID的暫存器。
-
其次,連接博象科技智慧屏與Arduino控制板的TX、RX和GND
- 將ADE Project與Arduino程式分別下載至兩個控制板,打開電源即可開始通訊。
博象UART通訊協定
-
Command Format
Command Lead Byte Type Byte Register ID Low Byte Register ID High Byte Tailing Bytes Set Register 0x11 0x00 0x00~0xFF 0x00~0xFF Data Payload Get Register 0x11 0x01 0x00~0xFF 0x00~0xFF N/A -
Data Payload Format
Payload Type ID Byte Length Low Byte Length High Byte Tailing Bytes Boolean 0x00 0x01 0x00 Data Bytes String 0x01 0x01~0xFF 0x00~0xFF Data Bytes Integer 0x02 0x01/02/04/08 0x00 Data Bytes Unsigned Integer 0x03 0x01/02/04/08 0x00 Data Bytes Floating Point 0x04 0x04/08 0x00 Data Bytes -
Data Bytes are of the Little-Endian Format
博象Arduino Library可參考IOT Binary Protocol
Ack Test
確認連線是否正常,點擊Ack Test,系統會自動送出16,收到ack則表示連線正常,沒有收到ack則表示連線失敗
-
使用網路Socket
連線失敗建議檢查IP位址與通訊埠是否正確,是否有點擊Connect進行連線
如果連線成功會看到Connect is OK的提示訊息,點擊確定後在屏通訊程式(Messenger)的網路Socket處會看到Connected的字樣
如果連線失敗會看到Connect is FAILED的提示訊息,點擊確定後在屏通訊程式(Messenger)的網路Socket處會看到No Connection的字樣
-
使用序列埠
連線失敗建議檢查序列埠與鮑率是否正確,是否有點擊Set進行連線