?? analyseframe.c
字號:
//channel = channel;
//printf("<p>cmd_code_send is: %x</p>", p_cframe->cmd_code_send);
switch (p_cframe->cmd_code_send) //frame_info
{
case CMD_SET_DXC_TIMESLOT:
p_cframe->info_length = 7;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)dxc_timeslot_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", dxc_timeslot_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
/*
for (i=0; i<7; i++)
printf("<p>hexdd = %s</p>", info_buf[i]);
for (i=0; i<7; i++)
sscanf(info_buf[i], "%hd", (&frame[i]));
printf("<p>hex1 = %x</p>", frame[0]);
printf("<p>hex1 = %x</p>", frame[1]);
printf("<p>hex1 = %x</p>", frame[2]);
printf("<p>hex1 = %x</p>", frame[3]);
printf("<p>hex1 = %x</p>", frame[4]);
printf("<p>hex1 = %x</p>", frame[5]);
printf("<p>hex1 = %x</p>", frame[6]);
*/
if ((p_cframe->frame_info[3] == 5) && (p_cframe->frame_info[4] == 1))
frame_ready = FRAME_DOUBLE;
else
frame_ready = FRAME_ERROR;
break;
case CMD_READ_DXC_TIMESLOT:
p_cframe->info_length = 4;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)dxc_timeslot_table[3+i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", dxc_timeslot_table[3+i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_SET_V35_WORKMODE:
p_cframe->info_length = 7;
for (i=0; i<2; i++)
{
query_string = string + strspos(string, (char *)V35_work_mode_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_work_mode_table[i], info_buf[i]);
//printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
for (i=2; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)V35_work_mode_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
p_cframe->frame_info[i] = check_frame_info(info_buf[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_work_mode_table[i], info_buf[i]);
//printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_V35_WORKMODE:
p_cframe->info_length = 3;
for (i=0; i<2; i++)
{
query_string = string + strspos(string, (char *)V35_work_mode_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_work_mode_table[i], info_buf[i]);
//printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
query_string = string + strspos(string, (char *)V35_work_mode_table[7], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
p_iframe->mode_type = p_cframe->frame_info[i];
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_work_mode_table[7], info_buf[i]);
//printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
frame_ready = FRAME_READY;
break;
/*
case CMD_SET_V35_FRAMETYPE:
p_cframe->info_length = 3;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)V35_frame_type_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
p_cframe->frame_info[i] = check_frame_info(info_buf[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_frame_type_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
break;
case CMD_READ_V35_FRAMETYPE:
p_cframe->info_length = 2;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)V35_frame_type_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_frame_type_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
break;
*/
case CMD_SET_V35_TIMESLOT:
p_cframe->info_length = 3;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)V35_timeslot_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_timeslot_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_V35_TIMESLOT:
p_cframe->info_length = 2;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)V35_timeslot_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_timeslot_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_V35_ATTRIBUTE:
p_cframe->info_length = 1;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)V35_work_mode_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", V35_work_mode_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_SET_CLOCK_PRIO:
p_cframe->info_length = 10;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)CLK_prio_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
p_cframe->frame_info[i] = check_frame_info2(info_buf[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", CLK_prio_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_CLOCK_PRIO:
p_cframe->info_length = 0;
frame_ready = FRAME_READY;
break;
case CMD_READ_WORK_CLOCK:
p_cframe->info_length = 0;
frame_ready = FRAME_READY;
break;
case CMD_READ_CLOCK_INFO:
p_cframe->info_length = 0;
frame_ready = FRAME_READY;
break;
case CMD_SET_FE_UP_BAND:
p_cframe->info_length = 2;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_up_band_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_up_band_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_FE_UP_BAND:
p_cframe->info_length = 1;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_up_band_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_up_band_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_SET_FE_PORT_BAND:
p_cframe->info_length = 3;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_port_band_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_port_band_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_FE_PORT_BAND:
p_cframe->info_length = 2;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_port_band_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_port_band_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_SET_VLAN_MODE:
p_cframe->info_length = 2;
for (i=0; i<1; i++)
{
query_string = string + strspos(string, (char *)FE_vlan_mode_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_mode_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
for (i=1; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_vlan_mode_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
p_cframe->frame_info[i] = check_frame_info(info_buf[i])+1; //PORT=1, TAG=2
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_mode_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_VLAN_MODE:
p_cframe->info_length = 1;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_vlan_mode_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_mode_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_SET_VLAN_GROUP:
p_cframe->info_length = 6;
for (i=0; i<2; i++)
{
query_string = string + strspos(string, (char *)FE_vlan_group_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_group_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
for (i=2; i<p_cframe->info_length; i++)
{
if (strspos(string, (char *)FE_vlan_group_table[i], MAX_QUERY_STRING_LENGTH) == 0xffff)
continue;
query_string = string + strspos(string, (char *)FE_vlan_group_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[2+tmp_val]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_group_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[2+tmp_val]);
#endif
tmp_val++;
}
p_cframe->info_length = 2 + tmp_val;
frame_ready = FRAME_READY;
break;
case CMD_READ_VLAN_GROUP:
p_cframe->info_length = 2;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_vlan_group_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_group_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_SET_VLAN_TAG:
p_cframe->info_length = 4;
for (i=0; i<3; i++)
{
query_string = string + strspos(string, (char *)FE_vlan_tag_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_tag_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_VLAN_TAG:
p_cframe->info_length = 2;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)FE_vlan_tag_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", FE_vlan_tag_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
frame_ready = FRAME_READY;
break;
case CMD_READ_WORK_BOARD:
p_cframe->info_length = 0;
frame_ready = FRAME_READY;
break;
case CMD_SET_PHONE_NUMBER:
p_cframe->info_length = 1;
for (i=0; i<p_cframe->info_length; i++)
{
query_string = string + strspos(string, (char *)phone_number_table[i], MAX_QUERY_STRING_LENGTH);
sscanf(query_string, "%*[^=]=%[^&]", info_buf[i]);
sscanf(info_buf[i], "%hd", &p_cframe->frame_info[i]);
#ifdef DEBUG_MODE
printf("<p>%s is: %s</p>", phone_number_table[i], info_buf[i]);
printf("<p>hex = %x</p>", p_cframe->frame_info[i]);
#endif
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -