Arithmetic instructions
483
Part
III F
P
Instructions
15.1 Introduction into the FIFO buffer
The FIFO buffer is a first-in-first-out buffer area realized as a ring buffer. Data is stored in the order in which it is
written to the buffer, and then read out in the order stored, starting from the first data item stored. It is
convenient for buffering objects in sequential order.
Usage procedure
The area to be used is defined as the FIFO buffer using the F115_FIFT (see page 483) instruction.
(This should be done only once, before reading or writing is done.)
Data should be written to the buffer using the F117_FIFW (see page 491) instruction, and read out
of the buffer using the F116_FIFR (see page 487) instruction.
Writing data
When data is written, the data items are stored in sequential order, starting from the first data
storage area. The writing pointer indicates the next area to which data is to be written. The number
of words stored increases by 1.
If the data storage area becomes full, i.e. the number of words stored is equal to n-1, further data
writing is inhibited.
Reading data
When data is read, data is transferred starting from the first data item stored. The reading pointer
indicates the next area from which data is to be read. The number of words stored decreases by 1.
An error occurs if an attempt is made to read data when the data storage area is empty, the number
of words stored is equal to the memory size of the FIFO buffer or is equal to zero.
Data storage area
If data is written while the FIFO buffer is in the status shown below, the data will be stored in the area indicated
by 3. The writing pointer moves to 4, i.e. the next data item will be written to 4. If data is read, it will be read from
the area indicated by 0. The reading pointer then moves to 1, i.e. the next data item will be read from 1. (For
more information on the reading and writing pointer, see F115_FIFT (see page 483)).
0
1
2
3
4
100
101
102
5
3
0
3
0
1
2
3
4
100
101
102
5
4
0
4
0
1
2
3
4
100
101
102
5
3
1
4
103
103
Size
Number
Positions
Read 100
Write 103
Содержание FP Series
Страница 27: ...Chapter 1 Basics ...
Страница 60: ...Chapter 2 Data transfer instructions ...
Страница 62: ...Chapter 3 Arithmetic instructions ...
Страница 88: ...Chapter 4 Bitwise Boolean instructions ...
Страница 93: ......
Страница 94: ...Chapter 5 Bit shift instructions ...
Страница 100: ...Bit shift instructions 99 Part II IEC Instructions LD ...
Страница 102: ...Bit shift instructions 101 Part II IEC Instructions LD ...
Страница 103: ......
Страница 104: ...Chapter 6 Comparison instructions ...
Страница 106: ...Comparison instructions 105 Part II IEC Instructions LD ...
Страница 108: ...Comparison instructions 107 Part II IEC Instructions LD ...
Страница 114: ...Chapter 7 Conversion instructions ...
Страница 136: ...Conversion instructions 135 Part II IEC Instructions Body with and without EN ENO ...
Страница 242: ...Conversion instructions 241 Part II IEC Instructions Body ...
Страница 244: ...Conversion instructions 243 Part II IEC Instructions Body ...
Страница 253: ......
Страница 254: ...Chapter 8 Selection instructions ...
Страница 261: ......
Страница 262: ...Chapter 9 String instructions ...
Страница 280: ...String instructions 279 Part II IEC Instructions LD ...
Страница 281: ......
Страница 282: ...Chapter 10 Date and time instructions ...
Страница 306: ...Chapter 11 Bistable instructions ...
Страница 311: ......
Страница 312: ...Chapter 12 Edge detection instructions ...
Страница 315: ......
Страница 316: ...Chapter 13 Counter instructions ...
Страница 324: ...Chapter 14 Timer instructions ...
Страница 341: ......
Страница 342: ...Chapter 15 Arithmetic instructions ...
Страница 360: ...Arithmetic instructions 359 Part III FP Instructions LD ST IF DF start THEN F35_INC increment_value END_IF ...
Страница 362: ...Arithmetic instructions 361 Part III FP Instructions LD ST IF DF start THEN F36_DINC increment_value END_IF ...
Страница 384: ...Arithmetic instructions 383 Part III FP Instructions LD ST IF DF start THEN F37_DEC decrement_value END_IF ...
Страница 431: ...Arithmetic instructions 430 Part III FP Instructions LD ST IF start THEN F87_ABS abs_value END_IF ...
Страница 433: ...Arithmetic instructions 432 Part III FP Instructions ST IF start THEN F88_DABS abs_value END_IF ...
Страница 449: ...Arithmetic instructions 448 Part III FP Instructions LD ST IF DF start THEN F85_NEG negotiate_value END_IF ...
Страница 508: ...Chapter 16 Bistable instructions ...
Страница 512: ...Chapter 17 Bitwise Boolean instructions ...
Страница 555: ......
Страница 556: ...Chapter 18 Bit shift instructions ...
Страница 603: ......
Страница 604: ...Chapter 19 Comparison instructions ...
Страница 622: ...Chapter 20 Conversion instructions ...
Страница 687: ...Conversion instructions 686 Part III FP Instructions LD ...
Страница 702: ...Chapter 21 Counter instructions ...
Страница 711: ......
Страница 712: ...Chapter 22 Data transfer via communication ports ...
Страница 785: ......
Страница 786: ...Chapter 23 Data transfer via network ...
Страница 798: ...Data transfer via network 797 Part III FP Instructions LD ...
Страница 805: ......
Страница 806: ...Chapter 24 Data transfer within the PLC ...
Страница 866: ...Chapter 25 Date and time instructions ...
Страница 877: ......
Страница 878: ...Chapter 26 Selection Instructions ...
Страница 883: ......
Страница 884: ...Chapter 27 Edge detection instructions ...
Страница 890: ...Chapter 28 High speed counter instructions ...
Страница 913: ......
Страница 914: ...Chapter 29 Timer instructions ...
Страница 937: ......
Страница 938: ...Chapter 30 Process control instructions ...
Страница 966: ...Process control instructions 965 Part III FP Instructions ...
Страница 970: ...Chapter 31 FP e display instructions ...
Страница 979: ......
Страница 980: ...Chapter 32 System register instructions ...
Страница 997: ......
Страница 998: ...Chapter 33 Special instructions ...
Страница 1007: ......
Страница 1008: ...Chapter 34 Program execution control instructions ...
Страница 1020: ...Chapter 35 Pulse output instructions ...
Страница 1091: ......
Страница 1092: ...Chapter 36 Analog unit instructions ...
Страница 1133: ......
Страница 1134: ...Chapter 37 GT panel instructions ...
Страница 1138: ...Chapter 38 High speed counter instructions ...
Страница 1164: ...High speed counter instructions 1163 Part IV Tool Instructions ...
Страница 1172: ...Chapter 39 Pulse output instructions ...
Страница 1177: ...Pulse output instructions 1176 Part IV Tool Instructions LD ...
Страница 1180: ...Pulse output instructions 1179 Part IV Tool Instructions LD ...
Страница 1185: ...Pulse output instructions 1184 Part IV Tool Instructions LD ...
Страница 1192: ...Pulse output instructions 1191 Part IV Tool Instructions LD ...
Страница 1195: ...Pulse output instructions 1194 Part IV Tool Instructions LD ...
Страница 1198: ...Pulse output instructions 1197 Part IV Tool Instructions LD ...
Страница 1245: ......
Страница 1246: ...Chapter 40 Appendix Programming Information ...
Страница 1306: ...Appendix Programming Information 1305 ...