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