📄 path_switch.lst
字号:
271 4 }
272 3 else bportid = 3;
273 3 break;
274 3 case 5: if (bportid == 1){
275 4 bportid = 0;
276 4 }
277 3 else bportid = 1;
278 3 break;
279 3 default: break;
280 3 }
281 2
282 2 switch (bboardid2){ //得到备用端口在1K50上的端口值
283 3 case 0: bportid2 = 0xff;
284 3 break;
285 3 case 4: if (bportid2 == 1){
286 4 bportid2 = 2;
287 4 }
288 3 else bportid2 = 3;
289 3 break;
290 3 case 5: if (bportid2 == 1){
291 4 bportid2 = 0;
292 4 }
293 3 else bportid2 = 1;
294 3 break;
295 3 default: break;
296 3 }
297 2
298 2 switch(boardid){ //将输出盘号端口号转换成为1K50中的输出端口号
299 3 case 1: port = 5;
300 3 break;
301 3 case 2: port = 6;
302 3 break;
303 3 case 3: port = 4;
304 3 break;
305 3 case 4: if(portid == 1){
306 4 port = 2;
307 4 }
308 3 else port = 3;
309 3 break;
310 3 case 5: if(portid == 1){
311 4 port = 0;
312 4 }
313 3 else port = 1;
314 3 break;
315 3 default: break;
316 3 }
C51 COMPILER V7.50 PATH_SWITCH 03/10/2006 16:35:33 PAGE 7
317 2
318 2 switch (mport){ //填写光口保护倒换表
319 3 case 0: path_switch_array[0][timeid - 1][0] = bportid; //填写MCB光口1的供倒换光口
320 3 path_switch_array[0][timeid - 1][1] = port; //填写MCB光口1的被保护光口
321 3 path_switch_array[0][timeid - 1][2] = bportid2; //填写被保护光口的上行并发光口
322 3 path_switch_array[0][timeid - 1][3] = 1; //光口是否连接的标志位,1表示有连接
323 3 if (bportid != 0xff){
324 4 path_switch_array[bportid][timeid - 1][0] = 0; //填写供倒换光口
325 4 path_switch_array[bportid][timeid - 1][1] = port;
326 4 path_switch_array[bportid][timeid - 1][2] = 0;
327 4 path_switch_array[bportid][timeid - 1][3] = 0;
328 4 }
329 3 else {
330 4 path_switch_array[bportid2][timeid - 1][0] = 0xff; //填写供倒换光口
331 4 path_switch_array[bportid2][timeid - 1][1] = port;
332 4 path_switch_array[bportid2][timeid - 1][2] = 0xff;
333 4 path_switch_array[bportid2][timeid - 1][3] = 0;
334 4 }
335 3 break;
336 3 case 1: path_switch_array[1][timeid - 1][0] = bportid; //填写MCB光口2的供倒换光口
337 3 path_switch_array[1][timeid - 1][1] = port; //填写MCB光口2的被保护光口
338 3 path_switch_array[1][timeid - 1][2] = bportid2; //填写被保护光口的上行并发光口
339 3 path_switch_array[1][timeid - 1][3] = 1;
340 3 if (bportid != 0xff){
341 4 path_switch_array[bportid][timeid - 1][0] = 1;
342 4 path_switch_array[bportid][timeid - 1][1] = port;
343 4 path_switch_array[bportid][timeid - 1][2] = 1;
344 4 path_switch_array[bportid][timeid - 1][3] = 0;
345 4 }
346 3 else {
347 4 path_switch_array[bportid2][timeid - 1][0] = 0xff; //填写供倒换光口
348 4 path_switch_array[bportid2][timeid - 1][1] = port;
349 4 path_switch_array[bportid2][timeid - 1][2] = 0xff;
350 4 path_switch_array[bportid2][timeid - 1][3] = 0;
351 4 }
352 3 break;
353 3 case 2: path_switch_array[2][timeid - 1][0] = bportid; //填写OTB光口1的供倒换光口
354 3 path_switch_array[2][timeid - 1][1] = port;
355 3 path_switch_array[2][timeid - 1][2] = bportid2;
356 3 path_switch_array[2][timeid - 1][3] = 1;
357 3 if (bportid != 0xff){
358 4 path_switch_array[bportid][timeid - 1][0] = 2;
359 4 path_switch_array[bportid][timeid - 1][1] = port;
360 4 path_switch_array[bportid][timeid - 1][2] = 2;
361 4 path_switch_array[bportid][timeid - 1][3] = 0;
362 4 }
363 3 else {
364 4 path_switch_array[bportid2][timeid - 1][0] = 0xff; //填写供倒换光口
365 4 path_switch_array[bportid2][timeid - 1][1] = port;
366 4 path_switch_array[bportid2][timeid - 1][2] = 0xff;
367 4 path_switch_array[bportid2][timeid - 1][3] = 0;
368 4 }
369 3 break;
370 3 case 3: path_switch_array[3][timeid - 1][0] = bportid;
371 3 path_switch_array[3][timeid - 1][1] = port;
372 3 path_switch_array[3][timeid - 1][2] = bportid2;
373 3 path_switch_array[3][timeid - 1][3] = 1;
374 3 if (bportid != 0xff){
375 4 path_switch_array[bportid][timeid - 1][0] = 3;
376 4 path_switch_array[bportid][timeid - 1][1] = port;
377 4 path_switch_array[bportid][timeid - 1][2] = 3;
378 4 path_switch_array[bportid][timeid - 1][3] = 0;
C51 COMPILER V7.50 PATH_SWITCH 03/10/2006 16:35:33 PAGE 8
379 4 }
380 3 else {
381 4 path_switch_array[bportid2][timeid - 1][0] = 0xff; //填写供倒换光口
382 4 path_switch_array[bportid2][timeid - 1][1] = port;
383 4 path_switch_array[bportid2][timeid - 1][2] = 0xff;
384 4 path_switch_array[bportid2][timeid - 1][3] = 0;
385 4 }
386 3 break;
387 3 default: break;
388 3 }
389 2
390 2 return_value = 0;
391 2 if (bportid2 >= 0 & bportid2 <= 3){
392 3 if (bportid != 0xff){
393 4 PTUN(bportid2,btimeid2 - 1) = port;
394 4 }
395 3 else PTUN(bportid2,btimeid2 - 1) = 0xff;
396 3 }
397 2 }
398 1 else return_value = 2;
399 1
400 1 if (!GetResRdyTbl(1))
401 1 SetResRdyTbl(1);
402 1 return (return_value);
403 1 }
404
405
406 unsigned char run_path_switch(struct cmd_para_save *path_switch){
407 1 //C52运行通道倒换命令
408 1 unsigned char xdata boardid;
409 1 unsigned char xdata portid;
410 1 unsigned char xdata timeid;
411 1 unsigned char xdata sboard;
412 1 unsigned char xdata sport;
413 1 unsigned char xdata stime;
414 1 unsigned char xdata bport;
415 1 unsigned char xdata outport;
416 1 unsigned char xdata mode;
417 1 unsigned char xdata return_value;
418 1
419 1 commandid = 0x00433532;
420 1 boardid = path_switch -> path_swset_board; //输出盘号
421 1 portid = path_switch -> path_swset_port; //输出端口号
422 1 timeid = path_switch -> path_swset_slot; //输出时隙号
423 1 sboard = path_switch -> path_stset_board;
424 1 sport = path_switch -> path_stset_port;
425 1 stime = path_switch -> path_stset_slot;
426 1 mode = path_switch -> path_swset_mode; //倒换模式
427 1
428 1 switch (sboard){ //得到源端端口在1K50上的端口值
429 2 case 4: if (sport == 1){
430 3 sport = 2;
431 3 }
432 2 else sport = 3;
433 2 break;
434 2 case 5: if (sport == 1){
435 3 sport = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -