esp8266 at接收数据中断时间_A project based on STM32 & ESP8266

emmmm, 经过多日的学习探索+尝试,算是完成了一个勉强算得上的小项目。

硬件:

STM32F103C8T6(标准库) 、ESP8266(non-OS SDK) 、串口屏(陶晶弛)、 DHT11、OLED(iic)

功能:

STM32采集DHT11的温湿度数据,并将温湿度数据发送给串口屏与ESP8266。
串口屏显示实时温湿度数据及曲线图。8266则会连接WiFi并连接到百度天工平台,然后将串口接收的数据上传到百度天工平台。
同时在百度天工平台创建了简单的温湿度仪表盘,将温湿度数据可视化。(有网的地方都可查看实时的温湿度数据)

Main:

把个人看来比较重要的几个部分拿出来说一说。这篇文章一方面希望可以帮助和我差不多的小白少走点弯路,一方面就想记录记录经过多日学习调试的成果!
废话少说! 开始吧。

ESP8266 non-OS SDK 串口接收

想要处理串口接收的数据,只需找到uart.c 下的【uart_recvTask】函数。我们需要做的只是【新建一个缓存数组、将接收的数据赋值给临时数组、处理接收数据】。

8266接收数据说明:8266接收到的数据以一个字节为基本单位。(STM32也如此) [一个字节]----[0~255]----[0x00~0xFF]

举个例子:

以下方串口结束数据处理程序为例
stm32发送给8266的数据为 “DATAXXXX”,会被保存到【cache[]】中 DATA --- 设置的数据标识
8266会判断接收到的一串数据 前四个字节是否为DATA, 如果是则表明该串数据为STM32发送的温湿度数据。 XXXX --- 四个字节的温湿度数据
一个温度数据 =【整数部分+小数部分】
第一个字节代表整数部分,第二个字节代表小数部分。
//串口使用uart0   (uart1只能发送)
//串口接收处理只需在如下【uart_recvTask】函数
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值