描述:plc截圖1
						圖片: 
					 
					
						描述:plc截圖2
						圖片: 
					 
					
						描述:plc截圖3
						圖片: 
					 
					
						描述:plc截圖4
						圖片: 
					 
					
						描述:plc截圖5
						圖片: 
					 
					
						描述:plc截圖6
						圖片: 
					 
					
						描述:瀏覽器截圖1
						圖片: 
					 
				        歐姆龍PLC,用功能塊編寫的modbus_crc校驗(yàn).經(jīng)過驗(yàn)證.沒有問題.如果是自己通過RS232自由口通信與RS485的儀表通信.這樣就會用的校驗(yàn)碼的計(jì)算.在網(wǎng)上找了許多資料,覺得比較麻煩也很難懂.所以產(chǎn)生自己編寫的想法.
        1)CRC寄存器初始值為 FFFF;即16個(gè)字節(jié)全為1;
2)CRC-16 / MODBUS的多項(xiàng)式A001H (1010 0000 0000 0001B) ‘H’表示16進(jìn)制數(shù),‘B’表示二進(jìn)制數(shù)
計(jì)算步驟為: 
(1).預(yù)置 16 位寄存器為十六進(jìn)制 FFFF(即全為 1) ,稱此寄存器為 CRC  寄存器;  
(2).把第一個(gè) 8  位數(shù)據(jù)與 16  位 CRC  寄存器的低位相異或,把結(jié)果放于 CRC  寄
存器; 
(3).檢測相異或后的CRC寄存器的最低位,若最低位為1:CRC寄存器先右移1位,再與多項(xiàng)式A001H進(jìn)行異或;若為0,則CRC寄存器右移1位,無需與多項(xiàng)式進(jìn)行異或。
(4).重復(fù)步驟 3  ,直到右移 8  次,這樣整個(gè) 8 位數(shù)據(jù)全部進(jìn)行了處理; 
(5).重復(fù)步驟 2  到步驟4,進(jìn)行下一個(gè) 8  位數(shù)據(jù)的處理; 
(6).最后得到的 CRC  寄存器即為 CRC 碼。