OpenEdv-开源电子网

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

esp8266串口接收数据的问题

[复制链接]

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2016-7-26
在线时间
19 小时
发表于 2016-8-2 17:18:27 | 显示全部楼层 |阅读模式
1金钱
求助, 这是我们学校的科研训练项目,图片上是部件连接原理图。温湿度计DHT11通过单总线连到STM32F103。串口3链接WIFI  ESP8266。由于第一次接触这个,所以我从网上找到了两段程序。一段是STM32可通过串口1接受温湿度计数据,另一段是STM32控制WIFI。
现在的问题是:
编写WIFI代码时,是否可以不配置串口3,直接从串口1读取数据。
无标题.png

最佳答案

查看完整内容[请看2#楼]

可以啊,WIFI接串口1就可以了.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

558

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
164897
金钱
164897
注册时间
2010-12-1
在线时间
2100 小时
发表于 2016-8-2 17:18:28 | 显示全部楼层
可以啊,WIFI接串口1就可以了.
回复

使用道具 举报

5

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2016-7-26
在线时间
19 小时
 楼主| 发表于 2016-8-4 08:40:44 | 显示全部楼层
正点原子 发表于 2016-8-2 17:18
可以啊,WIFI接串口1就可以了.

这个电路已经固定了,电路板也弄出口来了。代码是在别人的基础上改的,
现在的问题就是在写wifi接收数据时,可以直接写从串口1读取么,下面是代码
*******************************************************************
*        中断方式接收数据
*******************************************************************/  
void USART1_IRQHandler(void)
{
        if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //接收到数据          
        {         
                 AT_Receive[AT_RecCnt] =USART_ReceiveData(USART1);         //读取接受到数据
                AT_RecCnt+=1;
                RxTimeDelay=0;
        }                                                                                 
}
回复

使用道具 举报

8

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2016-7-16
在线时间
31 小时
发表于 2016-8-6 08:26:36 | 显示全部楼层
楼主可以看下你的源代码么?
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2020-4-6
在线时间
6 小时
发表于 2020-6-5 20:38:17 | 显示全部楼层
楼主这个问题解决了么?你wifi接收数据时,直接从串口1读取么?
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2020-12-19
在线时间
11 小时
发表于 2020-12-19 21:42:13 | 显示全部楼层
DHT11_Read_Data(&temperature,&humidity);        //读取温湿度值
                              //delay_ms(500);
                                                adcx=Lsens_Get_Val();
                              //delay_ms(500);
                                               
                                               
                                                sprintf((char*)p,"温度%d\r\n",temperature);//测试数据
                                                sprintf((char*)p+6,"湿度%d\r\n",humidity);//测试数据
                                                sprintf((char*)p+12,"光强%d\r\n",adcx);//测试数据
                                               
                                                Show_Str(30+54,100,200,12,p,12,0);
                                               
                                                atk_8266_send_cmd("AT+CIPSEND=0,25","OK",200);  //开始透传
                                               
                                                delay_ms(200);
                                                atk_8266_send_data(p,"OK\r\n",1000);  //发送指定长度的数据
                                                timex=100;
esp8266模块配置为AP服务器模式,给手机发送数据为啥出现AT指令,还有一些乱七八糟的,程序就只是修改了历程的wifiap.c文件。
像这样:+ ++AT温度23湿度19光强20
+++AT温度23湿度20光强20

这个问题有大佬知道吗?
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-5-29 05:11

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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