AT指令解析(来自网络)

/* 
在这里就打印解析的内容 
*/  
void Handle(char *str, int len)  
{  
    char *p = (char *)malloc(len + 1);  
    memcpy(p, str, len);  
    p[len] = 0;  
    printf("%s\r\n", p);  
    free(p);  
}  
  
/* 
str:需要解析的字符串 
slipt;分割字符串 
cb:回调函数指针,当找到内容后,去想该函数 
举例子:AtAnalysis("AT\r\n\r\nOK\r\n", "\r\n", Handle); 
*/  
void AtAnalysis(char *str, char *slipt, void (*cb)(char *, int))  
{  
    char *p = NULL;  
    int len = strlen(slipt);  
    p = strstr(str, slipt);  
    while (p != NULL)  
    {  
        cb(str, p - str);  
        str = p + len;  
        p = strstr(str, slipt);  
    }  
    cb(str, strlen(str));  
}  

  

转载于:https://www.cnblogs.com/jackweibe/p/6543522.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值