STM32+DHT11+ESP8266问题

永恒的记忆2019 2016-10-08 12:19:59
各位大神,我想问下,在STM32中,怎么写程序把接串口1的温度传感器的数据通过接串口3的wifi模块发射出去。只需说下大体的程序思路就好。谢谢。

模块:STM32F103+ESP8266+DHT11

注:有做过这方面的代码那就更好了,希望能分享下,最近为这个问题都摸不着头脑。
...全文
4432 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fdvgyg 2018-08-12
  • 打赏
  • 举报
回复
最近正好用这个,告诉下思路
1.stm32跟esp8266是通过usart连接的,发送的是AT指令
2.通过AT指令先把它配置连接到自己服务器,(也可以是其他的,比如一些获取天气信息,可以做个简单万年历,一般获取数据都是json)
3.这个服务器是自己的话,得有点网页知识,以我为例,我网站是用的php,当提交带有参数网页,比如单片机提交adianshi.com/?temp=33...这个网址,
<?php
if(isset($_GET['temp']))
{
更新数据库值
}
?>
后台把temp的值存到数据库,在网页前端把这个值显示出来,下面是简单配置
(每条AT指令后均需要添加换行后再发送)
1. 使用串口发送指令printf("AT+CWMODE=1\r\n")设置模块Wi-Fi应用模式为Station模式;
2. 发送指令printf("AT+RST\r\n")重启模块使应用模式更改生效;
3. 发送指令printf("AT+CWJAP=\”ssid\”,\”pwd\”\r\n")连接AP,账号密码改成自己路由器的;
4. 发送指令printf("AT+CIPMUX=0\r\n")设置模块为单路连接模式,模块默认为单路连接模式;
5. 发送指令printf(""AT+CIPSTART=\”TCP\”,\"adianshi.com\”,80")与服务器建立TCP连接,域名前面一定不能加“http://”!;
6. 发送指令printf("AT+CIPMODE=1\r\n")设置模块传输模式为透传模式;
7. 发送指令printf("AT+CIPSENDr\n")开启透传模式向服务器发送数据,模块收到此指令后先换行后返回“>”,每包数据以20ms间隔区分,每包最大2048字节;
8. 然后发送以下内容向服务器发出HTTP请求获网页内容

printf(%s%d\n,"GET http://adianshi.com?temp=",33)
可以把这个值改成传感器值定时更新
9. 然后模块返回你在网页输出内容信息:
10. 20ms后发送指令+++退出透传模式返回指令模式(后面不要换行);
11. 最后发送指令AT+CIPCLOSE断开模块与服务器的TCP连接。
  • 打赏
  • 举报
回复
这个就是先串口1接收到DHT11的数据后保存起来,再用串口3发送给esp8266发送出去不就行了
m502285640 2018-05-09
  • 打赏
  • 举报
回复
并不需要串口接DHT11的吧 dht11的IO口随便选一个都行的吧
hy2003611 2017-02-17
  • 打赏
  • 举报
回复
1、先能过STM32的IO将DHT11的数据正确读到,这个模块用的比较多,网上有很多现成的例程。(你如果用串口1读到了数据,这一步忽略) 2、利用串口3发送透传命令初始化ESP8266,保存并重启。将8266纳入到局域网中,此时8266已成为服务器端。将你的TCP调试助手连上,成为客户端。 2、读数据一般在串口的中断中进行,因此,你可利用串口1的中断直接将读到的数据从串口3发送出去,ESP8266会原封不动的将数据发送给客户端。 好了。
gotopause 2016-11-03
  • 打赏
  • 举报
回复
楼主说的这个东西其实很简单,一般来说,Wifi透传需要先设置wifi模块,wifi模块有自己的AT指令集,你找到wifi模块的AT指令,通过串口将AT指令发送给wifi模块,设置好以后,就可以直接继续通过串口将数据发送出去了。简单来说就是,通过连接的串口发送的数据,以AT开头的会当做wifi指令,不以AT开头的会当做普通数据
qq_34960974 2016-10-31
  • 打赏
  • 举报
回复
lz和我目前想做的东西一样啊,有好东西希望能分享下
ASASD_000 2016-10-31
  • 打赏
  • 举报
回复
UART/USB转其他总线,可定制
https://shop152327642.taobao.com
lbing7 2016-10-15
  • 打赏
  • 举报
回复
LZ要先淡定,一步步来,从能正确使用STM32开始~
will热爱 2016-10-08
  • 打赏
  • 举报
回复
先确保串口1能够读取到正确的数据,在调试串口3通过wifi发送数据能够成功。这样吗?

3,849

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 无线
社区管理员
  • 无线
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧