ancheel 发表于 2010-11-4 23:51:20

GPRS通信的socket实现示例

最近GPRS通信的项目挺多的,不同场合,用的模块也有几种。为了方便移植程序,我将GPRS通信实现socket。
这里面的两个文件中是从我最初的一个验证程序里提取出来了,有删改,不是商业用的。
因为是商业用途,请恕不能公布完整的源代码,贴出来的这些仅仅只是向大家提供个想法。

点击此处下载 ourdev_595395RA354R.zip(文件大小:6K) (原文件名:GPRS的socket实现示例.zip)

ancheel 发表于 2010-11-4 23:58:44

对了,这里是连接的示例。使用的操作系统是rt-thread

void client_thread_entry(void *parameter)
{
    int sock;
    int i = 0;
    struct sockaddr_in srv_addr;

    sock = socket(AF_INET, SOCK_STREAM, 0);
    if(sock == -1)
    {
      DEBUG_OUT("-->socket fail\n");
      while(1) thread_delay(100);
    }
    DEBUG_OUT("-->socket OK\n");

    DNS_resolve("ancheel.oicp.net", &(srv_addr.sin_addr));
    srv_addr.sin_family = AF_INET;
    srv_addr.sin_port = 8500;

    {
      char _tmp;
      ipaddr2str(srv_addr.sin_addr.s_addr, _tmp);
      DEBUG_OUT("-->sever ip: %s\n", _tmp);
    }

    while(1)
    {
      if(connect(sock, (struct sockaddr *) &srv_addr, 0) == -1)
      {
            DEBUG_OUT("-->connect ancheel.oicp.net fail\n");
            while(1) thread_delay(100);
      }

      DEBUG_OUT("-->connect ancheel.oicp.net OK\n");
      while(1)
      {
            DEBUG_OUT("-->send heart\n");
            send(sock, NULL, 0, 0);
            if(++i == 10)
            {
                i = 0;
                break;
            }
            thread_delay(100*60);
      }
      closesocket(sock);
      thread_delay(100*60);
    }

}

DoDo915 发表于 2010-11-5 07:26:01

Mark

kanprin 发表于 2010-11-5 08:10:06

RTT已经用到商业产品上去啦 ?

ancheel 发表于 2010-11-5 11:28:02

回复【3楼】kanprin
rtt已经用到商业产品上去啦 ?

-----------------------------------------------------------------------

呵呵。去年我就有产品用了RT-thread了。我应该算rt-thread比较早的一批用户吧。

ljt8015 发表于 2010-11-15 13:35:45

花一个通宵完成的简单的12864文本菜单引擎,控件将陆续更新

楼主貌似没有更新呢?

bluecd 发表于 2010-12-2 16:57:55

mark
页: [1]
查看完整版本: GPRS通信的socket实现示例