Формат программы MCO 305
Формат программы MCO 305
Обычно программа начинается с определения массивов, прерываний и прикладных параметров. Например:
DIM send[12], receive[12] // Массив
ON ERROR GOSUB errhandle // Прерывания
ON INT -1 GOSUB stopprog
ON PERIOD 500 GOSUB calc
ON TIME 10000 GOSUB break
LINKGPAR 1990 "Offset [qc]" 0 100000 0
// Прикладные параметры
Следующий шаг - это инициализация: уставок параметров, флагов и переменных. Например:
SET POSERR 100000000 // Параметры
SET 1990 10000
SETVLT 205 50
offset = 0 // Флаги/переменные
sync_flag = 0
VEL 100 // Системные переменные
ACC 100
DEC 100
Дальше следует основной программный цикл:
main:
…
GOTO main
main:
IF (IN 3 == 1) THEN
/* Войти в режим синхронизации, если вход 3 = 1 */
GOSUB syncprog
ELSE /* Если вход 3 не = 1, то работать в режиме регулирования скорости */
GOSUB speedprog
GOTO main
Определяется область подпрограмм:
SUBMAINPROG
SUBPROG name
…
RETURN
ENDPROG
SUBMAINPROG:
SUBPROG syncprog
IF (sync_flag == 0) THEN
/* синхронизировать, если ещё не синхронизировано */
SYNCP
sync_flag = 1
ENDIF
RETURN
SUBPROG errhandle
WAITI 18 on
/* ждать срабатывания входа 18, очистить ошибки */
sync_flag = 0
ERRCLR
RETURN
ENDPROG