
The status of touch-panel is not buffered. The status at calling
this function by the application program is just returned. So,
HEAD, BODY, TAIL are not exactly read as this order according to
timing of calling by the application program. Usually it is not
needed for the application program to distinguish return values,
0x80, 0x81 and 0x82. It is possible to assume that "Touch-panel is
pushed" for all return value 0x80 - 0x82. When the return value of
this function changes 0x00 -> 0x8N (N=0,1,2), assume that "start
pushing". In the same way, "0x8N -> 0x8N" is "keep pushing" and
"0x8N -> 0x00" is "end pushing".
When the touch-panel is pushed, X and Y coordinates of the pushed
points are stored in each "buf.tpl_x_coord" and "buf.tpl_y_coord"
with binary format.
Touch-panel without calibration
The touch-panel is used under calibrated condition usually.
"Calibrated condition" is that the calibration data is set to match
the actual pushed poisition with the detected coordinate. By clearing
the memory of CNC (SRAM), also the calibration data are cleared and
the touch-panel is made no-calibrated condition. The near correct
pushed coordinates are read under no-calibrated condition. This
function returns the different values from the calibrated condition.
Value Status
-------+---------------------------------------------------
0x88 Received HEAD data.
0x89 Received BODY data.
0x8A Received TAIL data.
That is, the bit3 of the return value indicates that the no-calibrated
coordinate data are received.
When "Touch-panel" option doesn't exist in CNC, this function returns
"0".