初级会员

- 积分
- 65
- 金钱
- 65
- 注册时间
- 2019-6-20
- 在线时间
- 15 小时
|
20金钱
本帖最后由 a995167066 于 2020-4-6 11:13 编辑
首先请大佬们先看我的配置情况
一个ATK-ESP8266通过TTL转串口连接电脑
发送指令配置为TCP Server
具体指令:
- 1. AT+CWMODE=2 //AP模式
- 2. AT+RST
- 3. AT+CWSAP="Transtest","12348765",1,4
- 4. AT+CIPMUX=1 //开启多连接
- 5. AT+CIPSERVER=1,8086 //开启SERVER模式,端口为8086
- 6. AT+CIPSTO=1200
复制代码
另一个ATK-ESP8266连接到STM32的最小系统板
具体配置:
- 1. AT+CWMODE=1 //STA模式
- 2. AT+RST
- 3. AT+CWJAP="Transtest","12348765"
- 4. AT+CIPMUX=0
- 5. AT+CIPSTART="TCP","192.168.4.1",8086 //建立TCP连接到“192.168.4.1”,端口:8086
- 6. AT+CIPMODE=1 //开启透传模式
复制代码
上述配置完成后,
在STM32里面写了程序,大概如下
esp8266_send_cmd("AT+CIPSEND","ok",10); //开始传输
while(1)
{
USART2_printf("1250#"); //我是用STM32的串口2来控制模块的
delay_ms(20);
}
接下来是我的问题:
在STM32程序里面,每发一次数据“1250#”都会由20ms延迟,即发送频率为50Hz
PC端的串口调试助手给我的反馈是能收到,数据格式类似这样
- +IPD,0,35:1250#1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,35:1250#1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
- +IPD,0,30:1250#1250#1250#1250#1250#1250#
复制代码
当我把延迟修改为10ms时,即我想让他发送快一点,频率为100Hz
然后PC端的串口调试助手的反馈就是,(XCOM我打开了显示时间戳)大概是每9秒收到2大段这样的数据(下面仅给出了一大段):
- +IPD,0,1460:1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#1250#
复制代码
想请教下大佬们为什么会出现这种情况?
我自己的思考:
1.我的TTL转USB模块问题?
感觉可能性不大?因为上面有个指示灯,每收到一次数据,RX那个LED灯会亮一下,在第二种情况中,的确是每9秒亮一下。
2.我单片机性能问题?
型号为STM32F103C8T6,暂时来说这个嫌疑比较大,希望大佬们帮我分析一下是不是这个原因
3.ATK-ESP8266模块问题?
我找了正点原子官方给的文档,我在里面没看到 这类问题的描述,所以这个嫌疑也比较大
综上 跪求大佬们帮帮忙呀!!!
|
|