蓝牙 HC-05 仅针对 INQ 命令发送错误 1F

Таи*_*сия 2 error-handling bluetooth arduino rssi at-command

我的新蓝牙 HC-05 模块有问题。在 AT 模式下,它与我需要的所有命令完美配合......除了 INQ。我试图事先发送一大堆其他命令:

AT+INIT
OK
AT+ORGL
OK
AT+ROLE=1
OK
AT+CLASS=0
OK
Run Code Online (Sandbox Code Playgroud)

他们都工作得很好。我也尝试更改 IAC 和 INQM 设置...但模块的答案始终相同:

AT+INQ
ERROR:(1F)
Run Code Online (Sandbox Code Playgroud)

在这里阅读了相关主题并尝试按 HC-05 上的按钮,正如它在那里推荐的那样,但是 - 也没有结果。我有来自同一家商店的三个模块,它们都以相同的方式工作

Pre*_*ten 5

我有一个带有 3.0-20170601 的 HC-05,我昨晚设法绑定到了一个奴隶。事实证明,v3 有两种 AT 模式。

第一种是在连接电源时按住按钮。LED 将缓慢闪烁,您可以以 38400 波特连接。但这就像配置模式,AT+INQ不可用。

在这种模式下,我执行了以下命令:

AT
AT+UART
AT+RMAAD
AT+ROLE=1
Run Code Online (Sandbox Code Playgroud)

(按住按钮)

AT+RESET
Run Code Online (Sandbox Code Playgroud)

(设备重启后松开按钮,指示灯慢闪)

AT+CMODE=1
AT+INQM=0,5,5
AT+PSWD="9999"
Run Code Online (Sandbox Code Playgroud)

AT 应该给出 OK 作为知道连接正在工作的答案

AT+UART 将显示配置的波特率。默认值为 9600。

AT+RMAAD 清除所有保存的连接

AT+ROLE=1 设置为master

AT+RESET 重启设备改为master

AT+CMODE=1 接受各种设备

AT+INQM=0,5,5 在标准模式下查询,最大连接数为 5 或 5 秒

AT+PSWD="9999" 设置pin码9999,改成你需要的pin

在此之后,是时候更新 arudino 代码,以便它连接到配置的波特率。它会像

BTSerial.begin(9600);
Run Code Online (Sandbox Code Playgroud)

...或者您可能将波特率设置为什么值。然后刷新你的arduino。

现在进入非常烦人的第二个 AT 命令模式。

无需按住按钮即可通电。您将获得快速的眨眼速度。通电后,按住按钮。LED 将继续快速闪烁,但当按下按钮时,您现在可以以配置的波特率连接到设备。所以打开串口监视器,输入 AT 进行验证。请记住,该模式仅在按下按钮时处于活动状态。所以一直按着。我在那里放了一个小夹子。

然后我输入了这些命令:

AT+STATE
Run Code Online (Sandbox Code Playgroud)

AT+STATE 会显示当前状态,应该是查询

然后打开从设备的电源,地址应该开始弹出。它将类似于 xyz:xy:xyzw,931F00,7FFF

第一部分是你想要的地址(xyz:xy:xyzw)

更改 : 到 , 并得到 xyz,xy,xyzw

检查您是否连接到正确的设备

AT+RNAME?xyz,xy,xyzw
Run Code Online (Sandbox Code Playgroud)

然后绑定

AT+PAIR=xyz,xy,xyzw,5
AT+BIND=xyz,xy,xyzw
AT+LINK=xyz,xy,xyzw
Run Code Online (Sandbox Code Playgroud)

AT+LINK 命令给了我 FAIL 作为输出。不过没关系。我重新启动,前后没有按任何按钮。正常启动而已。

5-10 秒后串行数据出现在我的串行监视器中。

模块是绑定的。并且会在上电时自动连接。如果不是,您可能输入了错误的密码。确保将上面的 9999 更改为 0000 或 1234 或任何可能的值。当我输入错误的引脚时,我仍然可以从 AT+PAIR 和 AT+BIND 命令中得到确认……直到我输入正确的引脚,它才对我有用。

抱歉长篇大论,但我想说得详细一点,因为现在互联网上关于 HC-05 v3 的信息非常稀缺。

可以在此处找到所有命令的参考:http : //www.electronicaestudio.com/docs/istd016A.pdf(链接有效 2018-08-13)