乐鑫技术交流
直播中

陈伟

8年用户 1572经验值
私信 关注
[问答]

设置的AP的名字是first_test, 通过手机搜到的是first_te,是怎么回事?

设置的AP的名字是first_test, 通过手机搜到的是first_te,下面的是代码,不知道是怎么回事?
   
    struct softap_config ap_config;
    struct ip_info ap_ip_info;
   
    wifi_softap_get_config(&ap_config);
    ap_config.authmode = AUTH_OPEN;
    os_memset(ap_config.ssid, 0, sizeof(ap_config.ssid));
    os_memcpy(ap_config.ssid, "first_test", 10);
   
    ap_config.ssid_len = 10;
    os_printf("the ap ssid is: %sn ", ap_config.ssid);
    os_printf("the ap ssid length is:%d,
    wifi_softap_set_config(&ap_config);
                                                                                                                                                               

回帖(1)

cherry1989

2024-7-13 17:19:43
从您提供的代码片段来看,您正在尝试设置一个名为 "first_test" 的无线接入点(AP)。然而,您发现通过手机搜索到的AP名称是 "first_te"。这可能是由于以下几个原因:

1. **字符编码问题**:在某些情况下,字符编码可能会导致显示问题。请确保您的代码和设备都使用相同的字符编码,通常是UTF-8。

2. **内存问题**:在您的代码中,您使用了 `os_memset` 和 `os_memcpy` 来设置AP名称。请确保 `os_memset` 将 `ap_config.ssid` 的内存区域清零,然后 `os_memcpy` 正确地复制了字符串 "first_test"。如果 `os_memcpy` 只复制了部分字符串,那么显示的名称可能会被截断。

3. **AP名称长度限制**:某些无线设备或操作系统可能对AP名称的长度有限制。如果AP名称超过了这个限制,它可能会被截断。在这种情况下,您需要检查您的设备或操作系统的文档,了解AP名称的最大长度限制。

4. **设备兼容性问题**:不同的设备可能对AP名称的处理方式有所不同。有些设备可能在显示AP名称时会自动截断或修改。您可以尝试在不同的设备上搜索AP,看看是否仍然出现相同的问题。

5. **代码逻辑问题**:请检查您的代码逻辑,确保在设置AP名称之后,正确地应用了这些设置。例如,您可能需要调用一个函数来更新AP的配置。

6. **AP配置缓存问题**:在某些情况下,设备可能缓存了旧的AP配置。您可以尝试重启设备,以确保加载了最新的配置。

7. **显示问题**:最后,这也可能是一个显示问题。您的设备可能在显示AP名称时出现了错误。您可以尝试在不同的设备或操作系统上查看AP名称,以确定问题是否仍然存在。

为了解决这个问题,您可以尝试以下步骤:

- 确保AP名称的长度不超过设备或操作系统的限制。
- 检查 `os_memset` 和 `os_memcpy` 的使用是否正确,确保AP名称被完整地复制到 `ap_config.ssid`。
- 检查您的设备和代码是否使用相同的字符编码。
- 在不同的设备和操作系统上测试AP名称的显示,以确定问题是否普遍存在。
- 如果可能,尝试更新您的设备或操作系统,以解决兼容性问题。

希望这些建议能帮助您解决问题。如果问题仍然存在,请提供更多关于您的设备和环境的信息,以便我们能更好地帮助您。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分