加了AT-DEVICE包,使用了esp8266,下载后AT设备工作正常,但是Finsh界面无法交互,敲键盘没反应(到现在不知道怎么回事)。
尝试解决:
1.查看是否串口冲突
未冲突 Finsh–>uart1
ESP8266–>uart3
2. 尝试改变esp8266初始化顺序
static int esp8266_device_register(void)
{
struct at_device_esp8266 *esp8266 = &esp0;
return at_device_register(&(esp8266->device),
esp8266->device_name,
esp8266->client_name,
AT_DEVICE_CLASS_ESP8266,
(void *) esp8266);
}
//INIT_APP_EXPORT(esp8266_device_register);
INIT_DEVICE_EXPORT(esp8266_device_register);
将初始化由应用改为设备后,发现finsh正常可交互,但是死活AT设备又不正常,报错如下
msh >
\ | /
- RT - Thread Operating System
/ | \ 4.0.2 build Apr 26 2021
2006 - 2019 Copyright by rt-thread team
[E/at.dev] get AT device class(1) failed. //报错-.-
[I/sal.skt] Socket Abstraction Layer initialize success.
后知后觉放到应用层初始化才对,遂改回。然后
msh >
\ | /
- RT - Thread Operating System
/ | \ 4.0.2 build Apr 26 2021
2006 - 2019 Copyright by rt-thread team
[I/sal.skt] Socket Abstraction Layer initialize success.
[I/at.clnt] AT client(V1.3.0) on device uart3 initialize success.
msh >[I/at.dev.esp] esp0 device wifi is disconnect.
[I/at.dev.esp] esp0 device wifi is connected.
[I/at.dev.esp] esp0 device network initialize successfully.
所以:报错->改->报错->回退->解决------>懵逼!!!!!
在嵌入式系统中,遇到ESP8266模块与Finsh控制台交互故障,尝试调整初始化顺序导致Finsh正常但AT设备无法工作。最终发现应用层初始化AT设备是正确解决方案,使两者恢复正常交互。
3159

被折叠的 条评论
为什么被折叠?



