請問各位,我目前在測試Eview ET100的各元件功能,目前遇到一個 文本輸入 元件的編碼問題
因為Eview的介面可以輸入中文,所以它的ASCII 鍵盤是Unicode 的編碼方式,所以一個字占2個bytes。
我的 [文本輸入] 元件設定是10個英文為上限,所以是5個 word(以ascii 編碼來看),我讓它映射到PLC 的 Dxxx ,所以當我只輸入一
個英文字母 "A" 時,PLC 記憶體 Dxxx 照理說應該是為 0x0041 0000 0000 0000 (5個word) ,
但是實際上是 0x2041 2020 2020 2020 ,也就是說Eview會自動把 0x00 補成 0x20 (ascii 的 "空白鍵" 編碼),請問有人有遇到類似的問題嗎?
如果在 [文本輸入] 元件 里勾選 "使用Unicode編碼" 的話,就不會有0x20這問題,但這樣我只剩5個字母能輸入,因為是16位元的編碼方式,所以想請問各位高手,有什么方式可以解決這問題嗎?也就是0x00不被 0x20取代,但不要用Unicode編碼。
目前是另外寫個宏指令做轉(zhuǎn)換,但覺得這樣很浪費時間與資源,請各位給點意見,謝謝!
[ 此帖被sunnike在2015-05-30 13:34重新編輯 ]