Siemens — 3.2.1. CPU 31xC ASCII

Примеры программ для технологии " Двухточечное соединение " Запуск Программа запуска находится в OB 1 00. При запуске управляющие биты и счетчики сбрасываются . 3.2.1 CPU 31xC ASCII Циклическая программа Циклическая программа для соединения с использованием SEND и RCV для ASCII/3964(R) находится в OB 1 . В примере функциональные блоки SFB 6 1 "RCV_PTP" и SFB 60 "SEND_PTP" работают вместе с функциями FC 2 1 и FC 22, а также с блоками данных DB 2 1 и DB 22 в качестве экземплярных DB и DB 42 и DB 43 в качестве DB приема или передачи . Параметризация функциональных блоков в примере осуществляется частично с помощью констант , а частично с помощью символически адресованных фактических операндов .

Передача данных Передача данных производится от CPU к вашему партнеру по обмену данными . Описание FC 21 (SEND) • Сегмент программы " Генерирование фронта для SEND_REQ": "SEND_PTP" при запуске один раз исполняется с SEND_REQ = FALSE. Затем SEND_REQ устанавливается на TRUE. Если на управляющем параметре SEND_REQ распознается положительный фронт , то запускается задание "SEND_PTP". При установке SEND_DONE = TRUE или SEND_ERROR = TRUE параметр SEND_REQ снова сбрасывается в FALSE. • Сегмент программы " Завершено без ошибок , SEND_DONE = TRUE": При успешной передаче на параметрическом выходе блока "SEND_PTP" параметр SEND_DONE устанавливается в TRUE.

Чтобы различать следующие друг за другом передачи , в слове данных 0 блока - источника DB 42 имеется счетчик передач SEND_COUNTER_OK. • Сегмент программы " Завершено с ошибкой , SEND_ERROR = TRUE": Если блок "SEND_PTP" выполняется с SEND_ERROR = TRUE, то в слове данных 2 счетчик числа ошибок SEND_COUNTER_ERR увеличивается . Кроме того , SEND_STATUS копируется , так как в следующем проходе он заменяется 0 и не мог бы быть больше прочитан . Примеры программ для технологических функций A5E00 1 30042-0 1 3-5