OpenEdv-开源电子网

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

求教STM32单片机ESP8266 WIFI调试遇到问题

[复制链接]

10

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
131
金钱
131
注册时间
2016-3-16
在线时间
33 小时
发表于 2023-7-22 20:04:24 | 显示全部楼层 |阅读模式
开始准备使用串口命令1,2分别打开关闭红灯,串口命令3,4分别打开关闭绿灯,串口命令5,6分别打开关闭蜂鸣器。测试过程中发现,会出现异常情况,将命令换成下面程序的特殊命令,解决此问题,求教为啥。
void USART2_IRQHandler(void)                        //串口2中断服务程序
{


        if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)  //接收中断
        {
                rx_data2=USART_ReceiveData(USART2);//(USART1->DR);        //读取接收到的数据
                switch(rx_data2)
                        {
                                case '(':
                                        LED1=0;  打开红灯
                                        break;
                                case ')':
                                        LED1=1;关闭红灯
                                        break;
                                case '&': 打开绿灯
                                        LED2=0;
                                        break;
                                case '*':
                                        LED2=1;关闭绿灯
                                        break;
                                case '$':
                             BEEP=0;打开蜂鸣器
                                        break;
                                case '#':
                                        BEEP=1;关闭蜂鸣器
                                        break;
                        }

        }
        USART_ClearFlag(USART2,USART_FLAG_TC);      
}


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

使用道具 举报

51

主题

2165

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10652
金钱
10652
注册时间
2017-4-14
在线时间
2780 小时
发表于 2023-7-23 13:16:43 | 显示全部楼层
放不行的代码吧 这个不会有问题的
回复 支持 反对

使用道具 举报

10

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
131
金钱
131
注册时间
2016-3-16
在线时间
33 小时
 楼主| 发表于 2023-7-23 15:16:02 | 显示全部楼层
nashui_sx 发表于 2023-7-23 13:16
放不行的代码吧 这个不会有问题的

通测试,用现成串口助手发送接受数据一切正常,用无线WIFI发现会频率进入串口中断,但是手机APP没有发送数据。求教。
回复 支持 反对

使用道具 举报

51

主题

2165

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10652
金钱
10652
注册时间
2017-4-14
在线时间
2780 小时
发表于 2023-7-23 17:37:47 | 显示全部楼层
bbxyliyang 发表于 2023-7-23 15:16
通测试,用现成串口助手发送接受数据一切正常,用无线WIFI发现会频率进入串口中断,但是手机APP没有发送 ...

可能性也不大,没发送咋可能一直有数据过来呢
回复 支持 反对

使用道具 举报

10

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
131
金钱
131
注册时间
2016-3-16
在线时间
33 小时
 楼主| 发表于 2023-7-23 17:40:52 | 显示全部楼层
nashui_sx 发表于 2023-7-23 17:37
可能性也不大,没发送咋可能一直有数据过来呢

对的,就是奇怪,用串口助手通信一切正常,接上ESP8266 WIFI模块,就会频繁进入接受中断。
回复 支持 反对

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2023-7-24 11:12:04 | 显示全部楼层
MCU串口需要接收到完整的字节帧才会触发中断,你debug看看串口收到了什么?还是说串口开了其他中断导致的
回复 支持 反对

使用道具 举报

10

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
131
金钱
131
注册时间
2016-3-16
在线时间
33 小时
 楼主| 发表于 2023-7-25 07:58:29 | 显示全部楼层
阿侑kevin 发表于 2023-7-24 11:12
MCU串口需要接收到完整的字节帧才会触发中断,你debug看看串口收到了什么?还是说串口开了其他中断导致的

好的,谢谢您
回复 支持 反对

使用道具 举报

10

主题

30

帖子

0

精华

初级会员

Rank: 2

积分
131
金钱
131
注册时间
2016-3-16
在线时间
33 小时
 楼主| 发表于 2023-7-25 10:04:12 | 显示全部楼层
发现问题所在,我住程序里面给串口发送数据使用到AT+CIPSEND=0,35,模块会给单片机返回
AT+CIPSEND=0,35
OK
>
busy s...
Recv 35 bytes
SEND OK
同理初始化单片机发生指令初始化给单片机,单片机收到里面可能包含了1,2,3,4,5,6这些字符,所以会出现异常。
测试发现,单片机收到服务器的数据为+IPD,0,1:1  单片机实际接受到的数据,所以程序需要增加接收到完整的字节帧才会触发中断处理程序。本贴完结,谢谢各位帮助。

回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-24 04:25

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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