Проблемы с программой в ICP DAS iPAC-8000E |
Ответить |
Автор | |
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Новичок Присоединился: 23 Октябрь 2011 Online Status: Offline Публикации: 5 |
Опубликовано: 07 Февраль 2013 18:43 |
Программа не работает при включении питания iPAC-8000 (режим "Run"). На терминал выводится строчка "[Unknown code]CS:IP=:= SS:SP=: DS= ES", после чего контроллер перезагружается и всё повторяется (цикл примерно секунда). Что может быть?
Факты: 1. Другие программы автостартуют без проблем. 2. Программа нормально запускается вручную (контроллер в режиме "Init") командой "run"/"runr" с терминала и прекрасно работает сутками. 3. Программа автоматически запускается нормально, если контроллер, без выключения питания, переключить в режим "Run" и перегрузить командой "reset" с терминала. 4. На аналогичном контроллере, купленном в другое время, всё точно так же не работает. 5. Пробовали другой блок питания. 6. Пробовали прошивать несколько разных прошивок. Сейчас стоит: "ICP_DAS MiniOS7 for iPAC-8000E(80MHz) Ver. 2.04 build 014,Nov 08 2011 14:29:29 OS id=25". 7. Пробовали несколько разных версий системных библиотек. Сейчас: "8000A.lib version: 2.16, Date: Jun 21 2010" и "tcp2dm32.lib version: 2.01, Date: Sep 01 2010". 8. Пробовали несколько разных компиляторов: Turbo C++ 3.0, Borland C++ 3.1 и Borland C++ 5.0 с разными настройками проекта (по инструкции ICP DAS тоже). 9. Программа не успевает выполнить "int main()", похоже падает в CRT или даже раньше. 10. Программа весит 95Кб (секция кода больше 64Кб). 11. "Autoexec.bat" выполняется нормально, также пробовали вставлять туда команды которые работают долго, типа, "diag". 12. И "diag" показывает, что причина перезагрузки "RESET". |
|
Действительный член Присоединился: 11 Октябрь 2003 Категория: Russian Federation Online Status: Offline Публикации: 392 |
|
Может "сторожевую собаку" забываете из приложения сбрасывать, вот она вам и перезагружает раз в секунду
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Новичок Присоединился: 23 Октябрь 2011 Online Status: Offline Публикации: 5 |
|
Приложение не запускается вообще см. п.9, и если watchdog срабатывает, то причина будет "WDT" в п.12.
P.S. Проблема была найдена, как тока перестану фигеть от неё, расскажу, что было... |
|
Действительный член Присоединился: 27 Июль 2006 Online Status: Offline Публикации: 304 |
|
Поделитесь, пожалуйста, решением проблемы.
|
|
Теория - это когда все знаешь, но ничего не работает.
Практика - это когда все работает, но никто не знает как. |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Новичок Присоединился: 23 Октябрь 2011 Online Status: Offline Публикации: 5 |
|
Завешивал контроллер код стандартной консольной библиотеки <conio.h>, т.к. из неё использовались функции kbhit() и getch(), который прекрасно работает абсолютно всегда, за исключением холодного автозапуска. Похоже, встроенная программа-монитор контроллера что-то настраивает в нём, и библиотека в дальнейшем нормально инициализируется.
Решением было изменение регистра двух букв, а именно использование прямых аналогов: Kbhit() и Getch() из <8000A.h> (первые буквы заглавные), после этого <conio.h> перестала линковаться с программой, автозапуск заработал, а программа даже похудела на 10 Кб. |
|
Действительный член Присоединился: 15 Октябрь 2003 Категория: Belarus Online Status: Offline Публикации: 141 |
|
не знаю как у Вас - у меня в промкомпах на процессоре RDC8k это решилось принудельным отключением сопроцессора
Test8086 := 0; может и у вас нечто такое же... |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Новичок Присоединился: 23 Октябрь 2011 Online Status: Offline Публикации: 5 |
|
Не понимаю, что вы имеете в виду. Но сопроцессора у данного контроллера нет в принципе и в опциях компилятора это указывается.
|
|
Ответить |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |