1.The TimeStamp have possible to overrange:
Could you add these code to detect?
SEGGER_SYSVIEW.C
_TrySendOverflowPacket(void):
U32 Delta;
......
TimeStamp = SEGGER_SYSVIEW_GET_TIMESTAMP();
+if(_SYSVIEW_Globals.LastTxTimeStamp > TimeStamp)
+{
+ Delta = 0xffffffff - _SYSVIEW_Globals.LastTxTimeStamp + TimeStamp;
+}
+else
+{
+ Delta = TimeStamp - _SYSVIEW_Globals.LastTxTimeStamp ;
+}
......
_SendPacket():
......
TimeStamp = SEGGER_SYSVIEW_GET_TIMESTAMP();
+if(_SYSVIEW_Globals.LastTxTimeStamp > TimeStamp)
+{
+ Delta = 0xffffffff - _SYSVIEW_Globals.LastTxTimeStamp + TimeStamp;
+}
+else
+{
+ Delta = TimeStamp - _SYSVIEW_Globals.LastTxTimeStamp ;
+}
......
2.When we set the SEGGER_SYSVIEW_POST_MORTEM_MODE = 1
and then try to build.
We will get the error:
can't find the _HandleIncomingPacket();
Could we fix it like these:
SEGGER_SYSVIEW_IsStarted():
+#if(SEGGER_SYSVIEW_POST_MORTEM_MODE != 1)
if(SEGGER_RTT_HASDATA(CHANNEL_ID_DOWN))
{
......
}
+#endif
Could you add these code to detect?
SEGGER_SYSVIEW.C
_TrySendOverflowPacket(void):
U32 Delta;
......
TimeStamp = SEGGER_SYSVIEW_GET_TIMESTAMP();
+if(_SYSVIEW_Globals.LastTxTimeStamp > TimeStamp)
+{
+ Delta = 0xffffffff - _SYSVIEW_Globals.LastTxTimeStamp + TimeStamp;
+}
+else
+{
+ Delta = TimeStamp - _SYSVIEW_Globals.LastTxTimeStamp ;
+}
......
_SendPacket():
......
TimeStamp = SEGGER_SYSVIEW_GET_TIMESTAMP();
+if(_SYSVIEW_Globals.LastTxTimeStamp > TimeStamp)
+{
+ Delta = 0xffffffff - _SYSVIEW_Globals.LastTxTimeStamp + TimeStamp;
+}
+else
+{
+ Delta = TimeStamp - _SYSVIEW_Globals.LastTxTimeStamp ;
+}
......
2.When we set the SEGGER_SYSVIEW_POST_MORTEM_MODE = 1
and then try to build.
We will get the error:
can't find the _HandleIncomingPacket();
Could we fix it like these:
SEGGER_SYSVIEW_IsStarted():
+#if(SEGGER_SYSVIEW_POST_MORTEM_MODE != 1)
if(SEGGER_RTT_HASDATA(CHANNEL_ID_DOWN))
{
......
}
+#endif