桌面和核心板的传输


按照教程接好电路后不出现返回信息的可能原因:

  • rx、tx接反
  • 波特率等信息未严格按要求设置
    1. bode rate:115200
    2. data bit:8
    3. stop bit:1
    4. 无校验位

image-20220117182345771

UDP传输协议


这次把服务器弄好了,为了用这一个UDP的调试工具,把服务器的系统换成了Windows。但是,还是没有接受到数据,不知道是什么原因。这边显示了发送数据成功,但是服务器上并没有介绍到数据,不知道是那里的问题,感觉要不是指令的问题,要不就是云端的问题。这边的硬件应该是调试通了,明天再看看吧。

问题找到了,就是云端的问题。

步骤(BC26和阿里云平台通过UDP协议通讯)


  1. 将移远的BC26模块的串口用USB转TTL模块与电脑相连接(电脑上需要先安装CH340驱动和串口调试助手进行串口调试),此部分可参照创思的B站视频[^1]。注意串口的方向,自己试一下,有可能是串口方向不对导致与模块无法通信。

    与模块通信成功,这里使用的软件是XCOM串口调试助手

  2. 在测试完成本地没有问题之后,进行ALI云的设置。首先是创建一个ECS服务器,网上有很多的教程,用学生身份可以方便地注册一个[^2]。注意,注册的时候可以选择熟悉的服务器系统。这里debug用的是windows下的UDP调试软件[^3](在创思的视频中也是用到了这个软件[^1]),因此,在申请服务器的时候,我也选择了Window2016 Server版本。

    已近申请了服务器,点击控制台进入

    进入控制台

    进入安全组

  3. 在注册完成之后,最关键的一步是要在阿里云上把安全设置中的允许UDP设置以下,否则是接收不到相关的信息的,主要参考的步骤是这个[^4]。

    添加信息

  4. 注册完之后,在服务器部署方面基本上就完成了。接下来是发送AT指令进行验证,这里主要也是参照的创思的教程[^1],但是需要注意的是要用创思官方提供例程里面未被注释的指令,注释的指令不知道为什么不能用(很多其他的blog里面都是用的AT+QSOC=1,2,1这一条指令,但是我这里的不行,可能是运营商的问题,不太清楚)。

    1
    2
    3
    AT+QIOPEN=1,0,"UDP","12.323.3.2",1001,0,1	//中间更换为你的服务器的IP地址
    AT+QISEND=0,"11"
    hello world
  5. 最后就可以看到结果了。

    在服务器上,安装并打开这个软件,创建UDP

    服务器上接受到数据的截图

  6. 利用创思提供的源码里面关于发送

[^ 0]: [AT指令之 TCP/IP 命令 - abatei - 博客园 (cnblogs.com)](https://www.cnblogs.com/abatei/p/12129966.html#:~:text=当通过 AT%2BQIOPEN 打开一个 socket 服务,可通过参数 ,来指定数据访问模式。 在 socket 服务开始后, AT%2BQISWTMD 可用于改变数据访问模式。)
[^1]: STM32开发板NB-IOT移远BC26 NB模块通物联网NBIOT阿里云MQTT 电脑看_哔哩哔哩_bilibili
[^2]: 2020阿里云学生服务器申请地址购买攻略及配置选择-阿里云开发者社区 (aliyun.com)
[^3]: TCP、UDP调试器 SocketToolV4.1 - springsnow - 博客园 (cnblogs.com)
[^4]: 基于UDP上传数据到阿里云-阿里云开发者社区 (aliyun.com)