📄 cmmcom1.c
字号:
else
{
temp = rGPBDAT;
if(temp&GPBIO_IN2_DATA)
{
if((GM3688_PTT_CURRENT_STATUS==PTT_STATUS_OFF)&&
(GM3688_PTT_PREVIOUS_STATUS==PTT_STATUS_OFF))
{
logMsg("ptt is down.\n",0,0,0,0,0,0);
}
GM3688_PTT_PREVIOUS_STATUS =GM3688_PTT_CURRENT_STATUS;
GM3688_PTT_CURRENT_STATUS =PTT_STATUS_ON;
}
else
{
if((GM3688_PTT_CURRENT_STATUS==PTT_STATUS_OFF)&&
(GM3688_PTT_PREVIOUS_STATUS==PTT_STATUS_ON))
{
logMsg("ptt is up.\n",0,0,0,0,0,0);
}
GM3688_PTT_PREVIOUS_STATUS =GM3688_PTT_CURRENT_STATUS;
GM3688_PTT_CURRENT_STATUS =PTT_STATUS_OFF;
}
if(temp&GPBIO_IN5_DATA)
{
if((GM3688_CARRY_CURRENT_STATUS==CARRY_STATUS_OFF)&&
(GM3688_CARRY_PREVIOUS_STATUS==CARRY_STATUS_OFF))
{
logMsg("Radio is Carry start.\n",0,0,0,0,0,0);
}
GM3688_CARRY_PREVIOUS_STATUS =GM3688_CARRY_CURRENT_STATUS;
GM3688_CARRY_CURRENT_STATUS =CARRY_STATUS_ON;
}
else
{
if((GM3688_CARRY_CURRENT_STATUS==CARRY_STATUS_ON)&&
(GM3688_CARRY_PREVIOUS_STATUS==CARRY_STATUS_ON))
{
logMsg("Radio is Carry end.\n",0,0,0,0,0,0);
}
GM3688_CARRY_PREVIOUS_STATUS =GM3688_CARRY_CURRENT_STATUS;
GM3688_CARRY_CURRENT_STATUS =CARRY_STATUS_OFF;
}
if(temp&GPBIO_IN6_DATA)
{
if((GM3688_START_CURRENT_STATUS==START_STATUS_OFF)&&
(GM3688_START_PREVIOUS_STATUS==START_STATUS_OFF))
{
logMsg("Radio is Power on\n",0,0,0,0,0,0);
}
GM3688_START_PREVIOUS_STATUS =GM3688_START_CURRENT_STATUS;
GM3688_START_CURRENT_STATUS =START_STATUS_ON;
}
else
{
if((GM3688_START_CURRENT_STATUS==START_STATUS_ON)&&
(GM3688_START_PREVIOUS_STATUS==START_STATUS_ON))
{
logMsg("Radio is Power off\n",0,0,0,0,0,0);
}
GM3688_START_PREVIOUS_STATUS =GM3688_START_CURRENT_STATUS;
GM3688_START_CURRENT_STATUS =START_STATUS_OFF;
}
}
taskDelay(sysClkRateGet()/100);
}
}
#endif
/************************************************************/
int CMM_CCM700_Process(int meslen,M700_MESSAGE_BODY *message)
{
int mesnum;
int mesindex;
int mestype;
int i;
char val[32];
mesnum = (sizeof(g_allmesM700)/sizeof(M700_MESSAGE_CMP));
/****************
radio reset protect
*****************/
for(mesindex=0;mesindex<mesnum;mesindex++)
{
if(!memcmp(message,g_allmesM700[mesindex].message,g_allmesM700[mesindex].len))/*need cmp len?*/
{
mestype = g_allmesM700[mesindex].mestype;
switch(mestype)
{
case CCM700_POWER_ON:
logMsg("message:power on!\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
case CCM700_GRP_ID:
logMsg("message:local id:\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
case CCM700_GRP_CONNECT:
logMsg("message:connecting\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
default:
break;
}
}
}
/****************
arm reset protect
*****************/
if(b_radio_start==0)
{
for(mesindex=0;mesindex<mesnum;mesindex++)
{
if(!memcmp(message,g_allmesM700[mesindex].message,g_allmesM700[mesindex].len))/*need cmp len?*/
{
mestype = g_allmesM700[mesindex].mestype;
switch(mestype)
{
case CCM700_GRP_RANGE:
logMsg("message:range 1\n",0,0,0,0,0,0);
b_radio_start=1;
return mestype;
case CCM700_GRP_USE:
logMsg("message:gproup in use!\n",0,0,0,0,0,0);
return mestype;
b_radio_start=1;
case CCM700_REMOTE_ID:
logMsg("message:remomte id!\n",0,0,0,0,0,0);
return mestype;
b_radio_start=1;
default:
break;
}
}
}
}
else if(b_radio_start==1)
{
for(mesindex=0;mesindex<mesnum;mesindex++)
{
if(!memcmp(message,g_allmesM700[mesindex].message,g_allmesM700[mesindex].len))/*need cmp len?*/
{
mestype = g_allmesM700[mesindex].mestype;
switch(mestype)
{
case CCM700_GRP_NAME:
logMsg("message:group name:\n",0,0,0,0,0,0);
return mestype;
case CCM700_POWER_OFF:
logMsg("message:powering off!\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
case CCM700_GRP_RANGE:
logMsg("message:range 1\n",0,0,0,0,0,0);
if((CCM700_CURRENT_STATUS==CCM700_STATUS_USE)&&(CCM700_PREVIOUS_STATUS!=CCM700_STATUS_ID))
{
logMsg("call out end !\n",0,0,0,0,0,0);
}
CCM700_PREVIOUS_STATUS=CCM700_CURRENT_STATUS;
CCM700_CURRENT_STATUS=CCM700_STATUS_RANGE;
return mestype;
case CCM700_GRP_USE:
logMsg("message:gproup in use!\n",0,0,0,0,0,0);
if(CCM700_CURRENT_STATUS==CCM700_STATUS_ID)
{
logMsg("call in end !\n",0,0,0,0,0,0);
}
else
{
logMsg("call out start !\n",0,0,0,0,0,0);
}
CCM700_PREVIOUS_STATUS=CCM700_CURRENT_STATUS;
CCM700_CURRENT_STATUS=CCM700_STATUS_USE;
return mestype;
case CCM700_REMOTE_ID:
logMsg("message:remomte id!\n",0,0,0,0,0,0);
if((CCM700_CURRENT_STATUS==CCM700_STATUS_USE)||(CCM700_CURRENT_STATUS==CCM700_STATUS_RANGE))
{
logMsg("call in start !\n",0,0,0,0,0,0);
}
CCM700_PREVIOUS_STATUS=CCM700_CURRENT_STATUS;
CCM700_CURRENT_STATUS=CCM700_STATUS_ID;
return mestype;
default:
break;
}
}
}
}
return -1;
}
/****************************************************************
description:
InPut: Non
OutPut: Non
Return: The result of add all command
****************************************************************/
int CMM_CEM700_Process(int meslen,M700_MESSAGE_BODY *message)
{
int mesnum;
int mesindex;
int mestype;
int i;
char val[32];
mesnum = (sizeof(g_allmesM700)/sizeof(M700_MESSAGE_CMP));
/****************
radio reset protect
*****************/
for(mesindex=0;mesindex<mesnum;mesindex++)
{
if(!memcmp(message,g_allmesM700[mesindex].message,g_allmesM700[mesindex].len))/*need cmp len?*/
{
mestype = g_allmesM700[mesindex].mestype;
switch(mestype)
{
case CEM700_POWER_ON:
logMsg("message:power on!\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
case CEM700_GRP_ID:
logMsg("message:local id:\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
case CEM700_GRP_CONNECT:
logMsg("message:connecting\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
default:
break;
}
}
}
/****************
arm reset protect
*****************/
if(b_radio_start==0)
{
for(mesindex=0;mesindex<mesnum;mesindex++)
{
if(!memcmp(message,g_allmesM700[mesindex].message,g_allmesM700[mesindex].len))/*need cmp len?*/
{
mestype = g_allmesM700[mesindex].mestype;
switch(mestype)
{
case CEM700_GRP_RANGE:
logMsg("message:range 1\n",0,0,0,0,0,0);
b_radio_start=1;
return mestype;
case CEM700_GRP_USE:
logMsg("message:gproup in use!\n",0,0,0,0,0,0);
return mestype;
b_radio_start=1;
case CEM700_REMOTE_ID:
logMsg("message:remomte id!\n",0,0,0,0,0,0);
return mestype;
b_radio_start=1;
default:
break;
}
}
}
}
else if(b_radio_start==1)
{
for(mesindex=0;mesindex<mesnum;mesindex++)
{
if(!memcmp(message,g_allmesM700[mesindex].message,g_allmesM700[mesindex].len))/*need cmp len?*/
{
mestype = g_allmesM700[mesindex].mestype;
switch(mestype)
{
case CEM700_GRP_NAME:
logMsg("message:group name:\n",0,0,0,0,0,0);
return mestype;
case CEM700_POWER_OFF:
logMsg("message:powering off!\n",0,0,0,0,0,0);
b_radio_start=0;
return mestype;
case CEM700_GRP_RANGE:
logMsg("message:range 1\n",0,0,0,0,0,0);
if((CEM700_CURRENT_STATUS==CEM700_STATUS_USE)&&(CEM700_PREVIOUS_STATUS!=CEM700_STATUS_ID))
{
logMsg("call out end !\n",0,0,0,0,0,0);
}
CEM700_PREVIOUS_STATUS=CEM700_CURRENT_STATUS;
CEM700_CURRENT_STATUS=CEM700_STATUS_RANGE;
return mestype;
case CEM700_GRP_USE:
logMsg("message:gproup in use!\n",0,0,0,0,0,0);
if(CEM700_CURRENT_STATUS==CEM700_STATUS_ID)
{
logMsg("call in end !\n",0,0,0,0,0,0);
}
else
{
logMsg("call out start !\n",0,0,0,0,0,0);
}
CEM700_PREVIOUS_STATUS=CEM700_CURRENT_STATUS;
CEM700_CURRENT_STATUS=CEM700_STATUS_USE;
return mestype;
case CEM700_REMOTE_ID:
logMsg("message:remomte id!\n",0,0,0,0,0,0);
if((CEM700_CURRENT_STATUS==CEM700_STATUS_USE)||(CEM700_CURRENT_STATUS==CEM700_STATUS_RANGE))
{
logMsg("call in start !\n",0,0,0,0,0,0);
}
CEM700_PREVIOUS_STATUS=CEM700_CURRENT_STATUS;
CEM700_CURRENT_STATUS=CEM700_STATUS_ID;
return mestype;
default:
break;
}
}
}
}
return -1;
}
int CMM_M760_Process(int meslen,M700_MESSAGE_BODY *message)
{
int mesnum;
int mesindex;
int mestype;
int i;
char val[32];
mesnum = (sizeof(g_allmesM700)/sizeof(M700_MESSAGE_CMP));
/****************
radio reset protect
*****************/
for(mesindex=0;mesindex<mesnum;mesindex++)
{
if(!memcmp(message,g_allmesM700[mesindex].message,g_allmesM700[mesindex].len))/*need cmp len?*/
{
mestype = g_allmesM700[mesindex].mestype;
switch(mestype)
{
case M760_POWER_ON:
logMsg("message:power on!\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_POWER_OFF:
logMsg("message:power off!\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_GRP_NULL:
logMsg("message:null\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_GRP_NULL1:
logMsg("message:null1\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_GRP_NULL2:
logMsg("message:null2\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL2;
return mestype;
case M760_CALLING:
logMsg("message:calling\n",0,0,0,0,0,0);
M760_IN_OUT_FLAG=1;
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_CALL;
return mestype;
case M760_TIMING:
logMsg("message:timing\n",0,0,0,0,0,0);
if(M760_IN_OUT_FLAG)
{
if(M760_CURRENT_STATUS==M760_STATUS_NAME)
{
logMsg("message:call out start!\n",0,0,0,0,0,0);
}
}
else
{
if(M760_CURRENT_STATUS==M760_STATUS_NAME)
{
logMsg("message:call in id!\n",0,0,0,0,0,0);
logMsg("message:call in start!\n",0,0,0,0,0,0);
}
}
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_TIME;
return mestype;
case M760_TIME_END:
logMsg("message:time end\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_CALL_END:
logMsg("message:called end\n",0,0,0,0,0,0);
if(M760_IN_OUT_FLAG)
{
M760_IN_OUT_FLAG=0;
logMsg("message:call out end!\n",0,0,0,0,0,0);
}
else
{
logMsg("message:call in end!\n",0,0,0,0,0,0);
}
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_QUEUED:
logMsg("message:queued\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_UNOBTAINAbLE:
logMsg("message:queued\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_SCANNING:
logMsg("message:scanning\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_CALL_FAILED:
logMsg("message:call failed\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_GRP_CALL_IN_ID:
logMsg("message:call in id\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NULL;
return mestype;
case M760_GRP_NAME:
logMsg("message:name or id\n",0,0,0,0,0,0);
if((M760_PREVIOUS_STATUS==M760_STATUS_NULL2)&&
(M760_CURRENT_STATUS==M760_STATUS_NULL2))
{
if((message->messagebody[0]==0x00)&&
(message->messagebody[1]==0x00))
{
logMsg("message:name\n",0,0,0,0,0,0);
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NAME;
}
}
else
{
if((message->messagebody[0]==0x00)&&
(message->messagebody[1]==0x00))
{
M760_PREVIOUS_STATUS=M760_CURRENT_STATUS;
M760_CURRENT_STATUS=M760_STATUS_NAME;
}
}
return mestype;
default:
break;
}
}
}
return -1;
}
void CMM_UART(void)
{
char headc,bodyc;
int i;
int width;
UINT16 mesbodysize;
int mempos_ptr = 0;
int mesbody_pos = 0;
M700_MESSAGE_BODY message;
/*int fx_len=0;*/
int bytesRead = 0;
struct timeval TelnetTimer;
fd_set CMM_UARTS;
consoleFd1 = open ("/tyCo/1", O_RDWR, 0);
if(ERROR == consoleFd1)
{
printf("open /tyCo/1 error errno =%d\n",errno);
return;
}
(void) ioctl (consoleFd1, FIOBAUDRATE, 9600);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -