step7-pro
голосование
Чего не хватает сайту
поиска
новых статей
статей о подключении оборудования
примеров решения задач
форума
ничего не нужно
поиск


новости
Появился поиск по сайту. Обещаю его улучшить и сделать более адекватным
--------------11.10.11
Новая гостевая книга надеюсь избавит от спама. Еще немного и появится поис и многое другое
--------------11.07.11
C НАСТУПАЮЩИМ НОВЫМ ГОДОМ И РОЖДЕСТВОМ!
--------------30.12.10
Новые статьи по системным функциям и блокам
--------------25.12.10
Теперь у нас новый дизайн, конечно не супер но надеюсь всем понравиться
--------------05.12.10
Форум закрыт по причине ненадобности
--------------08.09.10
Гостевая книга временно отключена из спама
--------------15.10.10
Наш форум forum.step7-pro.ru общайтесь на здоровье!
--------------03.06.10
Наш сайт в twitter Вы сможете подписаться на рассылку новостей и узнавать о новых статьях на нашем сайте.
--------------20.03.10
После долгого перерыва наш сайт снова начал работать
--------------26.02.10
реклама

 

Оценка ошибок с помощью выходного параметра RET_VAL

Системная функция (SFC), исполняемая в Ваше пользовательской программе показывает, смог ли CPU успешно выполнить функцию SFC. Вы можете получить информацию о любых произошедших ошибках двумя способами:

Примечание
Перед анализом выходных параметров, относящихся к SFC, Вы всегда должны выполнять следующие шаги:
• Сначала проанализируйте бит BR слова состояния.
• Затем проверьте выходной параметр RET_VAL. Если бит BR показывает, что произошла ошибка, или если RET_VAL содержит код общей ошибки, то Вам нельзя использовать выходной параметр SFC!

Информация об ошибках в возвращаемом значении

Системная функция (SFC) через значение "0" бита двоичного результата (BR) слова состояния показывает, что при исполнении функции произошла ошибка. Некоторые системные функции предоставляют в распоряжение дополнительный код ошибки на выходе, известном как возвращаемое значение (RET_VAL). Если в выходной параметр RET_VAL вводится общая ошибка (объяснение см. ниже), то она отображается только посредством значения .0. бита BR слова состояния.

Возвращаемое значение относится к типу данных .целое число. (INT). Отношение возвращаемого значения к значению .0. показывает, появилась ли при исполнении функции ошибка.

CPU исполняет SFC BR Возвращаемое значение Знак целого числа
с ошибкой (ами) 0 меньше, чем "0" отрицательный (знаковый бит равен "1")
без ошибки 1 больше или равно "0" положительный (знаковый бит равен "0")

 

Реакция на информацию об ошибках

Существует два различных типа кодов ошибки в RET_VAL:

Можно написать свою программу таким образом, что она будет реагировать на ошибки, возникающие при исполнении системной функции. Этим Вы препятствуете возникновению последующих ошибок, являющихся результатом первой ошибки.

Общая и специфическая информация об ошибках

Возвращаемое значение (RET_VAL) системной функции предоставляет в распоряжение один из двух следующих типов кодов ошибки:

Хотя тип данных выходного параметра RET_VAL целый (INT), коды ошибок системных функций группируются в соответствии с шестнадцатеричными значениями. Если Вы хотите проанализировать возвращаемое значение и сравнить это значение с кодами ошибок, которые приведены на этом сайте, то отобразите код ошибки в шестнадцатеричном формате.

Следующий рисунок показывает структуру кода ошибки системной функции в шестнадцатеричном формате.

 

Общая информация об ошибках

Общий код ошибки показывает ошибки, которые могут встречаться во всех системных функциях. Общий код ошибки состоит из двух следующих номеров:

 

Примечание
Если в RET_VAL был записан общий код ошибки, то возможны следующие ситуации:
• Возможно, была запущена или уже выполнена операция, относящаяся к SFC.
• Возможно, что при выполнении этой операции произошла специфическая ошибка SFC. Однако в результате общей ошибки, произошедшей позднее, специфическая ошибка не могла больше отображаться

 

Специфическая информация об ошибках

Некоторые системные функции (SFC) обладают возвращаемым значением, которое предоставляет в распоряжение специфический код ошибки. Этот код ошибки показывает, что во время обработки функции появилась ошибка, которая относится к определенной системной функции (см. рисунок). Специфический код ошибки состоит из двух следующих чисел:

Общие коды ошибок

Следующая таблица объясняет общие коды возвращаемого значения. Код ошибки отображается в шестнадцатеричном формате. Буква x в каждом кодовом номере служит только как символ-заполнитель и представляет номер параметра системной функции, вызвавшего ошибку.

Код ошибки (W#16#...) Пояснение
8x7F Внутренняя ошибка
Этот код ошибки указывает на внутреннюю ошибку в параметре x. Эта ошибка была вызвана не пользователем и не может быть им устранена
8x22
8x23
Ошибка длины области при чтении параметра.
Ошибка длины области при записи параметра.
Этот код ошибки показывает, что параметр x полностью или частично находится за пределами диапазона адресов или что длина битового поля для параметра типа ANY не кратна 8.
8x24
8x25
Ошибка области при чтении параметра
Ошибка области при записи параметра.
Этот код ошибки показывает, что параметр x находится в области, которая недопустима для системной функции. За информацией о недопустимых областях обращайтесь к описаниям отдельных функций
8x26 Параметр содержит слишком большой номер таймера.
Этот код ошибки показывает, что таймер, заданный в параметре x, не существует
8x27 Параметр содержит слишком большой номер счетчика (ошибка номерасчетчика).
Этот код ошибки показывает, что счетчик, указанный в параметре x, не существует
8x28
8x29
Ошибка выравнивания при чтении параметра.
Ошибка выравнивания при записи параметра.
Этот код ошибки показывает, что ссылка на параметр x является битовым адресом, не равным 0.
8x30
8x31
Параметр находится в защищенном от записи глобальном DB.
Параметр находится в защищенном от записи экземплярном DB.
Этот код ошибки показывает, что параметр x находится в защищенном от записи блоке данных. Если этот блок данных был открыт самой системной функцией, то системная функция всегда возвращает значение W#16#8x30.
8x32
8x34
8x35
Параметр содержит слишком большой номер DB (ошибка номера DB).
Параметр содержит слишком большой номер FC (ошибка номера FC).
Параметр содержит слишком большой номер FB (ошибка номера FB).
Этот код ошибки показывает, что параметр x содержит номер блока, который больше, чем максимально допустимый номер блока.
8x3A
8x3C
8x3E
Параметр содержит номер незагруженного DB.
Параметр содержит номер незагруженного FC.
Параметр содержит номер незагруженного FB.
8x42
8x43
Имела место ошибка доступа в то время, когда система пыталась считать параметр из периферийной области входов.
Имела место ошибка доступа в то время, когда система пыталась считать параметр из периферийной области выходов.
8x44
8x45
Ошибка при n.ом (n > 1) обращении для чтения после появления ошибки.
Ошибка при n.ом (n > 1) обращении для записи после появления ошибки.
Этот код ошибки показывает, что получен отказ в доступе к требуемому параметру.

 

<-- Предыдущая статья   Следующая статья -->
сделано djoni политика конфидициальности Rambler's Top100