Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Keil 7
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры
Stas
Не могу понять как в Keil 7.0 подсчитать время выполнения участка кода. Т.е. в настройках мы устанавливаем частоту работы ядра контроллера (у меня C8051F020 на 25 Мгц, соответствующая DLL установлена), в режиме симулятора/отладчика: останавливаемся на начале участка, из Project Windows -> Regs ->sec запоминаем текущее время программы (обнулить не дает), ставим точку останова на конечном участке и запускаем выполнение. При остановке как разницу рассчитываем время выполнения? Или я что то до конца не понимаю?
Раньше юзал Фитоновские средства, так там все гораздо удобнее сделано, вплоть до того, что в одном окне пишем на С, в том же окне по ctr-m смотрим asm генерируемый код и пр.
Miron
Я не совсем понял какие у вас трудности.
Если у вас uVision то имеется окошко Performance
настраиваете его и мерейте свое время.
IchtiAndr
Для Cygnal-а Perfomance Analyzer меряет время выполнения неверно, ошибается примерно в 10 раз, видно расчитывает тайминги для стандартного ядра 51 (цикл = 12 тактов)
one_man_show
По своему опыту понял, если симулятору и профайлеру не доверяю и при этом есть возможность запускаться на реальном железе, то лучше мерить таймером. В Сигнале их полно, задействуйте свободный (или пару с предделителем) для измерения времени выполнения, получите реальное значение с учетом обработки прерываний и работы с периферией, здесь как раз могут быть грабли biggrin.gif
Stas
Всем спасибо. Да, я так и сделал - все критические участки прогнал под таймером - самая точная симуляция....
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.