특수기능모듈 Setting Data Write : FWRITE
명령 | 사용 가능 영역 | 스텝수 | 플래그 | 사용가능CPU | |||||||||||||||||
M | X | Y | K | L | F | T | C | S | Z | D | @ D | 정수 | 에 러 | 제 로 | 캐 리 | XP | CP | BP | |||
FWRITE | n1 | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | - | ㅇ | ㅇ | ㅇ | ㅇ | 6 | ㅇ | - | - | ㅇ | ㅇ | - |
n2 | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | - | ㅇ | ㅇ | ㅇ | ㅇ | ||||||||
D | ㅇ | - | ㅇ | ㅇ | ㅇ | - | - | - | - | ㅇ | ㅇ | ㅇ | - | ||||||||
n3 | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | - | ㅇ | ㅇ | ㅇ | ㅇ | ||||||||
n4 | ㅇ | - | ㅇ | ㅇ | ㅇ | - | - | - | - | ㅇ | ㅇ | ㅇ | - |
n1 | 현재 장착된 특수기능 Unit의 슬롯 번호 |
n2 | Setting Data가 쓰여질 Setting Data Memory의 선두 번호 |
D | Setting Data Memory에 쓰여질 값을 저장하는 Device 선도 Address |
n3 | 쓰여질 Setting Data의 수(0 ~ 256) |
n4 | Flag. 명령어 처리 결과 저장 |
에러(F110) | 영역이 @D로 간접 지정된 경우 영역 초과가 발생하면 SET |
FWRITE
D로 지정된 영역에 n2로 지정된 번호에서 n3 Word Data를 읽어들여 n3개만큼 n1로 지정된 특수 Unit내 Setting Data Memory 저장합니다.
n1의 지정 – [Base/Slot]
상위 Byte : Base 번호 (00h ~ 10h 또는 FFh) FFh로 지정된 경우에는 ‘파일’을 의미합니다.
하위 Byte : Slot 번호 (00h ~ 0Bh 또는 PID) 상위 Byte가 FFh로 지정(파일)된 경우 파일의 PID를 지정합니다.
h + [Base No.] + [Slot No.]
h : 16진임을 나타내는 Character
Base No. : 16진 2 Character
Slot No. : 16진 2 Character
베이스 번호 | 슬롯 차례 | n1 |
로컬 베이스 | 3번 슬롯 | H0003 |
첫번째 증설베이스(#1) | 2번 슬롯 | H0102 |
열네번째 증설베이스(#13) | 12번 슬롯 | H0C0C |
열여섯번째 증설베이스(#16) | 11번 슬롯 | H100B |
n2의 지정 – [Offset]
대상 메모리 영역에 저장된 읽어 들일 Setting Data의 선두 번호를 지정합니다. 즉, 읽을 데이터가 존재하는 위치를 나타냅니다.
n3의 지정
n2로 지정된 Setting Data의 선두 번호로부터 몇 개가 쓰여질 것인가를 결정합니다.
n3의 범위는 0 ~ 32,767 사이입니다. 이외의 범위일 경우 에러 처리됩니다.
n3가 0일 경우 명령이 실행되지 않습니다.
n4의 지정
이 디바이스는 명령이 실행되는 즉시 ‘1’로 설정 되고, 명령의 처리가 완료되면 그 결과가 이곳에 저장됩니다.
각 bit의 의미는 다음과 같습니다.
Bit 번호 | 의 미 |
0 | 명령 처리중 (1), 명령 처리 완료 (0) |
1 | 명령 처리 에러 |
2 ∼ 7 | 0 (사용안함) |
8 ∼ 15 | [에러 코드] 00h : 에러 없음 01h : 1 Scan 처리 용량 초과 (1 Scan 동시 최대 32개의 File Read/Write 가능) 02h : [Data] 영역 Overflow 03h : [Offset] 지정 이상 |
연산 Error
다음의 경우 연산 Error가 되어 Error Flag가 On합니다.
특수기능 Unit을 Access할 수 없는 경우
n1로 지정한 입출력번호가 특수기능 Unit이 아닌 경우
D로 지정한 Device에서 n3점이 지정 Device범위를 넘는 경우
n3로 지정한 Setting Data 선두 번호가 0~32,767 범위를 넘는 경우
프로그램 예
X0008접점이 On하면 D0020에서 D0039까지의 Data 20Words를 증설 베이스 3단 5슬롯에 장착된 특수모듈 Setting Data Memory의 번호 28에서부터 47번까지 20개의 데이터를 차례대로 입력하고 그 결과를 M0000에 저장하는 프로그램.