|
|
  |
Модификация старого проекта пятилетней выдержки |
|
|
|
Apr 6 2009, 14:54
|
Гуру
     
Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823

|
Нужно подправить проект, который был моим первым на IAR, на 133 кристалле, лет пять назад. Старый HEX работает, но результат компиляции версией 410 - нет. Под отладкой это выглядит так - после разрешения прерывания контроллер входит в прерыванию по таймеру, при выходе из него - заходит опять, и никогда не выходит. Если отпустить, и остановить, то стек переполнен, программа где-то болтается. Другой, более сложный проект, под этим же ИАРом работает вполне успешно. Синхронизация ядра от внутреннего генератора, таймер от часового кварца.
И что делать? Надеюсь на любой ответ...
--------------------
Уходя, оставьте свет...
|
|
|
|
|
Apr 7 2009, 04:27
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37

|
Цитата Да, наверное, только я столкнулся с тем, что система падает иногда, а старые версии уже не ставятся. Я использую WinXP Pro x64, на неё 3.30 и ставится, и работает на ура. Заливаю через BSL. Если уж очень хочется использовать LPT-шный MSPFET, то через VMware Workstation... Просто проект постоянно находится в работе, часто требуются некоторые мелкие изменения... Попробовал как-то 4.10 на этом проекте, сразу не пошла, "ну и хрен с ним" - решил. Новые проекты делаем на STM32.
--------------------
Если зайца бить, его можно и спички научить зажигать Сколько дурака не бей - умнее не будет. Зато опытнее
|
|
|
|
|
Apr 8 2009, 06:16
|
Гуру
     
Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823

|
Спасибо за советы и информацию.
С основной ошибкой разобрался, она из серии - "как оно вообще могло работать?!". Причина похоже в разной обработке __no_init volatile, но упрекнуть 4.10 не за что - моя явная ошибка, при определенном значении неинициализируемой переменной получался бесконечный цикл. Разбираться не буду. Впрочем, до конца проект не запустил, но шансы есть, терминал работает.
Шок от поведения программы под MSP-ным отладчиком вызван свободным полетом периферии, который я подзабыл (особенно после отладчиков AVR и ARM) и, возможно, проявления усугубились в этой версии отладчика. Такое впечатление, что, если прерывания идут часто, то остановиться вне прерывания невозможно. Переход на 4.20 запланировал.
Ну и на STM32 тоже перехожу потихоньку...
--------------------
Уходя, оставьте свет...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|