OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8812|回复: 12

STM32怎么使用4G网络模块

[复制链接]

2

主题

8

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2018-11-23
在线时间
3 小时
发表于 2018-11-23 12:55:15 | 显示全部楼层 |阅读模式
希望各位大佬路过能稍微指点一下,谢谢各位大佬!!问题如下:
想要用STM32F4做主控板,其中的逻辑控制内容是简单控制电机,所以只用裸机,不用操作系统;
但是,想用华为的4G模块与远程的手机APP实现通信,遇到几个问题没想明白。

1,4G模块跟手机APP之间的连接怎么确定?通过IP地址吗?4G网络的IP地址似乎又不同电脑上的IP地址?分内网外网?

2,4G模块通过串口跟STM32控制板连接,使用AT指令控制。4G模块已经集成物理层、链路层、网络层的协议,但是传送的内容应该是什么样子的呢?比如我想从STM32上发个消息:“GO”给手机APP,那边应该怎么写消息??对整个数据传输流程不是很明白,有没有大佬能讲讲?



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

14

主题

204

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2443
金钱
2443
注册时间
2017-9-13
在线时间
559 小时
发表于 2018-11-24 10:00:15 | 显示全部楼层
1. 你需要自己在公网上搭建一个服务器,服务器有固定IP,4G模块和手机都连接此服务器。4G模块在注册成功后,核心网会分配IP,此IP地址为4G模块和核心网通信所用,你可以认为是“内网”,核心网与你搭建的公网服务器通信用的IP可以认为是“外网”,内外网IP的映射关系由核心网维护,你不需要关心。
2. 使用4G模块支持的AT命令格式进行传送,例如:AT+USERDATA = GO,只是简单举个例子,具体命令格式需要查看4G模块手册。4G模块将消息发送到服务器,手机APP在服务器上取数据。
回复 支持 1 反对 0

使用道具 举报

3

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
185
金钱
185
注册时间
2018-4-22
在线时间
39 小时
发表于 2018-11-24 09:49:23 | 显示全部楼层
4G设备在登录上网的时候会获取IP地址, 但是这个IP地址应该是不确定的,所以通讯必然由移动端发起,他先和IP地址固定的 服务器握手,然后服务器就知道这个4G设备的IP地址了,当然可能还需要令牌,token这些来确保时效性. 如果服务器重启也需要4G设备重新登录
回复 支持 1 反对 0

使用道具 举报

2

主题

8

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2018-11-23
在线时间
3 小时
 楼主| 发表于 2018-11-23 12:56:22 | 显示全部楼层
使用环境是荒郊野岭,没有网线,只能使用无线网络
回复 支持 反对

使用道具 举报

37

主题

246

帖子

0

精华

高级会员

Rank: 4

积分
775
金钱
775
注册时间
2016-9-10
在线时间
311 小时
发表于 2018-11-23 13:14:41 | 显示全部楼层
你还得有个服务器吧,模块和手机APP都连到一个服务器,通过服务器转发
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2018-11-23
在线时间
3 小时
 楼主| 发表于 2018-11-23 14:59:03 | 显示全部楼层
本帖最后由 铛铛铛铛 于 2018-11-23 19:53 编辑
1491430114 发表于 2018-11-23 13:14
你还得有个服务器吧,模块和手机APP都连到一个服务器,通过服务器转发

我知道TCP/UDP、IP协议是集成在4G模块上了,但是STM32跟手机又怎么识别彼此才不会把数据包发错对象?
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2018-11-23
在线时间
3 小时
 楼主| 发表于 2018-11-24 10:12:10 | 显示全部楼层
dqlspzl 发表于 2018-11-24 09:49
4G设备在登录上网的时候会获取IP地址, 但是这个IP地址应该是不确定的,所以通讯必然由移动端发起,他先和IP地 ...

非常感谢!

也就是说,在这个通信过程中服务器是必不可少的吗?作用是提供一个公网地址给2个终端,才能彼此通信。

如果想要实现即时通信,,是否能让服务器主动把数据发送到终端?
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2018-11-23
在线时间
3 小时
 楼主| 发表于 2018-11-24 10:27:22 | 显示全部楼层
HCHDaLeiGe 发表于 2018-11-24 10:00
1. 你需要自己在公网上搭建一个服务器,服务器有固定IP,4G模块和手机都连接此服务器。4G模块在注册成功后 ...

非常感谢!

还有一个问题,我了解到服务器有推送的功能,这个是普遍功能吗?免费的云服务器行不行?

我的想法是这样:如果4G设备采集的数据有变,则传输到服务器,服务器接收到之后再推送到手机。反之,手机将控制命令发送到服务器,服务器接收到之后推送给4G设备。

回复 支持 反对

使用道具 举报

3

主题

45

帖子

0

精华

初级会员

Rank: 2

积分
185
金钱
185
注册时间
2018-4-22
在线时间
39 小时
发表于 2018-11-24 10:27:55 | 显示全部楼层
铛铛铛铛 发表于 2018-11-24 10:12
非常感谢!

也就是说,在这个通信过程中服务器是必不可少的吗?作用是提供一个公网地址给2个终端,才 ...

注册IP地址的过程是4G设备在 网络运营商 上面注册IP地址的过程.在4G设备每次注册上网的时候获取到的地址是不同的.  你打电话也需要知道对方的电话号码,如果两方的电话号码都不是固定的你就无法和对方通讯,所以服务器是不可避免的,可以用别人的,也可以自己弄一个.
回复 支持 反对

使用道具 举报

14

主题

204

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2443
金钱
2443
注册时间
2017-9-13
在线时间
559 小时
发表于 2018-11-24 10:59:01 | 显示全部楼层
铛铛铛铛 发表于 2018-11-24 10:27
非常感谢!

还有一个问题,我了解到服务器有推送的功能,这个是普遍功能吗?免费的云服务器行不行?

免费的云服务器基本都支持推送功能,我了解到的云服务器的做法是将4G模块访问的服务器和手机APP访问的服务器分开,两个服务器之间存在交互,个人感觉还是查询的容易一些,推送也可以,涉及到的协议不同和开发量不同
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2018-11-23
在线时间
3 小时
 楼主| 发表于 2018-11-24 12:12:17 | 显示全部楼层
HCHDaLeiGe 发表于 2018-11-24 10:59
免费的云服务器基本都支持推送功能,我了解到的云服务器的做法是将4G模块访问的服务器和手机APP访问的服 ...

查询的话,终端耗电伤不起啊。。控制命令有实时性要求所以得不间断的查询。。
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2018-11-23
在线时间
3 小时
 楼主| 发表于 2018-11-24 12:13:30 | 显示全部楼层
dqlspzl 发表于 2018-11-24 10:27
注册IP地址的过程是4G设备在 网络运营商 上面注册IP地址的过程.在4G设备每次注册上网的时候获取到的地址 ...

好,谢谢了!
回复 支持 反对

使用道具 举报

14

主题

204

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2443
金钱
2443
注册时间
2017-9-13
在线时间
559 小时
发表于 2018-11-24 13:14:01 | 显示全部楼层
铛铛铛铛 发表于 2018-11-24 12:12
查询的话,终端耗电伤不起啊。。控制命令有实时性要求所以得不间断的查询。。

你说的是终端啊,那是需要推送的,我以为你说的是手机APP和服务器,你的4G模块支持省电模式吗?据我所知LTE好像没有这方面的功能
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-2 05:53

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表