Добрый вечер.
Я не так давно проектирую ПО для микроконтроллеров и столкнулся со сложностью отладки.
Думаю, многие с этим сталкивались. Переменные программы и регистры
микропроцессора просто так не увидишь, нужны дополнительные средства. Ими могут
быть: JTAG отладчик, лишний UART или просто сигнальный светодиод (или несколько). Однако:
JTAG отладчик недешёвый + не всё конроллеры его поддерживают, а светодиод даёт информацию
об истинности какого-либо условия, что не всегда достаточно, потому что он не позволяет точно
оценить переменную. Выводить информацию в UART, наверно, наилучшее решение, но он может быть занят.
Как вы обходите эти ограничения и отлаживаете сложные участи ПО?
Отладка ПО для микроконтроллеров
- Реклама
Re: Отладка ПО для микроконтроллеров
ну если житаг дорого, а уарт занят, то тогда все участки кода жутко сложные...
- blackx
- Говорящий с текстолитом
- Сообщения: 1518
- Зарегистрирован: Пт дек 28, 2012 21:56:46
- Откуда: St. Petersburg
Re: Отладка ПО для микроконтроллеров
Мне всегда помогает немного подумать, почти всегда после 10 минут перерыва понимаешь отчего не заводится таймер или не ловится прерывание 
Программы в МК слишком просты чтобы делать в них ошибки, особенно если на Си писать
А так терминалка по uart, симуляторы, прототипирование, выполнение кусков программы на компе, протеус в конце концов - все в помощь, что можно применить. Хотя последним я никогда не пользовался.
Программы в МК слишком просты чтобы делать в них ошибки, особенно если на Си писать
А так терминалка по uart, симуляторы, прототипирование, выполнение кусков программы на компе, протеус в конце концов - все в помощь, что можно применить. Хотя последним я никогда не пользовался.
only pure true norwegian blackx 
-
petrenko
- Друг Кота
- Сообщения: 5326
- Зарегистрирован: Вт фев 21, 2012 13:51:55
- Откуда: Начинающий
- Контактная информация:
Re: Отладка ПО для микроконтроллеров
Поясните пожалуйста, что Вы имеете в виду под "сложными участками ПО" ?OlegALL писал(а):Добрый вечер .... Как ... отлаживаете сложные участки ПО?
( Интересно, а программные эмуляторы существуют для всяких мк ? )
< виртуальная "кнопочка" >--( WWW ) <- Убедительная просьба интересующимся старыми компьютерами типа РК86 - не пишите в теме в барахолке, пишите Ваши вопросы в ( лс ) пожалуйста
-
uk8amk
- Поставщик валерьянки для Кота
- Сообщения: 2222
- Зарегистрирован: Вт ноя 27, 2007 11:32:06
- Откуда: Tashkent
Re: Отладка ПО для микроконтроллеров
Всё зависит от того, какой микроконтроллер.
Для AVR отладчик JTAG по деталям обошёлся мне в 10 баксов, включая цену коробочки.
Для отладки мелких атмег и тинек позже пришлось обзавестись фирменным изделием.
PicKit тоже не шибко дорогой в сборке выходит.
Для ARM дешевле оказалось купить готовый чем мастерить что-то своё.
По схемным симуляторам: Proteus, VMLab.
Многие фирменные IDE имеют встроенный симулятор ядра и базовой периферии: AVRStudio, Keil, ST Visual Develop и др.
Для AVR отладчик JTAG по деталям обошёлся мне в 10 баксов, включая цену коробочки.
Для отладки мелких атмег и тинек позже пришлось обзавестись фирменным изделием.
PicKit тоже не шибко дорогой в сборке выходит.
Для ARM дешевле оказалось купить готовый чем мастерить что-то своё.
По схемным симуляторам: Proteus, VMLab.
Многие фирменные IDE имеют встроенный симулятор ядра и базовой периферии: AVRStudio, Keil, ST Visual Develop и др.
- Реклама
Re: Отладка ПО для микроконтроллеров
Обычно все выглядит так: если участок программы таков, что его можно отладить только на МК, то он не так сложен, чтобы этого нельзя было сделать с помощью светодиодов/UART'а. Если же модуль и правда сложен (какие-то вычисления, например), то его можно отладить на ПК, благо C-код переносим.
Разница между теорией и практикой на практике гораздо больше, чем в теории.


