一区二区三区成人-一区二区三区www-一区二区三区 日韩-一区二区日韩欧美-一区二区日韩精品中文字幕-一区二区日韩

newtlk
級別: 探索解密
精華主題: 0
發帖數量: 3 個
工控威望: 121 點
下載積分: 561 分
在線時間: 2(小時)
注冊時間: 2014-06-13
最后登錄: 2014-08-26
查看newtlk的 主題 / 回貼
樓主  發表于: 2014-07-09 17:37
大家好, 我是ifix新手, 請教一下:

我已用ifix的 MBE 驅動讀取到一臺溫度傳感器(modbus tcp)的值, 寄存器位置為第2個
但是該設備的表示方式是16進制的, 例如: 1c05, 高位 1c 的十進位是 28, 低位05 的十進位是05,
高低位合併後為 280510 , 它就是 28.5 度的意思

問題是設定 ifix 的 datablock 是好像只有 integer 合適, 所以型態選integer (我不太熟 ifix)
在database 中 tag 顯示的值就變成 717310 了 , 也就是 1c0516 的十進位數

請問有辦法讓database直接抓到或是顯示的是 28.5 的數值嗎? 要怎麼設定配置呢? 
先提前謝謝了

newtlk
級別: 探索解密
精華主題: 0
發帖數量: 3 個
工控威望: 121 點
下載積分: 561 分
在線時間: 2(小時)
注冊時間: 2014-06-13
最后登錄: 2014-08-26
查看newtlk的 主題 / 回貼
1樓  發表于: 2014-08-12 14:25
自己用了一個很笨的方法解決, 就是新增一個tag_F的sim tag用來暫存轉好小數的值, 再新增一個schedules, 讓它執行以下程式碼
Private Sub TempFloat_OnTimeOut(ByVal lTimerId As Long)    
    Dim tag, tmp, dec1, dec2
    tag= ReadValue("tag", 2)    ' 讀取 tag 值
    If tag> 0 Then
        tmp = Hex$(tag)    ' convert to Hex, eg: 1C05
        dec1 = Left(tmp, 2)    ' get high part of Hex, eg: 1C
        dec2 = Right(tmp, 2)   ' get low part of Hex, eg: 05  
        WriteValue Str(CInt("&H" & dec1) & "." & CInt("&H" & dec2)), "tag_F", 2          ' 寫入 tag
    Else
        WriteValue "0", "tag_F", 2
    End If
End Sub
一定有更好的方法, 不吝指教一下. 另外不知 ca 型的 tag 能不能到類似效果? 但它好像只支持 +-*/ 的運算而已

主站蜘蛛池模板: 黄动漫车车好快的车车a | 国产精品日本一区二区三区在线看 | 好大好猛好爽好深视频免费 | 欧美a级v片不卡在线观看 | 国内久久 | 精品久久久久久影院免费 | 无码国产成人777爽死 | 亚洲欧美另类第一页 | 99国产小视频 | 日韩欧美中文字幕出 | 天天做天天爱天天综合网 | 无码国产成人777爽死在线观看 | 高跟丝袜人妖sissy露出调教 | 日本久久影视 | 久久这里只有精品无码3D | 貂蝉沦为姓奴小说 | 国产成人精品系列在线观看 | 黑人巨大和日本娇小中出 | 免费yjsp妖精com| 性妲己| 精品视频在线免费播放 | 星球大战成人h无删减版 | 亚洲 综合 欧美在线视频 | 亚洲丰满模特裸做爰 | 手机在线伦理片 | 精品成人一区二区 | 18捆绑调教在线高清 | 国产一区二区视频在线观看 | 精品无码一区在线观看 | 国产麻豆精品免费视频 | 国产精品1区2区 | 韩国甜性涩爱免费观看 | 欧美日韩中文字幕久久伊人 | oneday高清在线观看 | 视频在线视频免费观看 | 99热线| 百合文高h | 国内久久久 | 缴情五月天| 无人在线观看免费高清视频播放 | 国产高清在线视频一区二区三区 |