Время работы до достижения точки останова?

У меня есть сценарий с точкой останова A, и я хочу знать, если это функция, которая показывает время выполнения до достижения точки останова (вручную вы видите его в Misc Runtime). Скажем, если оно достигнет 10 мс, пройдено, если больше - не получится. Текущий код для достижения точки останова:

GO A
  TOOLBOX WaitValidateBreakpoint A
  ENTRY &StoppedAtBreakpoint

  IF &StoppedAtBreakpoint==FALSE()
  (
  TOOLBOX TestStepFail "Breakpoint A is not reached"
  RETURN
  )
  ELSE
  (
  TOOLBOX TestStepPass "Breakpoint A is reached"
  RETURN
  )

1 ответ

Решение

Вы можете получить время, пока ядро ​​работало, пока оно не достигнет точки останова, с помощью функции PRACTICE. RunTime.LASTRUN()

Таким образом, вы можете написать что-то вроде этого:

IF RunTime.LASTRUN()<=10.ms
   PRINT "OK"
ELSE
   PRINT "Execution took too long!"

Вы можете прочитать больше о функциях PRACTICE в /pdf/general_func.pdf, расположенном в вашей установке TRACE32.

См. Также: Сравнительный анализ времени выполнения кода с Trace32.

Другие вопросы по тегам