完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在使用物联网设备(使用 atmega1824p),并想使用 AT 命令。
它作为客户端工作。.但是,我也希望它用作服务器(例如,当我需要创建/更新 ssid 和密码时)。我正在使用 ISR 取回回复。 以下是流程: 1. initwifi -> 2. setCWMode=3 -> 3. APJoin with SSID and password (set CWDHCP=1,1) -> 4. setMux=1 -> 5. set softAP-> 6. create server (AT+CIPSERVER) -> 7. set IP (e.g. 192.168.4.1) 流程是否正确?如果我想检查是否已经加入了 Ap(所以我不需要每次都加入 APJoin),在我将 CWHDCP 设置为 3 后,我会查询 getiP(AT CIFSSR)? 对于回复,我正在使用中断 (ISR)。当我知道我在接入点时,我检查 ISR 的“IPD:connect_id,data”,做一个 CIPSEND 来connect_id网页?是否有适当的过程。 我有上述工作。但有时,我在设置 IP 时失败了,有人有什么想法吗?一旦我设置 IP 失败,我似乎无法将 ISR 作为网络服务器接收(我确实检查了 sei()) |
|
相关推荐
1个回答
|
|
根据您提供的流程,您的目标是使用ATmega1824p作为物联网设备,既可以作为客户端连接到WiFi网络,也可以作为服务器接收其他设备的连接。以下是对您流程的一些建议和解答:
1. initwifi:初始化WiFi模块。 2. setCWMode=3:设置设备为AP(Access Point)模式,允许其他设备连接。 3. APJoin with SSID and password:这一步应该是连接到一个现有的WiFi网络,而不是创建一个新的AP。如果您希望设备作为服务器,您应该使用setSoftAP命令创建一个新的AP。 4. setMux=1:设置多连接模式,允许设备同时作为客户端和服务器。 5. set softAP:创建一个新的AP,允许其他设备连接。 6. create server (AT+CIPSERVER):创建TCP服务器,允许其他设备通过TCP连接。 7. set IP (e.g. 192.168.4.1):设置设备的IP地址。 关于您的问题,如果您想检查设备是否已经加入了AP,您可以使用以下命令: - AT+CWJAP_CUR:查询当前连接的AP信息。 如果您希望设备在已经连接到AP的情况下不重复连接,您可以在连接之前检查设备是否已经连接到AP。如果已经连接,您可以跳过APJoin步骤。 此外,您还可以考虑以下步骤来优化您的流程: 1. 在初始化WiFi模块后,检查设备是否已经连接到AP(使用AT+CWJAP_CUR)。 2. 如果设备已经连接到AP,跳过APJoin步骤。 3. 如果设备没有连接到AP,执行APJoin步骤,然后继续执行setCWMode、setMux、setSoftAP等步骤。 这样,您的设备就可以根据当前的网络状态自动选择是否需要重新连接到AP,从而提高效率。 |
|
|
|
只有小组成员才能发言,加入小组>>
545浏览 6评论
457浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
438浏览 5评论
441浏览 4评论
411浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 13:27 , Processed in 0.782841 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号