Re: [讨论] 有谁懂这位对岸RD在说什么 ?

楼主: KILLE (啃)   2014-11-06 04:16:36
※ 引述《azureshin (azureshin)》之铭言:
: 是这样....我们买了一个亮度侦测仪器,是透过蓝牙接收的.
: 得到的是16进制8e000000
: 我问对方这要怎么转换成流明 ? 对方是这样回的..
: ‘需要将第二个字节的数据先左移8位再加上第一个字节的数据,再乘以 64000/65536’
: ‘二进制的左移’
: ‘现在是两个8位的数据,要变成一个16位的数据’
: ‘第二个字节是高位’
: ..........就这样,四句话打完他就不回我了...
: 我知道进制转换,但我就是看不懂他们在说什么,有谁懂得??
看来这是大端传输
蓝牙是大端 极奇正常 (网络就是走大端)
目前就本人知 蓝牙只有在低功耗标准时才采用小端传输
先看到0x8e000000 转为小端 0x008e
(明显也合理 转换前的低位是根本没数据)
现在看 他要的操作:
所以要的结果就是 0x8e*64000/65536 = 142*0.9766 = 138.67
在这补充一下 为何要64000/65536
因为若一KB是1024 那64KB就是65536
但若一KB是1000 那64KB只是 64000 (硬盘厂玩暴这招)
这概念可以这样想:
这里 光学仪的物理最大值很可能是64000
转为数码时 用256*256去存 比较方便 所以就把65536化约为64000
现在类似题:
若量到的是0xfeee0000 那转回来的物理值是多少?
作者: jackylu63 (J)   2014-11-06 14:55:00
26工程师其实没说错
作者: TSW (翘班帝国)   2014-11-06 18:05:00
看不太懂为什么要将64000转存为65536,直接存64000有比较麻烦吗?
作者: MisterSmile (Mr.Smile)   2014-11-10 02:21:00
59748?

Links booklink

Contact Us: admin [ a t ] ucptt.com