需要准备的硬件

使用代码源码位置:

功能:

向指定IP和端口发送数据

测试流程:

  1. 修改为自己需要发送到的IP和端口,这里已经默认大家都懂了公网IP方面知识,

    如果没有公网或者不会用花生壳的同学,请去参考学习电脑调试MC20的GPRS功能章节的知识
code char TCPServer[] = "103.44.145.245";		//TCP服务器地址
code char Port[] = "10380"; //端口
  1. 用keil软件编译通过生成新的hex文件,然后下载到自己的51单片机,记住需要11.0592MHz晶振的板子,12MHz不行
  2. 下载后打开自己的板子的电脑对应的串口调试助手的com,可以看到单片机发送出来的AT指令,这里一直发送AT因为我们的MC20模块还没和单片机连接,并没通讯上,代码也不会向下继续运行其它指令

  3. STC89C52和MC20连接

    mc20的V_IO,GND,GSM_TX,GSM_RX分别接STC89C52的5V,GND,P3.0,P3.1



    然后正常给MC20供电,然后按下启动按键3秒松开启动MC20模块,当我们看到MC20的NET指示灯开始闪烁。我们会看到以下的串口界面。

    另外一定要记住下载单片机程序的时候要拔掉单片机和MC20的连接,要不会和下载程序冲突影响下载。

    下载后再接线



    而在自己建立的服务器端就能看到发送过来的数据了



    因为这个IP和端口是远程的,在世界尽头都可以,只要是公网IP,相当于可以把数据发送到任何一个有公网IP的网络。也就是实现了没有“距离限制”的远程传数据

3.3 使用STC89C52控制MC20通过GPRS远程发送数据的更多相关文章

  1. 3.6.使用STC89C52控制MC20解析GPS的经纬度数据上传到指定服务器

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  2. 3.4 使用STC89C52控制MC20解析GPS的经纬度数据在LCD1602上显示

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  3. 3.2 使用STC89C52控制MC20发送短信

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  4. 3.1 使用STC89C52控制MC20拨打电话

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  5. 4.3 使用STM32控制MC20进行GPRS通讯

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  6. 2.3 使用ARDUINO控制MC20进行GPRS的TCP通讯

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  7. 1.8 使用电脑测试MC20的GPRS功能

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  8. Linux-C实现GPRS模块发送短信

    “GSM模块,是将GSM射频芯片.基带处理芯片.存储器.功放器件等集成在一块线路板上,具有独立的操作系统.GSM射频处理.基带处理并提供标准接口的功能模块.GSM模块根据其提供的数据传输速率又可以分为 ...

  9. sim800 gprs发送数据的AT流程

    switch(send_flag) { case 1: uart_send(&huart4,"AT\r\n",4); //AT break; case 2: uart_se ...

随机推荐

  1. Java线程安全同步容器

    线程安全同步容器(使用 synchronized关键字) 1.ArrayList->Vector,Stack 2.HashMap->HashTable(key.value不能为null) ...

  2. Atitit.协议的转换smb2http 原理

    Atitit.协议的转换smb2http 原理 1. 协议的转换原理 stream的转换.. 2. 常用协议转换的情形 android通过SMB访问局域网共享文件 作者::  ★(attilax)&g ...

  3. Atitit.收银机小票打印功能的设计  java php c#.net版本

    Atitit.收银机小票打印功能的设计  java php c#.net版本 1. 1. 打印方式有4种:1 1.1. 1.1. 一是不经过任何修改,直接调用javascript中的window.pr ...

  4. Shift Register

    /*************************************************** /  Shift Register module /  Programing by seong ...

  5. Angularjs学习笔记11_手工初始化

    http://my.oschina.net/fuckBAT/blog/375579 Angular的编译机制允许开发人员给浏览器添加新的Html语法,允许我们添加一些html节点,attribute, ...

  6. 237. Delete Node in a Linked List【easy】

    237. Delete Node in a Linked List[easy] Write a function to delete a node (except the tail) in a sin ...

  7. 125. Valid Palindrome【easy】

    125. Valid Palindrome[easy] Given a string, determine if it is a palindrome, considering only alphan ...

  8. java 中的valueOf方法和强转

    case1:Object 对象转String 需要强调的是String.valueOf()方法,当参数为类型是object,且值时null的时候他的处理方式 public static String ...

  9. imx6中iomux IO复用

    IOMUX Controller (IOMUXC) IO多路复用控制器1.overviewThe IOMUX Controller (IOMUXC), together with the IOMUX, ...

  10. Python tkinter 用键盘移动没反映修改代码

    from tkinter import *   def movetriangle(event):     if event.keysym == 'Up':         canvas.move(a1 ...