應客戶要求做了一款使用51單片機和4G模組做遠程通訊的終端設備,51單片機使用串口與4G模組進行通訊,實現各種控制功能。4G模組使用有人GM5透傳模組。
以下是通訊前需要設置的一些參數:
/////////////////////////////////////////////////////////////////
void Getgprs() //獲取模組信息
{
//uchar i;
GPRS_OK=0;
UartSendStr("\r\模組初始化....!");
while(!GPRS_OK) //等啟動成功
{ //調用串口驅動
Uart2_Driver();
Delay1ms_cont(50);
}
GPRS_OK=0;
// UartSendStr("\r\n退出透傳....!");
printf("+++"); Delay1ms_cont(200);
printf("a"); Delay1ms_cont(200);
// UartSendStr("\r\n關閉模組回顯...");
printf("AT+E=OFF\r\n");Delay1ms_cont(200); //關閉模組回顯——001
printf("AT+S\r\n");Delay1ms_cont(200); //關閉模組回顯——001
while(!GPRS_OK) //等待GPRS啟動成功
{ //調用串口驅動
Uart2_Driver();
Delay1ms_cont(100);
}
GPRS_OK=0;
// UartSendStr("\r\n退出透傳....!");
printf("+++"); Delay1ms_cont(200);
printf("a"); Delay1ms_cont(200);
while(!GPRS_OK) //獲取GPRS CCID號——002 {"AT+CCID\r\n"}; //模組串號指令002
{
printf("AT+ICCID\r\n");
Delay1ms_cont(200);
Uart2_Driver();
Delay1ms_cont(200);
}
GPRS_OK=0;
UartSendStr("\r\nGPRS CCID號碼=");
UartSendStr(SAVE_CCID);
while(!GPRS_OK) //獲取GPRS SIM號 ——003uchar code AT_SIMID[]= {"AT+EGMR=2,7\r\n"}; //SIM卡號指令004
{
printf("AT+IMEI\r\n");
Delay1ms_cont(200);
Uart2_Driver(); //調用串口驅動
}
GPRS_OK=0;
UartSendStr("\r\nSIM號碼=");
UartSendStr(SAVE_SIMID);
Delay1ms_cont(200);
while(!GPRS_OK){
printf("AT+CSQ\r\n"); //{"AT+CSQ \r\n"}; //信號強度指令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); //調用串口驅動
Uart2_Driver();
}
GPRS_OK=0;
while(!GPRS_OK)
{
printf("AT+SOCKA=TCP,您的域名,50000\r\n"); //
Delay1ms_cont(200); //調用串口驅動
Uart2_Driver();
}
printf("AT+S\r\n"); ////透傳模
Delay1ms_cont(200); //調用串口驅動
GPRS_OK=0;
while(!GPRS_OK) //等待GPRS啟動成功
{ //調用串口驅動
Uart2_Driver();
}
GPRS_OK=0;
Delay1ms_cont(100); //調用串口驅動
LoginServer();
}
/* 登陸服務器指令*/
//{"ac":"login", "mid":"867959032063277","pass":"0000000","sim":"898604291618C0801153",
// "did":"000000001","shv":"00", "ssv":"00","chv":"00","csv":"00" }
void LoginServer() //登陸服務器函數包
{
// 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); //等待登陸服務器成功
GPRS_OK=0;LED_GRRS_On;
UartSendStr("\r\n登陸服務器成功!");
}
pdf格式電路原理圖:
4G通信板_RS485_20210707.pdf
(37.45 KB, 下載次數: 50)
2022-1-15 14:30 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|