406
time a frame is received and checking the result against the FCS that is included
in the frame makes it possible to check for data errors in the frame.
FCS
:
01RR0@00142
Text
Node no. Header code
FCS calculation range
Terminator
@ 40 0100 0000
EOR
1 31 0011 0001
EOR
0 30 0011 0000
EOR
R 52 0101 0010
1 31 0011 0001
0100 0010
↓↓Converted to hexadecimal.
4 2 Handled as ASCII characters.
ASCII code
Calculation
result
Example Program for FCS This example shows a BASIC subroutine program for executing an FCS check
on a frame received by the host computer.
400 *FCSCHECK
410 L=LEN(RESPONSE$) ’ Data transmitted and received. . . . . . . . . . .
420 Q=0:FCSCK$=“ ”
430 A$=RIGHT$(RESPONSE$,1)
440 PRINT RESPONSE$,AS,L
450 IF A$=”*” THEN LENGS=LEN(RESPONSE$)-3
ELSE LENGS=LEN(RESPONSE$)-2
460 FCSP$=MID$(RESPONSE$,LENGS+1,2) ’ FCS data received. . . .
470 FOR I=1 TO LENGS ’ Number of characters in FCS. . . . . . . . . . .
480 Q=ASC(MID$(RESPONSE$,I,1)) XOR Q
490 NEXT I
500 FCSD$=HEX$(Q)
510 IF LEN(FCSD$)=1 THEN FCSD$=”0”+FCSD$ ’FCS result
520 IF FCSD$<>FCSP$ THEN FCSCK$=”ERR”
530 PRINT“FCSD$=”;FCSD$,“FCSP$=”;FCSP$,“FCSCK$=”;FCSCK$
540 RETURN
Note 1. Normal reception data includes the FCS, delimiter or terminator, and so on.
When an error occurs in transmission, however the FCS or some other data
may not be included. Be sure to program the system to cover this possibility.
2. In this program example, the CR code (CHR$(13)) is not entered for RE-
SPONSE$. When including the CR code, make the changes in lines 430
and 450.
11-2-2 Commands from the PC
In host link communications, commands are ordinarily sent from the host com-
puter to the PC, but it is also possible for commands to be sent from the PC to the
host computer. In Host Link Mode, any data can be transmitted from the PC to
the host computer. To send a command to the host computer, use the TRANS-
MIT instruction (TXD(--)) in the PC program in Host Link Mode.
TXD(––) outputs data from the specified port (the RS-232C port or the peripher-
al port). Refer to page 299 for details on using TXD(––).
Command and Response Formats Section 11-2