Changes for page 01 Program execution

Last modified by Leo Wei on 2024/12/24 22:42

From version 13.7
edited by Stone Wu
on 2022/09/23 15:50
Change comment: (Autosaved)
To version 18.1
edited by Stone Wu
on 2022/09/23 16:36
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -218,11 +218,11 @@
218 218  (% style="text-align:center" %)
219 219  [[image:1-5.png||height="372" width="300" class="img-thumbnail"]]
220 220  
221 -* Scan the program name: the program name requires to match case, and the program name cannot use the same name with device name (the device name does not match case).
222 -* The input of /%$@&=~~`^<>?:{}[],;!*.~\~\'" is not supported. It cannot exceed 64 characters. The default name is MAINx.
223 -* The number of scan programs that can be built is limited to 100.
224 -* Each scan program has been END ended, but only the last END instruction is completed to calculate a scan cycle.
225 -* The execution sequence runs from top to bottom in the order of creation.
221 +1. Scan the program name: the program name requires to match case, and the program name cannot use the same name with device name (the device name does not match case).
222 +1. The input of /%$@&=~~`^<>?:{}[],;!*.~\~\'" is not supported. It cannot exceed 64 characters. The default name is MAINx.
223 +1. The number of scan programs that can be built is limited to 100.
224 +1. Each scan program has been END ended, but only the last END instruction is completed to calculate a scan cycle.
225 +1. The execution sequence runs from top to bottom in the order of creation.
226 226  
227 227  (% style="text-align:center" %)
228 228  [[image:1-6.png||class="img-thumbnail"]]
... ... @@ -238,7 +238,7 @@
238 238  
239 239  The trigger of event execution type program is as follows.
240 240  
241 -**(1) ON event of bit data (TRUE)**
241 +**ON event of bit data (TRUE)**
242 242  
243 243  * After the ON event is specified, if the contact that sets the trigger condition in the ON event is turned ON during the scan program, the ON event program will be executed in the scan program page*1 or before the END instruction is executed.
244 244  * The ON event program will only be executed once in a single scan cycle.
... ... @@ -254,13 +254,13 @@
254 254  The devices that can be specified are as follows.
255 255  
256 256  (% class="table-bordered" %)
257 -|(% colspan="2" %)**Project**|**Content**
257 +|=(% colspan="2" %)**Project**|=**Content**
258 258  |(% rowspan="2" %)Device *1|Bit Device|X, Y, M, SM
259 259  |Bit specification of word device|D.b
260 260  
261 261  *1 The indexed device cannot be specified.
262 262  
263 -**(2) TIME event**
263 +**TIME event**
264 264  
265 265  After the program is to RUN state and the specified time has elapsed, event is executed one time when it comes to the execution sequence of the first corresponding program. For the second and subsequent executions, the time is re-measured from the start of the last event execution type program. After the specified time has elapsed, the program is executed repeatedly when it comes to the execution sequence of the first corresponding program. In addition, in the next scan after the corresponding program is executed, the current value of the output (Y) and timer (T) used in the corresponding program can be cleared. It can be used for programs that do not need to respond in a fixed period of time.
266 266  
... ... @@ -300,26 +300,26 @@
300 300  (% style="text-align:center" %)
301 301  [[image:1-11.png||height="419" width="500" class="img-thumbnail"]]
302 302  
303 -Configuration instructions:
303 +**Configuration instructions:**
304 304  
305 - 1) Configuration interface
305 + Configuration interface
306 306  
307 307  (% style="text-align:center" %)
308 308  [[image:1-12.png||height="372" width="300" class="img-thumbnail"]]
309 309  
310 -2) Parameter content:
310 +Parameter content:
311 311  
312 312  (% class="table-bordered" %)
313 -|(% colspan="2" %)**Project**|**Content**|**Setting range**|**Default**
314 -|(% colspan="2" %)Execution type|Select event type|Not set/ON event/TIME event|Not set
315 -|(% rowspan="2" %)ON event|Contact|The event type can be set when ON event is selected. Set the bit device as the trigger condition.|X/Y/M/SM/D.b|
316 -|Whether to clear|When the bit device of the trigger condition set by the ON event is turned OFF, whether to clear the current value of the output (Y) and timer (T) used in the execution program of the ON event in the next cycle.|(((
313 +|=(% colspan="2" %)**Project**|=(% style="width: 654px;" %)**Content**|=(% style="width: 190px;" %)**Setting range**|=**Default**
314 +|(% colspan="2" %)Execution type|(% style="width:654px" %)Select event type|(% style="width:190px" %)Not set/ON event/TIME event|Not set
315 +|(% rowspan="2" %)ON event|Contact|(% style="width:654px" %)The event type can be set when ON event is selected. Set the bit device as the trigger condition.|(% style="width:190px" %)X/Y/M/SM/D.b|
316 +|Whether to clear|(% style="width:654px" %)When the bit device of the trigger condition set by the ON event is turned OFF, whether to clear the current value of the output (Y) and timer (T) used in the execution program of the ON event in the next cycle.|(% style="width:190px" %)(((
317 317  True
318 318  
319 319  False
320 320  )))|False
321 -|(% rowspan="2" %)TIME event|Time|Set how long to execute the event program once.|1 to 2147483647 (100us unit)|
322 -|Whether to clear|When the TIME event is executed, if the event is not executed in the next scan cycle, select whether to clear the output (Y) used in the TIME event execution program and the current value of the timer (T).|(((
321 +|(% rowspan="2" %)TIME event|Time|(% style="width:654px" %)Set how long to execute the event program once.|(% style="width:190px" %)1 to 2147483647 (100us unit)|
322 +|Whether to clear|(% style="width:654px" %)When the TIME event is executed, if the event is not executed in the next scan cycle, select whether to clear the output (Y) used in the TIME event execution program and the current value of the timer (T).|(% style="width:190px" %)(((
323 323  True
324 324  
325 325  False
... ... @@ -333,78 +333,60 @@
333 333  
334 334  In the process of executing the scan program, the program that can interrupt the priority execution of the scan program is called an interrupt execution program.
335 335  
336 - ~1. When an interrupt cause occurs, the interrupt program corresponding to the interrupt pointer number will be executed. However, the execution needs to be set to the interrupt enabled state by the EI instruction.
336 +* When an interrupt cause occurs, the interrupt program corresponding to the interrupt pointer number will be executed. However, the execution needs to be set to the interrupt enabled state by the EI instruction.
337 337  
338 338  (% style="text-align:center" %)
339 339  [[image:1652249587490-678.png||class="img-thumbnail"]]
340 340  
341 341  
342 - 2. An interrupt name corresponds to an interrupt program, and the interrupt name cannot be repeated. Each interrupt has its own trigger condition and execution program, and each interrupt program ends with END.
342 +* An interrupt name corresponds to an interrupt program, and the interrupt name cannot be repeated. Each interrupt has its own trigger condition and execution program, and each interrupt program ends with END.
343 +* Interrupt has the characteristic of interrupting the original execution program and executing the interrupt first, but it cannot interrupt the interrupt program being executed.
344 +* The interrupt program has the concept of priority. The smaller the priority value, the more priority the response. The priority setting range is 0 to 2.
343 343  
344 - 3. Interrupt has the characteristic of interrupting the original execution program and executing the interrupt first, but it cannot interrupt the interrupt program being executed.
346 +**The actions when an interruption cause occurs are as follows:**
345 345  
346 - 4. The interrupt program has the concept of priority. The smaller the priority value, the more priority the response. The priority setting range is 0 to 2.
348 +* Interrupt prohibition (DI) when an interruption cause occurs.
349 +** If the interrupt execution condition is triggered in a program that is forbidden by DI, the interrupt will not be executed. Even if the subsequent program uses the EI instruction to allow interruption, the previously shielded interrupt program will not be executed. Only the interrupt execution condition is triggered again. The interrupt program will be executed.
350 +* When multiple interrupt causes occur simultaneously in the interrupt enabled state.
351 +** The interrupt program with higher priority will be executed sequentially. In addition, when multiple interrupts with the same priority occur at the same time, the actions are executed in the order of interrupt priority.
352 +** If three interrupt programs I0, I10, I16 are created, the priority of I0 is 1, the priority of I10 is 0, and the priority of I16 is 1. The execution logic is shown in the figure below: I10 has the smallest priority and is executed first; I0 and I16 have the same priority and are executed in the order of program establishment.
347 347  
348 -The actions when an interruption cause occurs are as follows:
349 -
350 -1. Interrupt prohibition (DI) when an interruption cause occurs.
351 -
352 -If the interrupt execution condition is triggered in a program that is forbidden by DI, the interrupt will not be executed. Even if the subsequent program uses the EI instruction to allow interruption, the previously shielded interrupt program will not be executed. Only the interrupt execution condition is triggered again. The interrupt program will be executed.
353 -
354 - 2.When multiple interrupt causes occur simultaneously in the interrupt enabled state.
355 -
356 -The interrupt program with higher priority will be executed sequentially. In addition, when multiple interrupts with the same priority occur at the same time, the actions are executed in the order of interrupt priority.
357 -
358 -If three interrupt programs I0, I10, I16 are created, the priority of I0 is 1, the priority of I10 is 0, and the priority of I16 is 1. The execution logic is shown in the figure below: I10 has the smallest priority and is executed first; I0 and I16 have the same priority and are executed in the order of program establishment.
359 -
360 360  (% style="text-align:center" %)
361 361  [[image:1652249553246-688.png||class="img-thumbnail"]]
362 362  
363 - 3. When an interrupt occurs during the waiting time when performing constant scan.
357 +* When an interrupt occurs during the waiting time when performing constant scan.
358 +** Execute the interrupt program for this interrupt.
359 +* When other interrupts occur during the execution of the interrupt program.
360 +** In the interrupt program (including the specification when the interrupt occurs in the event execution program), when other interrupts occur, the original interrupt execution program will not be interrupted. After the original interrupt execution program is completed, the new interrupt program is executed. After the execution is completed Then return to the scanning procedure.
361 +* During the execution of the interrupt program, when an interrupt cause with a low priority or the same priority occurs.
362 +** The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
364 364  
365 -Execute the interrupt program for this interrupt.
366 -
367 - 4.When other interrupts occur during the execution of the interrupt program.
368 -
369 -In the interrupt program (including the specification when the interrupt occurs in the event execution program), when other interrupts occur, the original interrupt execution program will not be interrupted. After the original interrupt execution program is completed, the new interrupt program is executed. After the execution is completed Then return to the scanning procedure.
370 -
371 - 5. During the execution of the interrupt program, when an interrupt cause with a low priority or the same priority occurs.
372 -
373 -The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
374 -
375 -
376 376  (% style="text-align:center" %)
377 377  [[image:1652249673420-476.png||class="img-thumbnail"]]
378 378  
379 - 6. When the same interruption cause occurs during the execution of the interrupt program;
367 +* When the same interruption cause occurs during the execution of the interrupt program;
368 +** The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
380 380  
381 -The interruption cause that occurred is stored, and after the interrupt program in execution ends, the interrupt program corresponding to the stored interruption cause is executed. Even if the same interruption cause occurs multiple times, the interruption cause is stored only once.
382 -
383 383  **Interrupt trigger condition classification**
384 384  
385 -**External input (X) interrupt**
372 +* **External input (X) interrupt**
373 +** Description of external input interrupt
374 +*** The external input interrupt is triggered by the rising or falling edge of the fixed X point input.
375 +*** Supports the rising and falling edge interrupts of a total of 8 input points of X0 to X7, and supports a total of 16 external input interrupts.
376 +*** The same interrupt trigger condition cannot create multiple interrupt programs.
377 +*** External input interrupt and high-speed counter cannot use the same X point.
378 +*** You must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
379 +* **External input interrupt steps.**
380 +** Project management→ Program→ Interrupt→ right click to create.
381 +** The interrupt program name requires to match case, and the program name with the same name as the device cannot be used (the device name does not match case),
382 +** The interrupt program name does not support the input of /%$@&=~~`^<>?:{}[],;!*.~\~\'" characters,
383 +** The length of the interrupt program name cannot exceed 64 characters and cannot be typed. The default name is INTx.
386 386  
387 -Description of external input interrupt
388 -
389 -1. The external input interrupt is triggered by the rising or falling edge of the fixed X point input.
390 -1. Supports the rising and falling edge interrupts of a total of 8 input points of X0 to X7, and supports a total of 16 external input interrupts.
391 -1. The same interrupt trigger condition cannot create multiple interrupt programs.
392 -1. External input interrupt and high-speed counter cannot use the same X point.
393 -1. You must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
394 -
395 -External input interrupt steps.
396 -
397 -Project management→ Program→ Interrupt→ right click to create.
398 -
399 399  (% style="text-align:center" %)
400 400  [[image:1-16.png||class="img-thumbnail"]]
401 401  
402 -1. The interrupt program name requires to match case, and the program name with the same name as the device cannot be used (the device name does not match case),
403 -1. The interrupt program name does not support the input of /%$@&=~~`^<>?:{}[],;!*.~\~\'" characters,
404 -1. The length of the interrupt program name cannot exceed 64 characters and cannot be typed. The default name is INTx.
388 +* Click Configure, and select external interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management):
405 405  
406 -Click Configure, and select external interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management):
407 -
408 408  (% style="text-align:center" %)
409 409  [[image:1-17.png||class="img-thumbnail"]]
410 410  
... ... @@ -424,7 +424,7 @@
424 424  Note: X rising edge interrupt and X falling edge interrupt use the same X filter, so after the filter setting is changed in the X rising edge configuration, the X falling edge will also change. If the filter time is set to 1000, you must ensure that the high level and low level of the input signal are maintained for more than 10 us before the interrupt can be triggered.
425 425  )))|0 to 1700|1
426 426  
427 -1. Write interrupt execution program
409 +* Write interrupt execution program
428 428  
429 429  (% style="text-align:center" %)
430 430  [[image:1-18.png||class="img-thumbnail"]]
... ... @@ -434,19 +434,19 @@
434 434  (% style="text-align:center" %)
435 435  [[image:1652250056160-117.png||height="215" width="500" class="img-thumbnail"]]
436 436  
437 -**~ 2.Timer interrupt**
419 +**Timer interrupt**
438 438  
439 -1. Timer interrupt description
421 +Timer interrupt description
440 440  
441 -1. Timer interrupt is based on the set time, execute the interrupt program every this time, the minimum time interval can reach 100us.
442 -1. Up to 100 timer interrupt execution programs can be created.
443 -1. Each timer interrupt program is independent of each other and does not affect each other.
444 -1. Each timer interrupt program should be configured with priority. When triggered at the same time, it is executed in the order of priority, but when the priority is the same, it is executed in the order of the established program.
445 -1. The interrupt execution program is executed only after EI is used in the scanner to allow the interrupt
423 +* Timer interrupt is based on the set time, execute the interrupt program every this time, the minimum time interval can reach 100us.
424 +* Up to 100 timer interrupt execution programs can be created.
425 +* Each timer interrupt program is independent of each other and does not affect each other.
426 +* Each timer interrupt program should be configured with priority. When triggered at the same time, it is executed in the order of priority, but when the priority is the same, it is executed in the order of the established program.
427 +* The interrupt execution program is executed only after EI is used in the scanner to allow the interrupt
446 446  
447 - 2. Timer interrupt step
429 +Timer interrupt step
448 448  
449 -Project managementðProgramðInterruptðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure and select Timer Interrupt as the execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
431 +* Project managementðProgramðInterruptðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure and select Timer Interrupt as the execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
450 450  
451 451  (% style="text-align:center" %)
452 452  [[image:1-20.png||class="img-thumbnail"]]
... ... @@ -457,34 +457,35 @@
457 457  |(% rowspan="2" %)Timer interrupt|Time|Set the interval time for interrupt triggering|1 to 2147483647 (100us unit)|
458 458  |priority|When multiple interrupts arrive at the same time, the order of priority execution, the smallest value is executed first|0 to 2|0
459 459  
460 -1. Write interrupt execution program
442 +Write interrupt execution program
461 461  
462 462  (% style="text-align:center" %)
463 463  [[image:1-21.png||class="img-thumbnail"]]
464 464  
465 -Double-click the newly created timer interrupt program in the project management to start writing the interrupt execution program. As shown in the figure above, a newly created timer interrupt program is INT0, and the trigger condition is configured to execute the interrupt program every 10ms. If the main program uses EI to enable interrupts, all instruction programs in INT0 will be executed every 10ms, namely D0 It will add 1 to 10ms.
447 +* Double-click the newly created timer interrupt program in the project management to start writing the interrupt execution program. As shown in the figure above, a newly created timer interrupt program is INT0, and the trigger condition is configured to execute the interrupt program every 10ms. If the main program uses EI to enable interrupts, all instruction programs in INT0 will be executed every 10ms, namely D0 It will add 1 to 10ms.
466 466  
467 467  (% style="text-align:center" %)
468 468  [[image:1652250294005-455.png||class="img-thumbnail"]]
469 469  
470 -**~ 3. High-speed counter interrupt**
452 +**High-speed counter interrupt**
471 471  
472 -1. Description of high-speed counter interrupt
454 +Description of high-speed counter interrupt
473 473  
474 -1. The high-speed counter interrupt triggers an interrupt condition after the set value of the high-speed counter HSC0 to HSC7 provided by the PLC and executes the interrupt program.
475 -1. It can support up to 100 high-speed counter interrupt programs, but the number that can be supported by each channel does not need to be fixed.
476 -1. When using the high-speed counter interrupt, project must configure the high-speed counter and use the OUT HSC instruction to enable the corresponding counting channel to count before it can be used (see the high-speed counter description section for the specific configuration method).
477 -1. Each high-speed counter interrupt program should be configured with priority. When triggered at the same time, it will be executed in the order of priority. When the priority is the same, it will be executed in the order of channels HSC0-HSC7. When the channel is also the same, it is executed in order according to the creation promise.
478 -1. Project must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
456 +* The high-speed counter interrupt triggers an interrupt condition after the set value of the high-speed counter HSC0 to HSC7 provided by the PLC and executes the interrupt program.
457 +* It can support up to 100 high-speed counter interrupt programs, but the number that can be supported by each channel does not need to be fixed.
458 +* When using the high-speed counter interrupt, project must configure the high-speed counter and use the OUT HSC instruction to enable the corresponding counting channel to count before it can be used (see the high-speed counter description section for the specific configuration method).
459 +* Each high-speed counter interrupt program should be configured with priority. When triggered at the same time, it will be executed in the order of priority. When the priority is the same, it will be executed in the order of channels HSC0-HSC7. When the channel is also the same, it is executed in order according to the creation promise.
460 +* Project must use EI in the scan program to allow interrupts before the interrupt execution program will be executed.
479 479  
480 -**✎Note: **Both the HSC channel and the external input interrupt channel must use the PLC input point X. It should be noted that it
462 +(% class="box infomessage" %)
463 +(((
464 +**✎Note: **Both the HSC channel and the external input interrupt channel must use the PLC input point X. It should be noted that it cannot be reused during configuration. For details, please refer to the configuration chapter of the high-speed counter.
465 +)))
481 481  
482 -cannot be reused during configuration. For details, please refer to the configuration chapter of the high-speed counter.
467 +High-speed counter interrupt steps
483 483  
484 -1. high-speed counter interrupt step
469 +* “Project management”ð“Programð“Interrupt”ðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure, select high-speed interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
485 485  
486 -“Project management”ð“Programð“Interrupt”ðRight click to create. Enter the program name. The program name only supports the combination of English letters, numbers, and underscores, and must start with an English letter. The default is INTx. Click Configure, select high-speed interrupt for execution type, as shown in the figure below (it can also be configured in "program parameters" in "parameters" in project management).
487 -
488 488  (% style="text-align:center" %)
489 489  [[image:1-23.png||class="img-thumbnail"]]
490 490  
... ... @@ -517,56 +517,57 @@
517 517  |Priority|When multiple interrupts arrive at the same time, the order of priority execution, the smallest value is executed first|0 to 2|0
518 518  |Contact|It is available when selecting high-speed comparison set and high-speed comparison reset. The contact is set or reset immediately after the trigger condition is reached.|Y/M/D.b|
519 519  
520 - 3. Description of triggering rules
503 + Description of triggering rules
521 521  
522 522  (% class="table-bordered" %)
523 -|**Mode**|**Configuration**|**The current value**|**Action**
524 -|(% rowspan="2" %)High-speed compare interrupt (INT0)|(% rowspan="2" %)Comparison value: 10000|9999 → 10000|Execute all programs in interrupt INT0
525 -|10001 → 10000|Execute all programs in interrupt INT0
526 -|(% rowspan="2" %)High-speed comparison set (INT1)|(% rowspan="2" %)(((
506 +|(% style="width:135px" %)**Mode**|(% style="width:187px" %)**Configuration**|(% style="width:128px" %)**The current value**|(% style="width:324px" %)**Action**
507 +|(% rowspan="2" style="width:135px" %)High-speed compare interrupt (INT0)|(% rowspan="2" style="width:187px" %)Comparison value: 10000|(% style="width:128px" %)9999 → 10000|(% style="width:324px" %)Execute all programs in interrupt INT0
508 +|(% style="width:128px" %)10001 → 10000|(% style="width:324px" %)Execute all programs in interrupt INT0
509 +|(% rowspan="2" style="width:135px" %)High-speed comparison set (INT1)|(% rowspan="2" style="width:187px" %)(((
527 527  Comparison value: -50,000
528 528  
529 529  Contact: Y10
530 -)))|-50001 → -50000|(((
513 +)))|(% style="width:128px" %)-50001 → -50000|(% style="width:324px" %)(((
531 531  Y10 is immediately set and mapped to the actual output (not affected by the scan period)
532 532  
533 533  The program in INT1 will not be executed
534 534  )))
535 -|-49999 → -50000|(((
518 +|(% style="width:128px" %)-49999 → -50000|(% style="width:324px" %)(((
536 536  Y10 is immediately set and mapped to the actual output (not affected by the scan period)
537 537  
538 538  The program in INT1 will not be executed
539 539  )))
540 -|(% rowspan="2" %)High-speed comparison reset (INT2)|(% rowspan="2" %)(((
523 +|(% rowspan="2" style="width:135px" %)High-speed comparison reset (INT2)|(% rowspan="2" style="width:187px" %)(((
541 541  Comparison value: 400000
542 542  
543 543  Contact: Y10
544 -)))|399999 → 400000|(((
527 +)))|(% style="width:128px" %)399999 → 400000|(% style="width:324px" %)(((
545 545  Y10 is reset immediately and mapped to the actual output (not affected by the scan period)
546 546  
547 547  The program in INT2 will not be executed
548 548  )))
549 -|400001 → 400000|(((
532 +|(% style="width:128px" %)400001 → 400000|(% style="width:324px" %)(((
550 550  Y10 is reset immediately and mapped to the actual output (not affected by the scan period)
551 551  
552 552  The program in INT2 will not be executed
553 553  )))
554 554  
538 +(% class="box infomessage" %)
539 +(((
555 555  **✎Note: **Both HSC channel and external input interrupt channel need to use the INPUT point X, so it should be noted that it cannot be reused in configuration. For details, please refer to the configuration section of high-speed counter.
541 +)))
556 556  
557 -1. Write interrupt execution program
543 +Write interrupt execution program
558 558  
559 559  * New interrupt program
546 +** Create three new interrupt programs under the interrupt of project management, namely HSC0_20000, HSC0_30000, HSC0_40000. Configure the interrupt program in the "program parameters", as shown in the figure below.
560 560  
561 -Create three new interrupt programs under the interrupt of project management, namely HSC0_20000, HSC0_30000, HSC0_40000. Configure the interrupt program in the "program parameters", as shown in the figure below.
562 -
563 563  (% style="text-align:center" %)
564 564  [[image:1-24.png||class="img-thumbnail"]]
565 565  
566 566  * High-speed counter configuration
552 +** Configure HSC0 for use in the high-speed counter configuration. After selecting the working mode, click the "Check” button. After the correct configuration box pops up, click Enter.
567 567  
568 -Configure HSC0 for use in the high-speed counter configuration. After selecting the working mode, click the "Check” button. After the correct configuration box pops up, click Enter.
569 -
570 570  (% style="text-align:center" %)
571 571  [[image:1-25.png||class="img-thumbnail"]]
572 572  
... ... @@ -576,131 +576,123 @@
576 576  
577 577  Program operation:
578 578  
579 -Assuming that the High-speed counter channel 0 has been receiving pulses:
563 +* Assuming that the High-speed counter channel 0 has been receiving pulses:
564 +** When the count value of HSC0 accumulates from 0 to 20000, all procedures of HSC0_20000 are executed.
565 +** When the count value of HSC0 is accumulated from 20000 to 30000, all procedures of HSC0_30000 are executed.
566 +** When the count value of HSC0 is accumulated from 30000 to 40000, all procedures of HSC0_40000 are executed.
580 580  
581 -When the count value of HSC0 accumulates from 0 to 20000, all procedures of HSC0_20000 are executed.
582 -
583 -When the count value of HSC0 is accumulated from 20000 to 30000, all procedures of HSC0_30000 are executed.
584 -
585 -When the count value of HSC0 is accumulated from 30000 to 40000, all procedures of HSC0_40000 are executed.
586 -
587 587  **Mask interrupt**
588 588  
589 -**~ 1. Mask through application instructions**
570 +Mask through application instructions
590 590  
591 -The PLC interrupt is in the shielded state by default when it is powered on, and can only be used after the interrupt is allowed through the EI instruction.
572 +* The PLC interrupt is in the shielded state by default when it is powered on, and can only be used after the interrupt is allowed through the EI instruction.
573 +* The interrupt mask instruction DI masks all interrupts without parameters, and masks some priority interrupts with parameters (refer to the program flow instruction DI/EI for details).
592 592  
593 -The interrupt mask instruction DI masks all interrupts without parameters, and masks some priority interrupts with parameters (refer to the program flow instruction DI/EI for details).
575 +Mask through special registers SM and SD
594 594  
595 -**~ 2. Mask through special registers SM and SD**
596 -
597 -1.External input interrupt mask register
598 -
599 599  (% class="table-bordered" %)
600 -|(% colspan="4" %)**External input interrupt mask register**
601 -|**Special register number**|**Type of interrupt**|**Instruction**|**Defaults**
602 -|SM352|X0 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
603 -|SM353|X0 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
604 -|SM354|X1 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
605 -|SM355|X1 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
606 -|SM356|X2 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
607 -|SM357|X2 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
608 -|SM358|X3 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
609 -|SM359|X3 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
610 -|SM360|X4 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
611 -|SM361|X4 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
612 -|SM362|X5 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
613 -|SM363|X5 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
614 -|SM364|X6 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
615 -|SM365|X6 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
616 -|SM366|X7 rising edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
617 -|SM367|X7 falling edge interrupt|ON: Mask interrupt OFF: Enable interrupt|OFF
578 +|=(% colspan="4" %)**External input interrupt mask register**
579 +|=(% style="width: 266px;" %)**Special register number**|=(% style="width: 308px;" %)**Type of interrupt**|=(% style="width: 390px;" %)**Instruction**|=**Defaults**
580 +|(% style="width:266px" %)SM352|(% style="width:308px" %)X0 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
581 +|(% style="width:266px" %)SM353|(% style="width:308px" %)X0 falling edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
582 +|(% style="width:266px" %)SM354|(% style="width:308px" %)X1 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
583 +|(% style="width:266px" %)SM355|(% style="width:308px" %)X1 falling edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
584 +|(% style="width:266px" %)SM356|(% style="width:308px" %)X2 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
585 +|(% style="width:266px" %)SM357|(% style="width:308px" %)X2 falling edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
586 +|(% style="width:266px" %)SM358|(% style="width:308px" %)X3 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
587 +|(% style="width:266px" %)SM359|(% style="width:308px" %)X3 falling edge interrupt|(% style="width:390px" %)ON: Shield interrupts; OFF: interrupt allowed|OFF
588 +|(% style="width:266px" %)SM360|(% style="width:308px" %)X4 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
589 +|(% style="width:266px" %)SM361|(% style="width:308px" %)X4 falling edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
590 +|(% style="width:266px" %)SM362|(% style="width:308px" %)X5 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
591 +|(% style="width:266px" %)SM363|(% style="width:308px" %)X5 falling edge interrupt|(% style="width:390px" %)ON: Shield interrupts; OFF: interrupt allowed|OFF
592 +|(% style="width:266px" %)SM364|(% style="width:308px" %)X6 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
593 +|(% style="width:266px" %)SM365|(% style="width:308px" %)X6 falling edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
594 +|(% style="width:266px" %)SM366|(% style="width:308px" %)X7 rising edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
595 +|(% style="width:266px" %)SM367|(% style="width:308px" %)X7 falling edge interrupt|(% style="width:390px" %)ON: shield interrupts; OFF: interrupt allowed|OFF
618 618  
619 -2. Timer interrupt mask register
620 -
621 621  (% class="table-bordered" %)
622 -|(% colspan="4" %)**Timer interrupt mask register**
623 -|**Special register number**|**Type of interrupt**|**Instruction**|**Default**
624 -|SD350|1st to 16th timer interrupt|(((
598 +|=(% colspan="4" %)**Timer interrupt mask register**
599 +|=**Special register number**|=(% style="width: 311px;" %)**Type of interrupt**|=(% style="width: 391px;" %)**Instruction**|=(% style="width: 110px;" %)**Default**
600 +|SD350|(% style="width:311px" %)1st to 16th timer interrupt|(% style="width:391px" %)(((
625 625  Each bit can control the mask of an interrupt.
626 626  
627 -ON: Mask interrupt OFF: Enable interrupt
628 -)))|0
629 -|SD351|17th to 32th timer interrupt|(((
603 +ON: shield interrupts; OFF: interrupt allowed
604 +)))|(% style="width:110px" %)0
605 +|SD351|(% style="width:311px" %)17th to 32th timer interrupt|(% style="width:391px" %)(((
630 630  Each bit can control the mask of an interrupt.
631 631  
632 -ON: Mask interrupt OFF: Enable interrupt
633 -)))|0
634 -|SD352|33th to 48th timer interrupt|(((
608 +ON: shield interrupts; OFF: interrupt allowed
609 +)))|(% style="width:110px" %)0
610 +|SD352|(% style="width:311px" %)33th to 48th timer interrupt|(% style="width:391px" %)(((
635 635  Each bit can control the mask of an interrupt.
636 636  
637 -ON: Mask interrupt OFF: Enable interrupt
638 -)))|0
639 -|SD353|49th to 64th timer interrupt|(((
613 +ON: shield interrupts; OFF: interrupt allowed
614 +)))|(% style="width:110px" %)0
615 +|SD353|(% style="width:311px" %)49th to 64th timer interrupt|(% style="width:391px" %)(((
640 640  Each bit can control the mask of an interrupt.
641 641  
642 -ON: Mask interrupt OFF: Enable interrupt
643 -)))|0
644 -|SD354|65th to 80th timer interrupt|(((
618 +ON: shield interrupts; OFF: interrupt allowed
619 +)))|(% style="width:110px" %)0
620 +|SD354|(% style="width:311px" %)65th to 80th timer interrupt|(% style="width:391px" %)(((
645 645  Each bit can control the mask of an interrupt.
646 646  
647 -ON: Mask interrupt OFF: Enable interrupt
648 -)))|0
649 -|SD355|81st to 96th timer interrupt|(((
623 +ON: shield interrupts; OFF: interrupt allowed
624 +)))|(% style="width:110px" %)0
625 +|SD355|(% style="width:311px" %)81st to 96th timer interrupt|(% style="width:391px" %)(((
650 650  Each bit can control the mask of an interrupt.
651 651  
652 -ON: Mask interrupt OFF: Enable interrupt
653 -)))|0
654 -|SD356|97th to 100th timer interrupt|(((
628 +ON: shield interrupts; OFF: interrupt allowed
629 +)))|(% style="width:110px" %)0
630 +|SD356|(% style="width:311px" %)97th to 100th timer interrupt|(% style="width:391px" %)(((
655 655  Each bit can control the mask of an interrupt.
656 656  
657 -ON: Mask interrupt OFF: Enable interrupt
658 -)))|0
633 +ON: shield interrupts; OFF: interrupt allowed
634 +)))|(% style="width:110px" %)0
659 659  
660 660  1. high-speed counter interrupt mask register
661 661  
662 662  (% class="table-bordered" %)
663 -|(% colspan="4" %)**High-speed counter interrupt mask register**
664 -|**Special register number**|**Type of interrupt**|**Instruction**|**Default**
665 -|SD382|1st to 16th high-speed counter interrupt|(((
639 +|=(% colspan="4" %)**High-speed counter interrupt mask register**
640 +|=(% style="width: 230px;" %)**Special register number**|=(% style="width: 348px;" %)**Type of interrupt**|=(% style="width: 387px;" %)**Instruction**|=(% style="width: 110px;" %)**Default**
641 +|(% style="width:230px" %)SD382|(% style="width:348px" %)1st to 16th high-speed counter interrupt|(% style="width:387px" %)(((
666 666  Each bit can control the mask of an interrupt.
667 667  
668 -ON: Mask interrupt OFF: Enable interrupt
669 -)))|0
670 -|SD383|17th to 32nd high-speed counter interrupt|(((
644 +ON: shield interrupts; OFF: interrupt allowed
645 +)))|(% style="width:110px" %)0
646 +|(% style="width:230px" %)SD383|(% style="width:348px" %)17th to 32nd high-speed counter interrupt|(% style="width:387px" %)(((
671 671  Each bit can control the mask of an interrupt.
672 672  
673 -ON: Mask interrupt OFF: Enable interrupt
674 -)))|0
675 -|SD384|33th to 48th high-speed counter interrupt|(((
649 +ON: shield interrupts; OFF: interrupt allowed
650 +)))|(% style="width:110px" %)0
651 +|(% style="width:230px" %)SD384|(% style="width:348px" %)33th to 48th high-speed counter interrupt|(% style="width:387px" %)(((
676 676  Each bit can control the mask of an interrupt.
677 677  
678 -ON: Mask interrupt OFF: Enable interrupt
679 -)))|0
680 -|SD385|49th to 64th high-speed counter interrupt|(((
654 +ON: shield interrupts; OFF: interrupt allowed
655 +)))|(% style="width:110px" %)0
656 +|(% style="width:230px" %)SD385|(% style="width:348px" %)49th to 64th high-speed counter interrupt|(% style="width:387px" %)(((
681 681  Each bit can control the mask of an interrupt.
682 682  
683 -ON: Mask interrupt OFF: Enable interrupt
684 -)))|0
685 -|SD386|65th to 80th high-speed counter interrupt|(((
659 +ON: shield interrupts; OFF: interrupt allowed
660 +)))|(% style="width:110px" %)0
661 +|(% style="width:230px" %)SD386|(% style="width:348px" %)65th to 80th high-speed counter interrupt|(% style="width:387px" %)(((
686 686  Each bit can control the mask of an interrupt.
687 687  
688 -ON: Mask interrupt OFF: Enable interrupt
689 -)))|0
690 -|SD387|81st to 96th high-speed counter interrupt|(((
664 +ON: shield interrupts; OFF: interrupt allowed
665 +)))|(% style="width:110px" %)0
666 +|(% style="width:230px" %)SD387|(% style="width:348px" %)81st to 96th high-speed counter interrupt|(% style="width:387px" %)(((
691 691  Each bit can control the mask of an interrupt.
692 692  
693 -ON: Mask interrupt OFF: Enable interrupt
694 -)))|0
695 -|SD388|97th to 100th high-speed counter interrupt|(((
669 +ON: shield interrupts; OFF: interrupt allowed
670 +)))|(% style="width:110px" %)0
671 +|(% style="width:230px" %)SD388|(% style="width:348px" %)97th to 100th high-speed counter interrupt|(% style="width:387px" %)(((
696 696  Each bit can control the mask of an interrupt.
697 697  
698 -ON: Mask interrupt OFF: Enable interrupt
699 -)))|0
674 +ON: shield interrupts; OFF: interrupt allowed
675 +)))|(% style="width:110px" %)0
700 700  
701 701  == Subroutine ==
702 702  
703 -During the execution of the scan program, the executed program can be called by the CALL instruction.
679 +During the execution of the scan program, the executed program can be called by the CALL instruction. You can create up to 100 new subprograms.
704 704  
705 705  A subroutine is to split a certain module in the main program for the main program to call, which is conducive to the modularization of the program. Such as other high-level language functions, but this function has no parameters and no return value.
706 706  
... ... @@ -707,7 +707,7 @@
707 707  (% style="text-align:center" %)
708 708  [[image:1652250926997-587.png||class="img-thumbnail"]]
709 709  
710 -1. Instructions for calling subroutines
686 +**Instructions for calling subroutines**
711 711  
712 712  After a new subroutine is created, the content of the program is not executed. It is executed only when the CALL(P) instruction is used to call the subroutine in the scan, event, and interrupt programs, and the call is executed once. Three new subroutines SUB0, SUB1, SUB2 are created as shown in the figure below. In the main program MAIN, the subprogram can be called by using the CALL(P) subprogram program name.
713 713  
... ... @@ -716,87 +716,87 @@
716 716  (% style="text-align:center" %)
717 717  [[image:1-28.png||class="img-thumbnail"]]
718 718  
719 -**~ 1.✎Note:**
695 +(% class="box infomessage" %)
696 +(((
697 +**✎Note:**
720 720  
721 721  1. When using the timer (OUT T), note that the output will not be reset when the subroutine is not called, and a specific subroutine register must be used.
722 722  1. It is not allowed to call recursively between subprograms, that is, call SUB1 in SUB0, and then call SUB0 in SUB1. This is not allowed.
723 723  1. The subroutine can be nested up to 32 levels. If the level exceeds 32 levels, a serious error will be reported and the Circuit program operation will be forcibly stopped.
724 724  1. Unlike the LX3V series mainframe, the subroutine in the LX5V series mainframe ends with the END instruction instead of SRET.
703 +)))
725 725  
726 726  == Positioning instructions ==
727 727  
728 - ~1. Event
707 +(% class="wikigeneratedid" %)
708 +**Event**
729 729  
730 - 1.ON event
710 +(% class="wikigeneratedid" %)
711 +ON event
731 731  
732 -If the high-speed pulse instruction is turned on during the ON event, the high-speed pulse instruction will be sent as normal. If the ON contact of the trigger event in the scan period is turned OFF during the pulse sending, select whether to continue sending the pulse or stop the pulse according to the unscanned processing flag bit.
713 +* If the high-speed pulse instruction is turned on during the ON event, the high-speed pulse instruction will be sent as normal. If the ON contact of the trigger event in the scan period is turned OFF during the pulse sending, select whether to continue sending the pulse or stop the pulse according to the unscanned processing flag bit.
733 733  
734 734  (% class="table-bordered" %)
735 -|**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
736 -|**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
716 +|=(% scope="row" %)**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
717 +|=**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
737 737  
738 -When the flag bit is 0 (continue to send pulse), if the instruction is not scanned in the current scan cycle, continue to send pulses until it stops. At this time, it should be noted that if the trigger event OFF contact turns ON after the pulse is sent, the pulse will be sent again.
719 +* When the flag bit is 0 (continue to send pulse), if the instruction is not scanned in the current scan cycle, continue to send pulses until it stops. At this time, it should be noted that if the trigger event OFF contact turns ON after the pulse is sent, the pulse will be sent again.
720 +* When the flag bit is 1 (stop sending pulses), if the trigger event ON contact turns OFF in a certain scan period, it will decelerate and stop.
739 739  
740 -When the flag bit is 1 (stop sending pulses), if the trigger event ON contact turns OFF in a certain scan period, it will decelerate and stop.
722 + TIME event
741 741  
742 - 2. TIME event
724 +* If the high-speed pulse instruction is turned on in the TIME event, the high-speed pulse instruction will be sent as normal. If the instruction is not scanned in a certain scan period during the pulse transmission, select whether to continue sending the pulse or stop the pulse according to the unscanned processing flag bit.
743 743  
744 -If the high-speed pulse instruction is turned on in the TIME event, the high-speed pulse instruction will be sent as normal. If the instruction is not scanned in a certain scan period during the pulse transmission, select whether to continue sending the pulse or stop the pulse according to the unscanned processing flag bit.
745 -
746 746  (% class="table-bordered" %)
747 -|**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
748 -|**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
727 +|=(% scope="row" %)**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
728 +|=**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
749 749  
750 -When the flag bit is 0 (continue to send pulse), if the instruction is not scanned in the current scan cycle, the pulse will continue to be sent until it stops. In the TIME event, it is impossible to ensure that the instruction is scanned in every scan cycle, so you should avoid using high-speed pulse instructions in the TIME time, otherwise the pulse will be sent again after the pulse is sent.
730 +* When the flag bit is 0 (continue to send pulse), if the instruction is not scanned in the current scan cycle, the pulse will continue to be sent until it stops. In the TIME event, it is impossible to ensure that the instruction is scanned in every scan cycle, so you should avoid using high-speed pulse instructions in the TIME time, otherwise the pulse will be sent again after the pulse is sent.
731 +* When the flag bit is 1 (stop sending pulses), if the instruction is not scanned in the current scan cycle, it will decelerate and stop. In the TIME event, if the flag bit is set to 1 (stop sending pulses), there will be no pulse sending.
751 751  
752 -When the flag bit is 1 (stop sending pulses), if the instruction is not scanned in the current scan cycle, it will decelerate and stop. In the TIME event, if the flag bit is set to 1 (stop sending pulses), there will be no pulse sending.
733 +**Subroutine**
753 753  
754 - 2. Subroutine
755 -
756 756  If the high-speed pulse instruction is turned on in the subroutine, the high-speed pulse instruction will be sent as normal. If the scanning period is closed during pulse sending, select whether to continue sending or stop the pulse according to the unscanned processing flag.
757 757  
758 758  (% class="table-bordered" %)
759 -|**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
760 -|**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
738 +|=(% scope="row" %)**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
739 +|=**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
761 761  
762 762  When the flag bit is 0 (continue to send pulse), if the instruction is not scanned in the current scan cycle, the pulse will continue to be sent until it stops. At this time, it should be noted that if the subroutine is called again after the pulse is sent, the pulse will be sent again.
763 763  
764 764  When the flag bit is 1 (stop sending pulses), if the subroutine is closed during high-speed pulse sending, the speed will decelerate and stop. If the subroutine is closed before sending the pulse, then no pulse is sent.
765 765  
766 - 3. Interrupt
745 +**Interrupt**
767 767  
768 -1. External interrupt
747 +External interrupt
769 769  
770 -If the high-speed pulse instruction is enabled in the external interrupt, the high-speed pulse instruction selects whether the pulse continues to be sent or the pulse stops according to the unscanned processing flag bit.
749 +* If the high-speed pulse instruction is enabled in the external interrupt, the high-speed pulse instruction selects whether the pulse continues to be sent or the pulse stops according to the unscanned processing flag bit.
771 771  
772 772  (% class="table-bordered" %)
773 -|**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
774 -|**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
752 +|=(% scope="row" %)**Output shaft**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
753 +|=**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
775 775  
776 -When the flag bit is 0 (continue to send pulse), continue to send high-speed pulses until it stops.
755 +* When the flag bit is 0 (continue to send pulse), continue to send high-speed pulses until it stops.
756 +* When the flag bit is 1 (stop sending pulse), the high-speed pulse decelerates and stops.
777 777  
778 -When the flag bit is 1 (stop sending pulse), the high-speed pulse decelerates and stops.
758 +Timer interrupt
779 779  
780 - 2. Timer interrupt
760 +* If the high-speed pulse instruction is turned on in the timer interruption, the high-speed pulse instruction is sent as normal. If the instruction is not scanned in a certain scan period in the pulse transmission, the pulse continues to be sent or the pulse stops is selected according to the unscanned processing flag.
781 781  
782 -If the high-speed pulse instruction is turned on in the timer interruption, the high-speed pulse instruction is sent as normal. If the instruction is not scanned in a certain scan period in the pulse transmission, the pulse continues to be sent or the pulse stops is selected according to the unscanned processing flag.
783 -
784 784  (% class="table-bordered" %)
785 -|**Output axis**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
786 -|**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
763 +|=(% scope="row" %)**Output axis**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
764 +|=**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
787 787  
788 -When the flag bit is 0 (continue to send pulse), if the instruction is not scanned in the current scan cycle, continue to send pulses until it stops. In the timer interrupt, it is impossible to ensure that the instruction is scanned in every scan cycle, so it is necessary to avoid using high-speed pulse instructions in the T timer interrupt. Otherwise, after the pulse transmission is completed, the pulse will be sent again.
766 +* When the flag bit is 0 (continue to send pulse), if the instruction is not scanned in the current scan cycle, continue to send pulses until it stops. In the timer interrupt, it is impossible to ensure that the instruction is scanned in every scan cycle, so it is necessary to avoid using high-speed pulse instructions in the T timer interrupt. Otherwise, after the pulse transmission is completed, the pulse will be sent again.
767 +* When the flag bit is 1 (stop sending pulses), if the instruction is not scanned in the current scan cycle, it will decelerate and stop. In the TIME event, if the flag bit is set to 1 (stop sending pulses), there will be no pulse sending.
789 789  
790 -When the flag bit is 1 (stop sending pulses), if the instruction is not scanned in the current scan cycle, it will decelerate and stop. In the TIME event, if the flag bit is set to 1 (stop sending pulses), there will be no pulse sending.
769 +High-speed comparison interrupt
791 791  
792 - 3.High-speed comparison interrupt
771 +* If the high-speed pulse instruction is enabled in the high-speed comparison interrupt, the high-speed pulse instruction selects whether the pulse continues to be sent or the pulse stops according to the unscanned processing flag.
793 793  
794 -If the high-speed pulse instruction is enabled in the high-speed comparison interrupt, the high-speed pulse instruction selects whether the pulse continues to be sent or the pulse stops according to the unscanned processing flag.
795 -
796 796  (% class="table-bordered" %)
797 -|**Output axis**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
798 -|**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
774 +|=(% scope="row" %)**Output axis**|Y0|Y1|Y2|Y3|Y4|Y5|Y6|Y7
775 +|=**Not scanned flag bit**|SM899|SM959|SM1019|SM1079|SM1139|SM1199|SM1259|SM1319
799 799  
800 -When the flag bit is 0 (continue to send pulse), continue to send high-speed pulses until it stops.
801 -
802 -When the flag bit is 1 (stop sending pulse), the high-speed pulse decelerates and stops.
777 +* When the flag bit is 0 (continue to send pulse), continue to send high-speed pulses until it stops.
778 +* When the flag bit is 1 (stop sending pulse), the high-speed pulse decelerates and stops.