工控网首页
>

应用设计

>

用结构化文本实现的MODBUS CRC计算

用结构化文本实现的MODBUS CRC计算

2010/10/10 10:19:00
这是用ST语言写的MODBUS CRC程序
(*initialize array*)
CRCHi[0]:=BYTE#16#00;    CRCLo[0]:=BYTE#16#00;
CRCHi[1]:=BYTE#16#C1;    CRCLo[1]:=BYTE#16#C0;
CRCHi[2]:=BYTE#16#81;    CRCLo[2]:=BYTE#16#C1;
CRCHi[3]:=BYTE#16#40;    CRCLo[3]:=BYTE#16#01;
CRCHi[4]:=BYTE#16#01;    CRCLo[4]:=BYTE#16#C3;
CRCHi[5]:=BYTE#16#C0;    CRCLo[5]:=BYTE#16#03;
CRCHi[6]:=BYTE#16#80;    CRCLo[6]:=BYTE#16#02;
CRCHi[7]:=BYTE#16#41;    CRCLo[7]:=BYTE#16#C2;
CRCHi[8]:=BYTE#16#01;    CRCLo[8]:=BYTE#16#C6;
CRCHi[9]:=BYTE#16#C0;    CRCLo[9]:=BYTE#16#06;
CRCHi[10]:=BYTE#16#80;   CRCLo[10]:=BYTE#16#07;
CRCHi[11]:=BYTE#16#41;   CRCLo[11]:=BYTE#16#C7;
CRCHi[12]:=BYTE#16#00;   CRCLo[12]:=BYTE#16#05;
CRCHi[13]:=BYTE#16#C1;   CRCLo[13]:=BYTE#16#C5;
CRCHi[14]:=BYTE#16#81;   CRCLo[14]:=BYTE#16#C4;
 
CRCHi[15]:=BYTE#16#40;   CRCLo[15]:=BYTE#16#04;
CRCHi[16]:=BYTE#16#01;   CRCLo[16]:=BYTE#16#CC;
CRCHi[17]:=BYTE#16#C0;   CRCLo[17]:=BYTE#16#0C;
CRCHi[18]:=BYTE#16#80;   CRCLo[18]:=BYTE#16#0D;
CRCHi[19]:=BYTE#16#41;   CRCLo[19]:=BYTE#16#CD;
CRCHi[20]:=BYTE#16#00;   CRCLo[20]:=BYTE#16#0F;
CRCHi[21]:=BYTE#16#C1;   CRCLo[21]:=BYTE#16#CF;
CRCHi[22]:=BYTE#16#81;   CRCLo[22]:=BYTE#16#CE;
CRCHi[23]:=BYTE#16#40;   CRCLo[23]:=BYTE#16#0E;
CRCHi[24]:=BYTE#16#00;   CRCLo[24]:=BYTE#16#0A;
CRCHi[25]:=BYTE#16#C1;   CRCLo[25]:=BYTE#16#CA;
CRCHi[26]:=BYTE#16#81;   CRCLo[26]:=BYTE#16#CB;
CRCHi[27]:=BYTE#16#40;   CRCLo[27]:=BYTE#16#0B;
CRCHi[28]:=BYTE#16#01;   CRCLo[28]:=BYTE#16#C9;
CRCHi[29]:=BYTE#16#C0;   CRCLo[29]:=BYTE#16#09;
 
CRCHi[30]:=BYTE#16#80;   CRCLo[30]:=BYTE#16#08; 
CRCHi[31]:=BYTE#16#41;   CRCLo[31]:=BYTE#16#C8;
CRCHi[32]:=BYTE#16#01;   CRCLo[32]:=BYTE#16#D8;
CRCHi[33]:=BYTE#16#C0;   CRCLo[33]:=BYTE#16#18;
CRCHi[34]:=BYTE#16#80;   CRCLo[34]:=BYTE#16#19;
CRCHi[35]:=BYTE#16#41;   CRCLo[35]:=BYTE#16#D9;
CRCHi[36]:=BYTE#16#00;   CRCLo[36]:=BYTE#16#1B;
CRCHi[37]:=BYTE#16#C1;   CRCLo[37]:=BYTE#16#DB;
CRCHi[38]:=BYTE#16#81;   CRCLo[38]:=BYTE#16#DA;
CRCHi[39]:=BYTE#16#40;   CRCLo[39]:=BYTE#16#1A;
CRCHi[40]:=BYTE#16#00;   CRCLo[40]:=BYTE#16#1E;
CRCHi[41]:=BYTE#16#C1;   CRCLo[41]:=BYTE#16#DE;
CRCHi[42]:=BYTE#16#81;   CRCLo[42]:=BYTE#16#DF;
CRCHi[43]:=BYTE#16#40;   CRCLo[43]:=BYTE#16#1F;
CRCHi[44]:=BYTE#16#01;   CRCLo[44]:=BYTE#16#DD;
 
CRCHi[45]:=BYTE#16#C0;   CRCLo[45]:=BYTE#16#1D;
CRCHi[46]:=BYTE#16#80;   CRCLo[46]:=BYTE#16#1C;
CRCHi[47]:=BYTE#16#41;   CRCLo[47]:=BYTE#16#DC;
CRCHi[48]:=BYTE#16#00;   CRCLo[48]:=BYTE#16#14;
CRCHi[49]:=BYTE#16#C1;   CRCLo[49]:=BYTE#16#D4;
CRCHi[50]:=BYTE#16#81;   CRCLo[50]:=BYTE#16#D5;
CRCHi[51]:=BYTE#16#40;   CRCLo[51]:=BYTE#16#15;
CRCHi[52]:=BYTE#16#01;   CRCLo[52]:=BYTE#16#D7;
CRCHi[53]:=BYTE#16#C0;   CRCLo[53]:=BYTE#16#17;
CRCHi[54]:=BYTE#16#80;   CRCLo[54]:=BYTE#16#16;
CRCHi[55]:=BYTE#16#41;   CRCLo[55]:=BYTE#16#D6;
CRCHi[56]:=BYTE#16#01;   CRCLo[56]:=BYTE#16#D2;
CRCHi[57]:=BYTE#16#C0;   CRCLo[57]:=BYTE#16#12;
CRCHi[58]:=BYTE#16#80;   CRCLo[58]:=BYTE#16#13;
CRCHi[59]:=BYTE#16#41;   CRCLo[59]:=BYTE#16#D3;
 
CRCHi[60]:=BYTE#16#00;   CRCLo[60]:=BYTE#16#11; 
CRCHi[61]:=BYTE#16#C1;   CRCLo[61]:=BYTE#16#D1;
CRCHi[62]:=BYTE#16#81;   CRCLo[62]:=BYTE#16#D0;
CRCHi[63]:=BYTE#16#40;   CRCLo[63]:=BYTE#16#10;
CRCHi[64]:=BYTE#16#01;   CRCLo[64]:=BYTE#16#F0;
CRCHi[65]:=BYTE#16#C0;   CRCLo[65]:=BYTE#16#30;
CRCHi[66]:=BYTE#16#80;   CRCLo[66]:=BYTE#16#31;
CRCHi[67]:=BYTE#16#41;   CRCLo[67]:=BYTE#16#F1;
CRCHi[68]:=BYTE#16#00;   CRCLo[68]:=BYTE#16#33;
CRCHi[69]:=BYTE#16#C1;   CRCLo[69]:=BYTE#16#F3;
CRCHi[70]:=BYTE#16#81;   CRCLo[70]:=BYTE#16#F2;
CRCHi[71]:=BYTE#16#40;   CRCLo[71]:=BYTE#16#32;
CRCHi[72]:=BYTE#16#00;   CRCLo[72]:=BYTE#16#36;
CRCHi[73]:=BYTE#16#C1;   CRCLo[73]:=BYTE#16#F6;
CRCHi[74]:=BYTE#16#81;   CRCLo[74]:=BYTE#16#F7;
 
 
CRCHi[75]:=BYTE#16#40;   CRCLo[75]:=BYTE#16#37;
CRCHi[76]:=BYTE#16#01;   CRCLo[76]:=BYTE#16#F5;
CRCHi[77]:=BYTE#16#C0;   CRCLo[77]:=BYTE#16#35;
CRCHi[78]:=BYTE#16#80;   CRCLo[78]:=BYTE#16#34;
CRCHi[79]:=BYTE#16#41;   CRCLo[79]:=BYTE#16#F4;
CRCHi[80]:=BYTE#16#00;   CRCLo[80]:=BYTE#16#3C;
CRCHi[81]:=BYTE#16#C1;   CRCLo[81]:=BYTE#16#FC;
CRCHi[82]:=BYTE#16#81;   CRCLo[82]:=BYTE#16#FD;
CRCHi[83]:=BYTE#16#40;   CRCLo[83]:=BYTE#16#3D;
CRCHi[84]:=BYTE#16#01;   CRCLo[84]:=BYTE#16#FF;
CRCHi[85]:=BYTE#16#C0;   CRCLo[85]:=BYTE#16#3F;
CRCHi[86]:=BYTE#16#80;   CRCLo[86]:=BYTE#16#3E;
CRCHi[87]:=BYTE#16#41;   CRCLo[87]:=BYTE#16#FE;
CRCHi[88]:=BYTE#16#01;   CRCLo[88]:=BYTE#16#FA;
CRCHi[89]:=BYTE#16#C0;   CRCLo[89]:=BYTE#16#3A;
 
CRCHi[90]:=BYTE#16#80;   CRCLo[90]:=BYTE#16#3B;
CRCHi[91]:=BYTE#16#41;   CRCLo[91]:=BYTE#16#FB;
CRCHi[92]:=BYTE#16#00;   CRCLo[92]:=BYTE#16#39;
CRCHi[93]:=BYTE
投诉建议

提交

查看更多评论
其他资讯

查看更多

腾控低功耗可编程控制器正式发布

基于腾控PLC的扎啤桶清洗机的设计

易控微网STC-105微型RTU(带热电阻、AI、DI、DO)用户手册

stc-102微型 RTU用户手册(V1.0)

腾控产品进军西班牙市场