msg.c
来自「DSP编程」· C语言 代码 · 共 62 行
C
62 行
#ifndef _MSG_H_
#include "MSG.h"
#endif
#define MAX_IMG_FR_CNT 0xffffffff
#define MIN_IMG_FR_CNT 0x0
INT32U MsgNumOrder = 0;
INT32U Img_FR_Cnt = 0;
INT32U OSMsgNumGet(void)
{
INT32U cnt;
OS_ENTER_CRITICAL();
cnt = MsgNumOrder++;
OS_EXIT_CRITICAL();
return (cnt);
}
INT32U OSImgFRCntGet(void)
{
INT32U cnt;
OS_ENTER_CRITICAL();
cnt = Img_FR_Cnt++;
OS_EXIT_CRITICAL();
return (cnt);
}
INT32U MsgCheckSumGet(MSG *pMsg)
{
INT32U i, *p, tmp;
p = (INT32U*)pMsg;
tmp = 0;
for(i=0; i<(sizeof(MSG)/4 -1); i++)
tmp += *p++;
return tmp;
}
RESERVE_IMG CheckConsistency(INT32U FrameCntA, INT32U FrameCntB)
{
if(FrameCntA == FrameCntB )
{ return RESERVE_ALL; }
else if(FrameCntA > FrameCntB)
{
if(FrameCntA - FrameCntB > 0xffff)
{ return RESERVE_B;}
else
{ return RESERVE_A;}
}
else
{
if(FrameCntB - FrameCntA > 0xffff)
{ return RESERVE_A;}
else
{ return RESERVE_B;}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?