|
應(yīng)客戶要求做了一款使用51單片機(jī)和4G模組做遠(yuǎn)程通訊的終端設(shè)備,51單片機(jī)使用串口與4G模組進(jìn)行通訊,實(shí)現(xiàn)各種控制功能。4G模組使用有人GM5透?jìng)髂=M。
以下是通訊前需要設(shè)置的一些參數(shù):
/////////////////////////////////////////////////////////////////
void Getgprs() //獲取模組信息
{
//uchar i;
GPRS_OK=0;
UartSendStr("\r\模組初始化....!");
while(!GPRS_OK) //等啟動(dòng)成功
{ //調(diào)用串口驅(qū)動(dòng)
Uart2_Driver();
Delay1ms_cont(50);
}
GPRS_OK=0;
// UartSendStr("\r\n退出透?jìng)?...!");
printf("+++"); Delay1ms_cont(200);
printf("a"); Delay1ms_cont(200);
// UartSendStr("\r\n關(guān)閉模組回顯...");
printf("AT+E=OFF\r\n");Delay1ms_cont(200); //關(guān)閉模組回顯——001
printf("AT+S\r\n");Delay1ms_cont(200); //關(guān)閉模組回顯——001
while(!GPRS_OK) //等待GPRS啟動(dòng)成功
{ //調(diào)用串口驅(qū)動(dòng)
Uart2_Driver();
Delay1ms_cont(100);
}
GPRS_OK=0;
// UartSendStr("\r\n退出透?jìng)?...!");
printf("+++"); Delay1ms_cont(200);
printf("a"); Delay1ms_cont(200);
while(!GPRS_OK) //獲取GPRS CCID號(hào)——002 {"AT+CCID\r\n"}; //模組串號(hào)指令002
{
printf("AT+ICCID\r\n");
Delay1ms_cont(200);
Uart2_Driver();
Delay1ms_cont(200);
}
GPRS_OK=0;
UartSendStr("\r\nGPRS CCID號(hào)碼=");
UartSendStr(SAVE_CCID);
while(!GPRS_OK) //獲取GPRS SIM號(hào) ——003uchar code AT_SIMID[]= {"AT+EGMR=2,7\r\n"}; //SIM卡號(hào)指令004
{
printf("AT+IMEI\r\n");
Delay1ms_cont(200);
Uart2_Driver(); //調(diào)用串口驅(qū)動(dòng)
}
GPRS_OK=0;
UartSendStr("\r\nSIM號(hào)碼=");
UartSendStr(SAVE_SIMID);
Delay1ms_cont(200);
while(!GPRS_OK){
printf("AT+CSQ\r\n"); //{"AT+CSQ \r\n"}; //信號(hào)強(qiáng)度指令003
Delay1ms_cont(200);
Uart2_Driver();
}
UartSendStr("\r\nAT+CSQ=");
UartSendStr(SAVE_CSQ);
GPRS_OK=0;
while(!GPRS_OK)
{
printf("AT+UARTFL=4096\r\n"); //
Delay1ms_cont(200); //調(diào)用串口驅(qū)動(dòng)
Uart2_Driver();
}
GPRS_OK=0;
while(!GPRS_OK)
{
printf("AT+SOCKA=TCP,您的域名,50000\r\n"); //
Delay1ms_cont(200); //調(diào)用串口驅(qū)動(dòng)
Uart2_Driver();
}
printf("AT+S\r\n"); ////透?jìng)髂?/font>
Delay1ms_cont(200); //調(diào)用串口驅(qū)動(dòng)
GPRS_OK=0;
while(!GPRS_OK) //等待GPRS啟動(dòng)成功
{ //調(diào)用串口驅(qū)動(dòng)
Uart2_Driver();
}
GPRS_OK=0;
Delay1ms_cont(100); //調(diào)用串口驅(qū)動(dòng)
LoginServer();
}
/* 登陸服務(wù)器指令*/
//{"ac":"login", "mid":"867959032063277","pass":"0000000","sim":"898604291618C0801153",
// "did":"000000001","shv":"00", "ssv":"00","chv":"00","csv":"00" }
void LoginServer() //登陸服務(wù)器函數(shù)包
{
// uchar i;
printf("{\"ac\":\"login\",\"mid\":\"%s\",\"pass\":\"00000000\",\"sim\":\"%s\",\"did\":\"20\",",SAVE_SIMID,SAVE_CCID);
printf("\"shv\":\"%2s\",\"ssv\":\"%2s\",\"chv\":\"%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%0bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd\",",\
shv,ssv,chv[1],chv[2],chv[3],chv[4],chv[5],chv[6],chv[7],chv[8],chv[9],chv[10],chv[11],chv[12],chv[13],chv[14],chv[15],chv[16],chv[17],chv[18],chv[19],chv[20]);
printf("\"csv\":\"%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%0bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd,%02bd\"}",\
csv[1],csv[2],csv[3],csv[4],csv[5],csv[6],csv[7],csv[8],csv[9],csv[10],csv[11],csv[12],csv[13],csv[14],csv[15],csv[16],csv[17],csv[18],csv[19],csv[20]);
Delay1ms_cont(1000);
do{
Uart2_Driver();
} while(!GPRS_OK); //等待登陸服務(wù)器成功
GPRS_OK=0;LED_GRRS_On;
UartSendStr("\r\n登陸服務(wù)器成功!");
}
pdf格式電路原理圖:
4G通信板_RS485_20210707.pdf
(37.45 KB, 下載次數(shù): 50)
2022-1-15 14:30 上傳
點(diǎn)擊文件名下載附件
|
評(píng)分
-
查看全部評(píng)分
|