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