導航:首頁 > 編程語言 > gprs模塊編程實例

gprs模塊編程實例

發布時間:2023-01-25 23:34:37

❶ GPRS/TCP/IP包用在51單片機中如何編程,有例子也可

首先明確你的gprs模塊是否已經內置了tcpip協議棧,如果內置了,那對於你的mcu就只是串口發點AT指令控制和收發數據而已;如果是沒有內置的,那你就需要自己寫一個tcpip協議軟體來完成對gprs原始數據的解析,需要實現的基本協議有slip,arp,icmp,ip,然後根據你的實際要求,tcp傳輸就實現tcp協議,udp傳輸就實現udp協議,再就是和應有有關的協議,比如http,tftp之類的。 一般應該採用C語言編寫,可以參考tcpip協議大全一書來寫。 也可以使用已經有的tcpip協議棧來移植到你的51mcu上面。對於51,由於其速度比較低,一般可以考慮移植uip,現在網上有很多關於uip在51上面移植好的代碼,你可以下載來參考,編譯環境為keilc。 幫你搜了一篇文章,可以看一看:

❷ 哪位大哥能給一段GPRS模塊通信的程序示例,我用的是sim900A模塊。

#include stdio.h>
#include stdlib.h>
#include string.h>
#include unistd.h>
#include fcntl.h>
#include errno.h>
#include termios.h>

int open_port(void)
{
int fd;
fd = open("/dev/s3c2410_serial1", O_RDWR|O_NOCTTY|O_NDELAY);
if(fd == -1)
printf("Unable to open uart1\n");
else
fcntl(fd, F_SETFL, 0);
return fd;
}
int setup_uart(int fd)
{
struct termios oldtio, newtio;
if((tcgetattr(fd, &oldtio)) != 0)
{
printf("Save old error!\n");
return -1;
}
bzero(&newtio, sizeof(newtio));
newtio.c_cflag |= (CLOCAL | CREAD);
newtio.c_cflag &= ~CSIZE;
newtio.c_cflag &= ~CSTOPB;// 1 stop bit
newtio.c_cflag &= ~PARENB;// No parity
newtio.c_cflag |= CS8; // 8 bits data
cfsetispeed(&newtio, B9600);
cfsetospeed(&newtio, B9600);
//newtio.c_lflag |= (ICANON | ECHO);
//newtio.c_lflag &= ~ECHOE;
//newtio.c_iflag &= ~(IXON | IXOFF | IXANY);
newtio.c_cc[VTIME] = 0;
newtio.c_cc[VMIN] = 0;
tcflush(fd, TCIFLUSH);
if((tcsetattr(fd, TCSANOW, &newtio)) != 0)
{
printf("Set new error!\n");
return -1;
}
}
int main(void)
{
int i;
int fd;
char c,str[200];
fd = open_port();
if(fd == -1)
return 0;
i = setup_uart(fd);
if(i == -1)
return 0;
while(1)
{
for(i=0; i200; i++)
str = '\0';
i = 0;

printf("GPRS-CMD #");
while((c=getchar()) != 10)
{
str = c;
i++;
}
str = 13;
str[i+1] = '\0';
i = write(fd, str, strlen(str));
if(i 0)
printf("write error!");

for(i=0; i100; i++)
usleep(100);
i = read(fd, str, 200);
printf("%s\n", str);
}
}

另一篇和主題相似的已發送往您的郵箱,請查收.

❸ 怎樣用單片機C語言控制GPRS模塊發AT指令

我也在玩gprs,這個問題我也碰到,現已解決,
做法是:
命令字元對應的ASC||值依次向串口發送
如at+cmgf=1<CR>這個命令,就應向串口依次發送「at+cmgf=1」這個字元串中每個字元對應的ASC||值的16進制數,<CR>是回車鍵,對應ASC||值是13,十六進制是0D

須要注意的是,每發一條指令後要有一定的延時。
如不明白

❹ 單片機控制GPRS模塊發簡訊,求程序,高分追加!

當然可以了 GPRS模塊通過串口將數據交給單片機,數據格式視不同的廠家的GPRS模塊而定,那麼單片機如何讀取GPRS模塊的簡訊呢? 1.可以通過AT指令設置GPRS模塊,讓GPRS模塊收到簡訊後立即將簡訊內容交給單片機,也可以通過AT指令設置GPRS模塊,收到簡訊後先存到SIM(SM)卡或模塊(ME),然後單片機發AT指令向GPRS模塊讀取簡訊內容 2.如何解析簡訊? 先把模塊接到PC,用串口軟體看下簡訊內容格式,然後編程去進行AT操作,簡訊字元集可選擇UCS2或GSM,國內部分老舊手機不支持GSM字元集,建議解析UCS2字元集! .

閱讀全文

與gprs模塊編程實例相關的資料

熱點內容
蘋果平板如何開啟隱私單個app 瀏覽:700
空調壓縮機一開就停止 瀏覽:526
如何下載虎牙app 瀏覽:847
日語年號的演算法 瀏覽:955
dev裡面的編譯日誌咋調出來 瀏覽:298
php函數引用返回 瀏覽:816
文件夾和文件夾的創建 瀏覽:259
香港加密貨幣牌照 瀏覽:838
程序員鼓勵自己的代碼 瀏覽:393
計算機網路原理pdf 瀏覽:752
吃雞國際體驗服為什麼伺服器繁忙 瀏覽:94
php中sleep 瀏覽:490
vr怎麼看視頻演算法 瀏覽:86
手機app如何申報個人所得稅零申報 瀏覽:694
如何截獲手機app連接的ip 瀏覽:331
冰箱壓縮機是否需要電容 瀏覽:346
python列表每一行數據求和 瀏覽:274
自己有一台伺服器可以玩什麼 瀏覽:657
社會學波普諾pdf 瀏覽:584
解壓做食物的小視頻 瀏覽:759