初级会员

- 积分
- 72
- 金钱
- 72
- 注册时间
- 2015-5-8
- 在线时间
- 0 小时
|

楼主 |
发表于 2015-5-11 22:53:29
|
显示全部楼层
回复【6楼】zuozhongkai:
---------------------------------
但是我不知道怎么处理接受到的数据,我加了一个DealCmd
void DealCmd(struct tcp_demo_appstate *s)
{
uint8_t led;
/* 点亮LED
语法:ledon n (n: 1 - 4)
例如 :
ledon 2 表示点亮LED2
*/
if ((uip_len == 7) && (memcmp("ledon ", uip_appdata, 6) == 0))
{
led = ((uint8_t *)uip_appdata)[6]; /* 操作的LED序号 */
if (led == '1')
{
LED1_ON();
s->textptr = "Led 1 On!";
}
else if (led == '2')
{
LED2_ON();
s->textptr = "Led 2 On!";
}
else if (led == '3')
{
LED3_ON();
s->textptr = "Led 3 On!";
}
else if (led == '4')
{
LED4_ON();
s->textptr = "Led 4 On!";
}
s->textlen = strlen((char *)s->textptr);
}
/* 关闭LED
语法:ledoff n (n: 1 - 4)
例如 :
ledon 2 表示点亮LED2
*/
else if ((uip_len == 8) && (memcmp("ledoff ", uip_appdata, 7) == 0))
{
led = ((uint8_t *)uip_appdata)[7]; /* 操作的LED序号 */
if (led == '1')
{
LED1_OFF();
s->textptr = "Led 1 Off!";
}
else if (led == '2')
{
LED2_OFF();
s->textptr = "Led 2 Off!";
}
else if (led == '3')
{
LED3_OFF();
s->textptr = "Led 3 Off!";
}
else if (led == '4')
{
LED4_OFF();
s->textptr = "Led 4 Off!";
}
s->textlen = strlen((char *)s->textptr);
}
/* 发送数据测试 sendtest
语法:sendtest
例如 :
ledon 2 表示点亮LED2
*/
else if ((uip_len == 6) && (memcmp("txtest", uip_appdata, 6) == 0))
{
s->state = STATE_TX_TEST;
s->textptr = test_data;
s->textlen = 1400;
}
else if ((uip_len == 6) && (memcmp("rxtest", uip_appdata, 6) == 0))
{
s->state = STATE_RX_TEST;
s->textptr = "Ok";
s->textlen = 2;
}
else
{
s->textptr = "Unknow Command!\r\n";
s->textlen = strlen((char *)s->textptr);
}
}
想用这种操作来实现,但是加上以后没用 |
|