CANOpen-LSS-理论篇
CANOpen-LSS-理论篇
1. 报文分析
报文结构
FastScan模式下调试成功的原始报文数据
序号 传输方向 接收时间标识 帧ID 帧格式 帧类型 数据长度 数据
0 接收 17:56:55.011.0 0x000007ff 数据帧 标准帧 0x01 7f
1 接收 17:56:55.432.0 0x00000701 数据帧 标准帧 0x01 00
2 接收 17:56:55.432.0 0x00000000 数据帧 标准帧 0x02 81 00
3 接收 17:56:55.432.0 0x00000000 数据帧 标准帧 0x02 02 00
4 接收 17:56:55.432.0 0x000007e5 数据帧 标准帧 0x08 4c 00 00 00 00 00 00 00
5 接收 17:56:55.432.0 0x000007e4 数据帧 标准帧 0x08 50 00 00 00 00 00 00 00
6 接收 17:56:55.432.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 00 80 00 00
7 接收 17:56:55.432.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
8 接收 17:56:56.320.0 0x000007ff 数据帧 标准帧 0x01 04
9 接收 17:56:56.430.0 0x00000701 数据帧 标准帧 0x01 7f
10 接收 17:56:56.446.0 0x000007e5 数据帧 标准帧 0x08 51 00 56 34 12 07 00 00
11 接收 17:56:56.446.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
12 接收 17:56:56.446.0 0x000007e5 数据帧 标准帧 0x08 51 00 56 34 12 06 00 00
13 接收 17:56:56.461.0 0x000007e5 数据帧 标准帧 0x08 51 40 56 34 12 05 00 00
14 接收 17:56:56.477.0 0x000007e5 数据帧 标准帧 0x08 51 60 56 34 12 04 00 00
15 接收 17:56:56.477.0 0x000007e5 数据帧 标准帧 0x08 51 70 56 34 12 03 00 00
16 接收 17:56:56.493.0 0x000007e5 数据帧 标准帧 0x08 51 78 56 34 12 02 00 00
17 接收 17:56:56.493.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
18 接收 17:56:56.493.0 0x000007e5 数据帧 标准帧 0x08 51 78 56 34 12 01 00 00
19 接收 17:56:56.493.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
20 接收 17:56:56.508.0 0x000007e5 数据帧 标准帧 0x08 51 78 56 34 12 00 00 00
21 接收 17:56:56.508.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
22 接收 17:56:56.524.0 0x000007e5 数据帧 标准帧 0x08 51 78 56 34 12 00 00 01
23 接收 17:56:56.524.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
24 接收 17:56:56.524.0 0x000007e5 数据帧 标准帧 0x08 51 00 34 12 90 07 01 01
25 接收 17:56:56.524.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
26 接收 17:56:56.540.0 0x000007e5 数据帧 标准帧 0x08 51 00 34 12 90 06 01 01
27 接收 17:56:56.556.0 0x000007e5 数据帧 标准帧 0x08 51 40 34 12 90 05 01 01
28 接收 17:56:56.556.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
29 接收 17:56:56.556.0 0x000007e5 数据帧 标准帧 0x08 51 40 34 12 90 04 01 01
30 接收 17:56:56.569.0 0x000007e5 数据帧 标准帧 0x08 51 50 34 12 90 03 01 01
31 接收 17:56:56.569.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
32 接收 17:56:56.584.0 0x000007e5 数据帧 标准帧 0x08 51 50 34 12 90 02 01 01
33 接收 17:56:56.584.0 0x000007e5 数据帧 标准帧 0x08 51 54 34 12 90 01 01 01
34 接收 17:56:56.601.0 0x000007e5 数据帧 标准帧 0x08 51 56 34 12 90 00 01 01
35 接收 17:56:56.601.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
36 接收 17:56:56.617.0 0x000007e5 数据帧 标准帧 0x08 51 56 34 12 90 00 01 02
37 接收 17:56:56.617.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
38 接收 17:56:56.617.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 00 1f 02 02
39 接收 17:56:56.617.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
40 接收 17:56:56.631.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 00 1e 02 02
41 接收 17:56:56.647.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 40 1d 02 02
42 接收 17:56:56.647.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 60 1c 02 02
43 接收 17:56:56.663.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 70 1b 02 02
44 接收 17:56:56.666.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 78 1a 02 02
45 接收 17:56:56.666.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
46 接收 17:56:56.678.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 78 19 02 02
47 接收 17:56:56.678.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
48 接收 17:56:56.693.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 78 18 02 02
49 接收 17:56:56.693.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
50 接收 17:56:56.693.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 78 17 02 02
51 接收 17:56:56.710.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 80 78 16 02 02
52 接收 17:56:56.710.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
53 接收 17:56:56.725.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 80 78 15 02 02
54 接收 17:56:56.725.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
55 接收 17:56:56.725.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 80 78 14 02 02
56 接收 17:56:56.741.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 13 02 02
57 接收 17:56:56.741.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
58 接收 17:56:56.757.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 12 02 02
59 接收 17:56:56.757.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
60 接收 17:56:56.757.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 11 02 02
61 接收 17:56:56.757.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
62 接收 17:56:56.772.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 10 02 02
63 接收 17:56:56.772.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
64 接收 17:56:56.788.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 0f 02 02
65 接收 17:56:56.788.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
66 接收 17:56:56.788.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 0e 02 02
67 接收 17:56:56.788.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
68 接收 17:56:56.803.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 0d 02 02
69 接收 17:56:56.803.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
70 接收 17:56:56.803.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 90 78 0c 02 02
71 接收 17:56:56.819.0 0x000007e5 数据帧 标准帧 0x08 51 00 10 90 78 0b 02 02
72 接收 17:56:56.819.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
73 接收 17:56:56.835.0 0x000007e5 数据帧 标准帧 0x08 51 00 10 90 78 0a 02 02
74 接收 17:56:56.835.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
75 接收 17:56:56.835.0 0x000007e5 数据帧 标准帧 0x08 51 00 10 90 78 09 02 02
76 接收 17:56:56.851.0 0x000007e5 数据帧 标准帧 0x08 51 00 12 90 78 08 02 02
77 接收 17:56:56.851.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
78 接收 17:56:56.866.0 0x000007e5 数据帧 标准帧 0x08 51 00 12 90 78 07 02 02
79 接收 17:56:56.866.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
80 接收 17:56:56.866.0 0x000007e5 数据帧 标准帧 0x08 51 00 12 90 78 06 02 02
81 接收 17:56:56.866.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
82 接收 17:56:56.882.0 0x000007e5 数据帧 标准帧 0x08 51 00 12 90 78 05 02 02
83 接收 17:56:56.896.0 0x000007e5 数据帧 标准帧 0x08 51 20 12 90 78 04 02 02
84 接收 17:56:56.896.0 0x000007e5 数据帧 标准帧 0x08 51 30 12 90 78 03 02 02
85 接收 17:56:56.896.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
86 接收 17:56:56.913.0 0x000007e5 数据帧 标准帧 0x08 51 30 12 90 78 02 02 02
87 接收 17:56:56.928.0 0x000007e5 数据帧 标准帧 0x08 51 34 12 90 78 01 02 02
88 接收 17:56:56.928.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
89 接收 17:56:56.928.0 0x000007e5 数据帧 标准帧 0x08 51 34 12 90 78 00 02 02
90 接收 17:56:56.928.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
91 接收 17:56:56.943.0 0x000007e5 数据帧 标准帧 0x08 51 34 12 90 78 00 02 03
92 接收 17:56:56.943.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
93 接收 17:56:56.943.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 00 1f 03 03
94 接收 17:56:56.943.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
95 接收 17:56:56.959.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 00 1e 03 03
96 接收 17:56:56.975.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 40 1d 03 03
97 接收 17:56:56.975.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
98 接收 17:56:56.975.0 0x000007ff 数据帧 标准帧 0x01 04
99 接收 17:56:56.975.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 40 1c 03 03
100 接收 17:56:56.991.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 50 1b 03 03
101 接收 17:56:56.991.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
102 接收 17:56:57.006.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 50 1a 03 03
103 接收 17:56:57.006.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 54 19 03 03
104 接收 17:56:57.021.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 56 18 03 03
105 接收 17:56:57.021.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
106 接收 17:56:57.038.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 56 17 03 03
107 接收 17:56:57.038.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
108 接收 17:56:57.038.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 00 56 16 03 03
109 接收 17:56:57.053.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 40 56 15 03 03
110 接收 17:56:57.053.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 60 56 14 03 03
111 接收 17:56:57.069.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 70 56 13 03 03
112 接收 17:56:57.085.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 78 56 12 03 03
113 接收 17:56:57.085.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
114 接收 17:56:57.085.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 78 56 11 03 03
115 接收 17:56:57.085.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
116 接收 17:56:57.100.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 78 56 10 03 03
117 接收 17:56:57.100.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
118 接收 17:56:57.115.0 0x000007e5 数据帧 标准帧 0x08 51 00 00 78 56 0f 03 03
119 接收 17:56:57.115.0 0x000007e5 数据帧 标准帧 0x08 51 00 80 78 56 0e 03 03
120 接收 17:56:57.115.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
121 接收 17:56:57.131.0 0x000007e5 数据帧 标准帧 0x08 51 00 80 78 56 0d 03 03
122 接收 17:56:57.131.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
123 接收 17:56:57.146.0 0x000007e5 数据帧 标准帧 0x08 51 00 80 78 56 0c 03 03
124 接收 17:56:57.146.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 0b 03 03
125 接收 17:56:57.146.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
126 接收 17:56:57.163.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 0a 03 03
127 接收 17:56:57.163.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
128 接收 17:56:57.178.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 09 03 03
129 接收 17:56:57.178.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
130 接收 17:56:57.178.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 08 03 03
131 接收 17:56:57.178.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
132 接收 17:56:57.193.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 07 03 03
133 接收 17:56:57.193.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
134 接收 17:56:57.195.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 06 03 03
135 接收 17:56:57.195.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
136 接收 17:56:57.209.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 05 03 03
137 接收 17:56:57.209.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
138 接收 17:56:57.224.0 0x000007e5 数据帧 标准帧 0x08 51 00 90 78 56 04 03 03
139 接收 17:56:57.224.0 0x000007e5 数据帧 标准帧 0x08 51 10 90 78 56 03 03 03
140 接收 17:56:57.224.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
141 接收 17:56:57.239.0 0x000007e5 数据帧 标准帧 0x08 51 10 90 78 56 02 03 03
142 接收 17:56:57.239.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
143 接收 17:56:57.256.0 0x000007e5 数据帧 标准帧 0x08 51 10 90 78 56 01 03 03
144 接收 17:56:57.256.0 0x000007e5 数据帧 标准帧 0x08 51 12 90 78 56 00 03 03
145 接收 17:56:57.256.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
146 接收 17:56:57.271.0 0x000007e5 数据帧 标准帧 0x08 51 12 90 78 56 00 03 03
147 接收 17:56:57.271.0 0x000007e4 数据帧 标准帧 0x08 4f 00 00 00 00 00 00 00
148 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 5e 00 00 00 00 00 00 00
149 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 5e ff 00 00 00 00 00 00
150 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 5a 00 00 00 00 00 00 00
151 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 5a 78 56 34 12 00 00 00
152 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 5b 00 00 00 00 00 00 00
153 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 5b 56 34 12 90 00 00 00
154 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 5c 00 00 00 00 00 00 00
155 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 5c 34 12 90 78 00 00 00
156 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 5d 00 00 00 00 00 00 00
157 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 5d 12 90 78 56 00 00 00
158 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 11 02 00 00 00 00 00 00
159 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 11 00 00 00 00 00 00 00
160 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 13 00 02 00 00 00 00 00
161 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 13 00 00 00 00 00 00 00
162 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 17 00 00 00 00 00 00 00
163 接收 17:56:57.287.0 0x000007e4 数据帧 标准帧 0x08 17 01 00 00 00 00 00 00
164 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 04 00 00 00 00 00 00 00
165 接收 17:56:57.287.0 0x00000702 数据帧 标准帧 0x01 00
166 接收 17:56:57.287.0 0x000007e5 数据帧 标准帧 0x08 4c 00 00 00 00 00 00 00
167 接收 17:56:57.442.0 0x00000701 数据帧 标准帧 0x01 7f
168 接收 17:56:58.285.0 0x000007e5 数据帧 标准帧 0x08 04 01 00 00 00 00 00 00
169 接收 17:56:58.285.0 0x000007e5 数据帧 标准帧 0x08 15 01 00 00 00 00 00 00
170 接收 17:56:58.285.0 0x000007e5 数据帧 标准帧 0x08 04 00 00 00 00 00 00 00
171 接收 17:56:58.301.0 0x00000000 数据帧 标准帧 0x02 82 00
172 接收 17:56:58.301.0 0x00000702 数据帧 标准帧 0x01 00
173 接收 17:56:58.441.0 0x00000701 数据帧 标准帧 0x01 7f
174 接收 17:56:59.439.0 0x00000701 数据帧 标准帧 0x01 7f
175 接收 17:57:00.438.0 0x00000701 数据帧 标准帧 0x01 7f
176 接收 17:57:01.437.0 0x00000701 数据帧 标准帧 0x01 7f
177 接收 17:57:02.235.0 0x00000702 数据帧 标准帧 0x01 7f
178 接收 17:57:02.437.0 0x00000701 数据帧 标准帧 0x01 7f
lss部分分析:
[1]MASTER>> LSS_IDENT_REMOTE_NON_CONF 76 //0x4cCOB-ID:0x7e5 LEN:0x08 DATA:0x4c 0x00 0x00 0x00 0x00 0x00 0x00 0x00 //主机询问网络中是否存在未配置设备ID的节点
[2]SLAVE>> LSS_IDENT_NON_CONF_SLAVE 80 //0x50COB-ID:0x7e4 LEN:0x08 DATA:0x50 0x00 0x00 0x00 0x00 0x00 0x00 0x00 //存在一个或多个从机响应,表明它是未配置节点ID的设备
[3]MASTER>> LSS_IDENT_FASTSCAN 81 //0x51 COB-ID:0x7e5 LEN:0x08 DATA:0x51 0x00 0x00 0x00 0x00 0x80 0x00 0x00 //从机开始一个新的fastscan周期
[4]SLAVE>> LSS_IDENT_SLAVE 79 //0x4fCOB-ID:0x7e4 LEN:0x08 DATA:0x4f 0x00 0x00 0x00 0x00 0x80 0x00 0x00
2. LSS协议原理分析
NOTE:
上图的文字来自于下面这个例程:
!!!!不用照着这个流程图自己实现,例程给的代码完全可以用而且非常好用。
还有就是光知道这个流程图是远远不够的,所以才会有这篇文章。
废话太多,进入正题===》
部分1 FastScan的运行原理
部分2 波特率配置
波特率配置原则
观点
无论该节点是使用自动/手动分配ID,都应该支持LSS的波特率配置。
为什么?
我们反向论证,假如不这么做会怎么样?
假如当前网络中有100个节点50使用手动配置,50个使用自动配置,手动配置的节点波特率的出厂值都是500K,现在我们想改成1M,那么对于这50个节点的波特率仍需手动配置岂不是非常麻烦!
如何实施
[从节点]:
都需实现CANOpen提供的波特率设置的函数实体
[主机点]:
当主机点一开始就发现网络不存在任何未配置节点,那么就执行相应的命令来配置网络中所有节点的波特率
- LSS_CONF_BIT_TIMING
- LSS_CONF_STORE
- LSS_SM_GLOBAL
- LSS_IDENT_REMOTE_NON_CONF
…
波特率设置的BUG!!!
部分2 LSS Identify Remote Slaves
3. 协议命令
#define SDELAY_OFF 0
#define SDELAY_FIRST 1
#define SDELAY_SECOND 2#define LSS_WAITING_MODE 0
#define LSS_CONFIGURATION_MODE 1/* Switch mode services */
#define LSS_SM_GLOBAL 0x04//4
#define LSS_SM_SELECTIVE_VENDOR 0x40//64
#define LSS_SM_SELECTIVE_PRODUCT 0x41//65
#define LSS_SM_SELECTIVE_REVISION 0x42//66
#define LSS_SM_SELECTIVE_SERIAL 0x43//67
#define LSS_SM_SELECTIVE_RESP 0x44//68
/* Configuration services */
#define LSS_CONF_NODE_ID 0x11//17
#define LSS_CONF_BIT_TIMING 0x13//19
#define LSS_CONF_ACT_BIT_TIMING 0x15//21
#define LSS_CONF_STORE 0x17//23
/* Inquire services */
#define LSS_INQ_VENDOR_ID 0x5A//90
#define LSS_INQ_PRODUCT_CODE 0x5B//91
#define LSS_INQ_REV_NUMBER 0x5C//92
#define LSS_INQ_SERIAL_NUMBER 0x5D//93
#define LSS_INQ_NODE_ID 0x5E//94
/* Identification services */
#define LSS_IDENT_REMOTE_VENDOR 0x46//70
#define LSS_IDENT_REMOTE_PRODUCT 0x47//71
#define LSS_IDENT_REMOTE_REV_LOW 0x48//72
#define LSS_IDENT_REMOTE_REV_HIGH 0x49//73
#define LSS_IDENT_REMOTE_SERIAL_LOW 0x4A//74
#define LSS_IDENT_REMOTE_SERIAL_HIGH 0x4B//75
#define LSS_IDENT_REMOTE_NON_CONF 0x4C//76
#define LSS_IDENT_SLAVE 0x4F//79
#define LSS_IDENT_NON_CONF_SLAVE 0x50//80
#define LSS_IDENT_FASTSCAN 0x51//81
CANOpen-LSS-理论篇相关推荐
- 艾伟_转载:学习 ASP.NET MVC (第五回)理论篇
本系列文章导航 学习 ASP.NET MVC (第一回)理论篇 学习 ASP.NET MVC (第二回)实战篇 学习 ASP.NET MVC (第三回)实战篇 学习 ASP.NET MVC (第四回) ...
- 一步步教你轻松学朴素贝叶斯模型算法理论篇1
一步步教你轻松学朴素贝叶斯模型理论篇1 (白宁超2018年9月3日17:51:32) 导读:朴素贝叶斯模型是机器学习常用的模型算法之一,其在文本分类方面简单易行,且取得不错的分类效果.所以很受欢迎,对 ...
- RabbitMQ学习总结 第一篇:理论篇
目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...
- 解密回声消除技术之一(理论篇)
http://hulong988.blog.51cto.com 解密回声消除技术之一(理论篇) 2009-06-11 22:24:58 标签:语音 职场 休闲 通讯 原创作品,允许转载,转载时请务必以 ...
- 【机器学习】Logistic Regression 的前世今生(理论篇)
Logistic Regression 的前世今生(理论篇) 本博客仅为作者记录笔记之用,不免有很多细节不对之处. 还望各位看官能够见谅,欢迎批评指正. 博客虽水,然亦博主之苦劳也. 如需转载,请附上 ...
- php switch 函数,PHP丨PHP基础知识之条件语SWITCH判断「理论篇」
Switch在一些计算机语言中是保留字,其作用大多情况下是进行判断选择.以PHP来说,switch(开关语句)常和case break default一起使用 典型结构 switch($control ...
- dma访问主存时_DMA导致Cache数据一致性问题的原因及其解决方式(理论篇)
点击上方公众号名称关注,获得更多内容 ✎ 编 者 悟 语 唉!嫉妒之心真的能俘获它所接触到的任何目标啊--"欲加之罪,何患无辞"呢?"觉悟高的"更有" ...
- 程序 峰谷值 提取_医学影像组学特征值(Radiomics Features)提取之Pyradiomics(一)理论篇...
医学影像组学特征值(Radiomics Features)提取之pyradiomics(一)理论篇 pyradiomics是一个开源的python软件包,可以从医学影像中提取出Radiomics影像组 ...
- 手撕 CNN 经典网络之 VGGNet(理论篇)
2014年,牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司一起研发了新的卷积神经网络,并命名为VGGNet.VGGNet是比AlexNet更深的 ...
- 手撕 CNN 经典网络之 AlexNet(理论篇)
大家好,我是红色石头! 第一个典型的CNN是LeNet5网络,而第一个大放异彩的CNN却是AlexNet.2012年在全球知名的图像识别竞赛 ILSVRC 中,AlexNet 横空出世,直接将错误率降 ...
最新文章
- python中基本程序结构_关于Python 程序格式框架的描述,正确的是( )
- torch.load No module named
- Iphone控件大全
- syslog 向内存中缓存_漫谈缓存(Cache)、大规模芯片系统的存储层次结构优化以及开源仿真工具ZSim...
- java 开发时常用的工具类包 commons-lang3
- 批量旋转很多张图片,可以设置自定义的旋转角度
- YT88 USB 加密狗 使用方法(一)加壳
- myScript调研,电子手写板使用,纯干货
- 关于尾注的一些问题-上
- 利用STM32精确测量电压
- [ Node | koa2 ] 喜马拉雅JSSDK签名服务
- 实体机安装双系统多系统教程 及引导修复指南
- 及时备份数据可以保护计算机系统吗,电脑数据的保护和备份
- python数据提取和合并_用Python提取和合并Excel数据
- 7-66 华氏温度转换为摄氏温度
- laradock一些坑(长期维护)
- 初来咋到的,多多关照哈~
- 面向体验,助推超视频时代新增长
- k8s通过命令批量删除pod
- 新数据显示社交媒体影响力和参与度对流媒体增长至关重要