373932332
級別: 探索解密
![]() |
圖片:
![]() 現(xiàn)在用的fx5uPLC,把讀卡器里的數(shù)據(jù)讀到D寄存器里,但是數(shù)據(jù)太大,一個放不了,怎么存放 讀取的時候是連著用的四個寄存器ADPRW指令,數(shù)據(jù)存放到了D100,d101,d102,d103四個里面, 是16位的,但是數(shù)值超過D寄存器的最大值,不知道怎么存儲才能不帶符號, 后面連接的組態(tài)王讀取數(shù)據(jù),然后存儲到數(shù)據(jù)庫里,但是組態(tài)王里不知道怎么識別符號,純數(shù)字沒問題,所以就想把PLC里的這個數(shù)值變成不帶符號的, 然后就想到,這個符號是因為數(shù)值太大溢出所以出現(xiàn)了-號,所以就想D數(shù)據(jù)寄存器足夠大就行了,然后DMOV指令,但是這個指令是把d10,d11兩個寄存器送到兩個寄存器,有沒有把一個D寄存器送到兩個寄存器里面的指令,跪求。〈笊 梯形圖如下 |
|
---|---|---|
|
373932332
級別: 探索解密
![]() |
圖片:
![]()
感謝感謝,感謝大神 測試梯形圖如下 |
|
---|---|---|
|
373932332
級別: 探索解密
![]() |
有符號16位數(shù),數(shù)值范圍 -32768~32767 整數(shù)。 無符號16位數(shù),數(shù)值范圍 0~65535 整數(shù)。 32位浮點數(shù),數(shù)值范圍 3.4E-38~3.4E+38 實數(shù)。 16位二進制數(shù)的范圍如下: 0000 0000 0000 0000 ~ 1111 1111 1111 1111 二進制數(shù),不是任何人都懂的. 所以,通常都要換算成,小孩都能明白的十進制. 就是 0~65535. ------------------ 把最高位看做+、-號,其余十五位的范圍,就是0~32767. 0111 1111 1111 1111=32767 那么,16位二進制表示的有符號整數(shù),就是-32768~+32767. |
|
---|---|---|
|
373932332
級別: 探索解密
![]() |
1111 1111 1111 1111=65535 FX5U中的指令有 有符號16位數(shù) 轉(zhuǎn)成 無符號16位數(shù) 指令int2uint 有符號32位數(shù) 轉(zhuǎn)成 無符號32位數(shù) 指令Dint2udint 無符號16位數(shù) 轉(zhuǎn)成 有符號32位數(shù) 指令uint2int ..........(能想到的都有) 在手冊IQ-F fx5編程手冊(指令/通用FUN/FB篇) 3cpu模塊用指令》7基本指令》7.5數(shù)據(jù)轉(zhuǎn)換指令 問題終于解決了,看了網(wǎng)上的許多資料,感謝各位前輩,學到了很多,開心 |
|
---|---|---|
|