hyzqq 发表于 2013-3-5 23:59:52

请教:MODBUS通信中,上位机中16进制数转10进数应该怎样处理

本帖最后由 hyzqq 于 2013-3-6 00:01 编辑

    如题:MODBUS通信中,下位机会给上位机发送一串16进制数,用以表示下位机的温度,电压等,如:“0F FF”表示某路AD值,我要将它变为十进制数在上位机程序(VB)中显示,我的想法是先将“0F”转换成十进制数“15”,“FF”转换成十进制数“255”,然后用15*256+255=4095得到十进制数,即为可以显示的AD值。个人感觉这不是个好方法,行业内应该有正统的做法。请各位坛友能给我讲讲,多谢!
    我菜鸟一个,MODBUS,VB均基础为零,如果问题问的比较“小白”请大家见谅。能有类似的VB程序,可能的话请发上来参考参考。{:loveliness:}

mcu_lover 发表于 2013-3-6 00:03:40

不需要转换

hyzqq 发表于 2013-3-6 00:11:04

mcu_lover 发表于 2013-3-6 00:03 static/image/common/back.gif
不需要转换

感谢回复,能说的详细点吗?
我实在是比较菜。

mcu_lover 发表于 2013-3-6 08:28:46

不管是十六进制还是十进制,其值都是一样的。
不同的是其显示形式。
0F<<8 + FF 即可将两个字节数据拼装成一个整形数据。然后显示出来即可。
页: [1]
查看完整版本: 请教:MODBUS通信中,上位机中16进制数转10进数应该怎样处理