-
debug.txt
Здравствуйте, многоуважаемые!
Расскажите, пожалуйста, что значат разные записи в debug.txt. По форуму поискал - ничего конкретного не нашел, никаких ссылок на мануал не попалось... В основном разработчики по конкретным файлам рассказывают, что происходило. Разве нет какого-нибудь мануала?
У меня проблема такая: сегодня чего-то разрабатываемая программа перестала работать как надо. Ясен пень, где-то ошибка. Надо искать, а искать не получается - контроллер перезагружается.
Происходит это так: заливаю программу, жду несколько секунд, дожидаюсь траурного "пи-ик!", повторяю сначала. Т.е. программа не запущена, а контроллер перезагружается и пишет
Код:
2009.12. 9 13:58:20 # 17 E PLC was reset by watchdog!
2009.12. 9 13:58:20 # 3 M Last run module Id =201
2009.12. 9 13:58:20 # 3 M Last post module Id =2100
2009.12. 9 13:58:20 # 3 M Total control code =18
2009.12. 9 13:58:20 # 3 M Max cache utilisation =8
2009.12. 9 13:58:20 # 3 M local_status =2
2009.12. 9 13:58:20 # 3 M run_level =2
2009.12. 9 13:58:20 # 3 M ff 45 ff ff ff ff 0 0 0 0 0 0 0 0 0 0
Ведь явно же хочет мне что-то сказать! Но я по-евойному не понимаю.. :(
Мне просто непонятно, почему срабатывает вочдог, ведь программа не запускалась?
Для проверки залил проверил отлаженную программу - вроде все нормально работает...
Итак, прошу дать ссылку на мануал, где объясняется, что значат записи в debug.txt
П.С. в текущей программе несколько задач, что до сих пор само по себе проблем не приносило. А сейчас никак не могу поймать ошибку: все задачи шунтирую RETURN'ом в начале кода, все поотключал, брекпойнты в первых строках выставляю... А он просто перезагружается...
module id 2100 - Universal DCON device
-
этот файл предназначен для разработчиков, чтобы найти ошибку.
если у вас есть проблемы - опишите их, выложите программу, версии прошивок/таргетов, логи и пр. и мы постараемся вам помочь.
-
Вложений: 1
Проблема вполне конкретная - не могу начать сеанс отладки. Подключается нормально, заливается нормально, все нормально, но потом - шлёп! - и перезагружается, причем программа не запускалась еще.
Про версии прошивок:
Код:
PLC model MODEL PLC 150
Binary VERSION 2.10.7
Need Target version 2.10
Compiled: 11:31:41 Jul 23 2009
MAC 66:67:00:00:81:B3
IP 161.8.157.162
GATE 161.8.157.1
MASK 255.255.255.0
PIC upper version is 07
Licence unlimited
Current DAC
PIC lower version is 0c
таргеты соответствующие.
Лог прилагаю.
Предполагаю, что где-то ошибка в моей программе, но никак не могу начать отлаживать, перезагружается. Не получается отловить, хотя уже все "подозрительные" программы зашунтировал (RETURN в первой строчке). Я рассчитывал найти в логе хотя бы указание, что конкретно отваливается, какая конкретно задача или программа. Это возможно?
-
опишите их, выложите программу, версии прошивок/таргетов, логи и пр. и мы постараемся вам помочь.
-
Вложений: 2
Версии выложил выше. Лог прикрепил туда же. Если речь про log.txt - приложен к этому посту.
-
Спасибо, проблему локализовал - все дело в одном функциональном блоке в главной задаче. Так что помощь больше не нужна. Хотя вопрос остается: почему контроллер перезагружается? Ничего криминального в этом блоке нет (ActualizeTable), хотя почему-то сам факт наличия этого блока в программе (не важно, вызываемой или не вызываемой, запущенной/не запущенной) вызывает немедленную перезагрузку. Блок отлажен несколько дней назад, но почему-то сегодня с утра так странно стал влиять...
-
в этом блоке много обращений по указателям - если будет доступ в запрещенную область памяти или по невыровненным данным - сработает защита. с указателями надо быть очень осторожным.
-
да все это понятно, но ведь до блока даже не доходит...
-
смог решить проблему неожиданным образом: перепрошить на более старую версию, на 2.06.3. пока полет нормальный, перезагрузки прекратились.
та-а-а-ак... поторопился с выводами...
-
Нашел, наконец! Граждане, спасибо за "помощь", пришлось самому выяснять, что проблема была в Universal DCON device. Стоило удалить его из конфигурации, как все начало работать.