rt-thread 学习记录

在嵌入式系统中,遇到ESP8266模块与Finsh控制台交互故障,尝试调整初始化顺序导致Finsh正常但AT设备无法工作。最终发现应用层初始化AT设备是正确解决方案,使两者恢复正常交互。

加了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.

所以:报错->改->报错->回退->解决------>懵逼!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值