Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

triceLogDiagData.c 3.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. /*!
  2. * \file triceLogDiagData.c
  3. * \author Thomas.Hoehenleitner [at] seerose.net
  4. * *****************************************************************************
  5. */
  6. #include "trice.h"
  7. #ifdef __cplusplus
  8. extern "C"
  9. {
  10. #endif
  11. #if !TRICE_OFF && TRICE_DIAGNOSTICS == 1
  12. //! TriceLogDiagnosticData shows the max used buffer space.
  13. void TriceLogDiagnosticData(void)
  14. {
  15. #ifdef SEGGER_RTT
  16. int RTT0_wrSpaceMin = BUFFER_SIZE_UP - RTT0_writeDepthMax;
  17. if ((RTT0_wrSpaceMin < TRICE_BUFFER_SIZE))
  18. {
  19. //trice16("WARNING:RTT0_writeDepthMax=%u (BUFFER_SIZE_UP=%u)\n", RTT0_writeDepthMax, BUFFER_SIZE_UP);
  20. }
  21. else
  22. {
  23. //trice16("diag:RTT0_writeDepthMax=%u (BUFFER_SIZE_UP=%u)\n", RTT0_writeDepthMax, BUFFER_SIZE_UP);
  24. }
  25. #endif // #ifdef SEGGER_RTT
  26. if (TriceErrorCount > 0)
  27. {
  28. //trice16("err:TriceErrorCount = %u\n", TriceErrorCount);
  29. }
  30. #if TRICE_PROTECT == 1
  31. #if TRICE_DIRECT_OUTPUT == 1
  32. if (TriceDirectOverflowCount != 0)
  33. {
  34. //trice16("err:TriceDirectOverflowCount = %u\n", TriceDirectOverflowCount);
  35. }
  36. #endif // #if TRICE_DIRECT_OUTPUT == 1
  37. #if TRICE_DEFERRED_OUTPUT == 1
  38. if (TriceDeferredOverflowCount != 0)
  39. {
  40. //trice16("err:TriceDeferredOverflowCount = %u\n", TriceDeferredOverflowCount);
  41. }
  42. #endif // #if TRICE_DEFERRED_OUTPUT == 1
  43. #endif // #if TRICE_PROTECT == 1
  44. unsigned triceSingleDepthMax = TRICE_DATA_OFFSET + (TriceSingleMaxWordCount << 2); // lint !e845 Info 845: The left argument to operator '<<' is certain to be 0
  45. if (triceSingleDepthMax <= TRICE_BUFFER_SIZE)
  46. {
  47. //trice16("diag:triceSingleDepthMax =%4u of %d (TRICE_BUFFER_SIZE)\n", triceSingleDepthMax, TRICE_BUFFER_SIZE);
  48. }
  49. else
  50. {
  51. //trice16("err:triceSingleDepthMax =%4u of %d (TRICE_BUFFER_SIZE overflow!)\n", triceSingleDepthMax, TRICE_BUFFER_SIZE);
  52. }
  53. if (TriceDataOffsetDepthMax < 0 || TriceDataOffsetDepthMax >= TRICE_DATA_OFFSET)
  54. {
  55. //trice16("err:TriceDataOffsetDepthMax = %d of %d (TRICE_DATA_OFFSET)\n", TriceDataOffsetDepthMax, TRICE_DATA_OFFSET);
  56. }
  57. else if (TriceDataOffsetDepthMax != 0)
  58. {
  59. //trice16("diag:TriceDataOffsetDepthMax = %d of %d (TRICE_DATA_OFFSET)\n", TriceDataOffsetDepthMax, TRICE_DATA_OFFSET);
  60. }
  61. if (TriceDynStringBufTruncateCount != 0)
  62. {
  63. //trice16("wrn:TriceDynStringBufTruncateCount = %u\n", TriceDynStringBufTruncateCount);
  64. }
  65. #if TRICE_BUFFER == TRICE_STACK_BUFFER
  66. #endif // #if TRICE_BUFFER == TRICE_STACK_BUFFER
  67. #if TRICE_BUFFER == TRICE_STATIC_BUFFER
  68. #endif // #if TRICE_BUFFER == TRICE_STATIC_BUFFER
  69. #if TRICE_BUFFER == TRICE_DOUBLE_BUFFER
  70. if (TriceHalfBufferDepthMax <= TRICE_DEFERRED_BUFFER_SIZE / 2)
  71. {
  72. //trice16("diag:TriceHalfBufferDepthMax =%4u of%5d\n", TriceHalfBufferDepthMax, TRICE_DEFERRED_BUFFER_SIZE / 2);
  73. }
  74. else
  75. {
  76. //trice16("err:TriceHalfBufferDepthMax =%4u of%5d (overflow!)\n", TriceHalfBufferDepthMax, TRICE_DEFERRED_BUFFER_SIZE / 2);
  77. }
  78. #endif // #if TRICE_BUFFER == TRICE_DOUBLE_BUFFER
  79. #if TRICE_BUFFER == TRICE_RING_BUFFER
  80. if (TriceRingBufferDepthMax <= TRICE_DEFERRED_BUFFER_SIZE)
  81. {
  82. //trice16("diag:triceRingBufferDepthMax =%4u of%5d\n", TriceRingBufferDepthMax, TRICE_DEFERRED_BUFFER_SIZE);
  83. }
  84. else
  85. {
  86. //trice16("err:triceRingBufferDepthMax =%4u of%5d (overflow!)\n", TriceRingBufferDepthMax, TRICE_DEFERRED_BUFFER_SIZE);
  87. }
  88. #endif // #if TRICE_BUFFER == TRICE_RING_BUFFER
  89. }
  90. #endif // #if !TRICE_OFF && TRICE_DIAGNOSTICS == 1