lander
級(jí)別: 探索解密
![]() |
我請(qǐng)教一個(gè)問題,我這邊需要把INT (有符號(hào)的整數(shù) -32768----32767)轉(zhuǎn)換成WORD(0-65535),編一個(gè)子程序也可以,如何操作? |
---|---|
|
lander
級(jí)別: 探索解密
![]() |
請(qǐng)具體指導(dǎo)一下,謝謝。 |
---|---|
|
lander
級(jí)別: 探索解密
![]() |
我其實(shí)是在做一個(gè)modbus RTU 通訊,寫入只能是一個(gè)16位的數(shù),我輸入是實(shí)數(shù),然后我轉(zhuǎn)換成整數(shù),當(dāng)我輸入超過32767是,它就變負(fù)了,(-32768---+32767),然后這個(gè)負(fù)數(shù)寫進(jìn)去,設(shè)備就不認(rèn)識(shí)了,所以我想問問如何才能寫進(jìn)去變成0-65535,而不是-32768-+32767 ,普通的整數(shù)VW 好像不能大于32767,大了就變負(fù)數(shù)。 |
---|---|
|
lander
級(jí)別: 探索解密
![]() |
|
---|---|
|
lander
級(jí)別: 探索解密
![]() |
因?yàn)槲乙谟|摸屏上設(shè)置10進(jìn)制數(shù),比如200ML,我不能直接設(shè)置一個(gè)16進(jìn)制,那樣他們看不懂 |
---|---|
|
lander
級(jí)別: 探索解密
![]() |
我剛剛?cè)ビ媚愕姆椒,用符?hào)變量,200SMART 默認(rèn)就是有符號(hào)的,還是不行。 |
---|---|
|
lander
級(jí)別: 探索解密
![]() |
即使你手動(dòng)輸入16進(jìn)制的數(shù),是可以寫進(jìn)去了,但是讀出瞬時(shí)流量是一個(gè)大于32767的數(shù)的時(shí)候,也不能參與運(yùn)算,不能轉(zhuǎn)換成浮點(diǎn),因?yàn)榇笥?2767就報(bào)錯(cuò)了,其實(shí)錯(cuò)誤就是在于觸摸屏寫入一個(gè)大于32767的浮點(diǎn)數(shù),就無法進(jìn)行公式換算,一旦轉(zhuǎn)換成整數(shù),就報(bào)錯(cuò)。不知道還有沒有好的辦法,已經(jīng)問了很多人了。 |
---|---|
|
lander
級(jí)別: 探索解密
![]() |
感謝兄臺(tái)給的方案,已經(jīng)搞定,再次感謝。 |
---|---|
|