Показать сообщение отдельно
Старый 12.01.2020, 20:48   #5
alex_zas
Senior Member
 
Аватар для alex_zas
 
Регистрация: 17.03.2017
Адрес: Днепропетровск
Возраст: 54
Сообщений: 111
Вес репутации: 185/14
alex_zas has a spectacular aura aboutalex_zas has a spectacular aura about
По умолчанию Re: Как рассчитать глубину использования стека?

Я сейчас считаю вручную - это очень утомительно. Конечно если прерывания занимают один уровень стека и в основной программе 2-3 call то посчитать просто.
У меня в прерываниях вложенность 3, два параллельных процесса с разделением стека на две части, в каждом процессе вложенность как выясняется местами достигала 5, 11 банков памяти программ по 2к слов заняты процентов на 90 - приходится попотеть...
Рекурсий нет. Я надеюсь.
В моём случае чтобы вручную сформировать по каждому call глубину вложенности нужно часов 5 кропотливой работы. Я думал может я - пещерный человек, в цивилизованном мире всё уже автоматизировано...

Откуда информация что не поддерживает? У меня всё работает.
Посмотрите вложенную картинку.
Конечно на порядок медленнее, чем MPASM v5.02.
Кстати - может кому-то интересно. Для "навороченных" MCU семейства EMR типа 16F18877, 16F19197 выхода нет - только MPASM v5.76.
А для простых MCU семейства EMR скажем 16F1829 можно пользоваться MPASM v5.02. Указываете тип контроллера 16F876A, формируете (.INC) файл с описанием регистров 16F1829, а недостающие команды EMR реализуете макросами. Всё отлично работает. И ооочень быстро.
Миниатюры
MPASM.jpg  
alex_zas вне форума   Ответить с цитированием