之前曾转载过一篇关于S7-200 PPI通信的文章,经过验证,里面的命令对于大多数存储器都是有效的,但是对于读取定时器和计数器无效,经过抓包测试,将读取定时器和计数器的格式分析如下:

定时器读取命令Bit0-bit32:

68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 1F 00 03 00 00 1F 00 00 20 41 16 

其中:

Bit24是读取计数器的个数

bit28——bit30是计数器地址,注意不要转换地址 

返回命令:bit0——bit33

68 24 24 68 00 02 08 32 03 00 00 00 00 00 02 00 13 00 00 04 01 FF 09 00 0F 02 00 00 7F FF 00 00 00 00 00 00 00 00 00 00 F0 16

Bit25是第一个定时器的状态

Bit26-bit29是第一个定时器的值

Bit30是第二个定时器的状态

Bit31-bit34是第二个定时器的值

Bit35是第三个定时器的状态

Bit36-bit39是第三个定时器的值

计数器读取命令:Bit0-bit32:

68 1B 1B 68 02 00 6C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 1E 00 03 00 00 1E 00 00 00 1F 16 

其中:

Bit24是读取计数器的个数

bit28——bit30是计数器地址,注意不要转换地址 

返回命令:bit0——bit33

68 1E 1E 68 00 02 32 03 00 00 00 00 00 02 00 0D 00 00 04 01 FF 09 00 09 00 00 00 00 56 78 10 0F 16 67 16

其中:

Bit25是第一个计数器的状态

Bit26-bit27是第一个计数器的值

Bit28是第二个计数器的状态

Bit29-bit30是第二个计数器的值

Bit31是第三个计数器的状态

Bit32-bit33是第三个计数器的值