M26 TCP透传
TCP连接流程
第一次使用 M26 ,很生疏,从手册入手开始一步一步的走,做透传,幸好是中文手册,看着不费劲,这里用的是AT指令开发,坐下流程笔记,以后用的着的时候看,这里做一些功能上的封装,框架可以直接用,具体怎么实现根据实际情况,用的是STM32F1系列的单片机通过串口向M26发送数据透传到服务器。
初始化
在TCP连接之前需要一些初始化,例如:AT测试指令,设置反显和初始化PDP上下文。
封装的发送指令函数M26_SendCmd其实就是向串口发送数据和延时一段时间等待串口接受M26返回后比较相应返回成功报文。第一个参数是AT指令,第二个参数是期待返回值,第三个参数是等待模块返回超时时间
- 初始化基本配置 :
unsigned char m25_conf_base()
{
while(M26_SendCmd("AT\r\n","OK",500))//测试指令
{
Clear_Buffer2();
}
delay_ms(500);
Clear_Buffer2();
while(M26_SendCmd("ATE0\r\n","OK",500))//设置回显 ATE1设置回显 ATE0设置不回显 2019-3-22
{
Clear_Buffer2();
}
delay_ms(500);
Clear_Buffer2();
while(M26_SendCmd("AT+CSQ\r\n","OK",500))//获取信号强度
{
Clear_Buffer2();
}
while(M26_SendCmd("AT+QREFUSECS=1,1\r\n","OK",500))//拒接来电和短信
{
Clear_Buffer2();
}
delay_ms(500);
Clear_Buffer2();
return 1;
}
2.初始化APN配置 :
unsigned char m26_conf_APN()
{
while(M26_SendCmd("AT+QIFGCNT=0\r\n","OK",500)) //设置为前台
{
Clear_Buffer2();
}
delay_ms(500);
Clear_Buffer2();
while(M26_SendCmd("AT+QICSGP=1,\042CMNET\042\r\n","OK",500)) //设置接入点
{
Clear_Buffer2();
}
delay_ms(500);
Clear_Buffer2();
return 1;
}