This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3100:当 CC3100模块连接至某个 AP 网络时无法使用它进行扫描

Guru**** 1554590 points
Other Parts Discussed in Thread: CC3100, CC3100MOD
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1226759/cc3100-not-able-to-scan-with-cc3100-module-when-it-s-connected-to-some-ap-network

器件型号:CC3100

您好!

我正在编程 CC3100模块、它处于 wifi 站模式、现在可以扫描并连接到一些可用的网络、在 CC3100和 AP 网络之间建立此连接后、我需要再次扫描可用的网络、可行吗? 如果是、如何做到这一点?

请帮我解决这个问题。

参考文档:  

www.ti.com/.../swru368c.pdf

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     当 基站被连接时、您应该能够调用 sl_WlanGetNetworkList。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我可以使用  sl_WlanGetNetworkList ()函数进行扫描,但它提供了预扫描的网络。 此功能未扫描新网络。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    是否已正确配置扫描策略(扫描间隔-请参阅第4.7.1章中的 swru368c)? 在 CC3100中、不支持在 AP 模式下进行 WALN 扫描、但这种情况并非您的情况、因为您的器件处于 STA 模式。 您是否已在设备中上传了最新的服务包?

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    下面是我实施的一个逻辑、用于在可用网络连接到某个 AP 时对其进行扫描、请仔细检查。

    //重置连接策略
    RetVal = sl_WlanPolicySet (SL_POLICY_CONNECTION、SL_CONNECTION_POLICY (0、0、0、0、0、 0)、NULL、0); //此处出现卡滞。

    policyVal = scan_interval;


    /*设置扫描策略-这将启用并启动扫描*/
    RetVal = sl_WlanPolicySet (SL_POLICY_SCAN、&PolicyVal、sizeof (policyVal));//如果我删除上面的行、会在这里卡住。


    /*延迟1秒以验证扫描是否已启动*/
    Delayms(1000);

    /* RetVal 表示有效条目数*/
    NetworkCount = sl_WlanGetNetworkList (runningIdx、numOfEntries、&G UnFilteredNetworks [runningIdx])

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您的代码无法运行、我认为应该是编译器报告的错误。 函数 sl_WlanPolicySet()有四个参数,但在代码处是三个参数。

    _i16 sl_WlanPolicySet(const _u8 Type , const _u8 Policy, _u8 *pVal,const _u8 ValLen);

    此外,在通过 sl_WlanGetNetworkList ()读取 WLAN 列表时,应设置扫描策略一次而不是每次

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    很抱歉、 在写入时错过了 SL_SCAN_ENABLE 参数。

    我将在代码中添加 sl_scan_enable。

    RetVal = sl_WlanPolicySet (SL_POLICY_SCAN、SL_SCAN_ENABLE、&PolicyVal、sizeof (policyVal));//如果我删除上面的行、会在这里卡住。

     

    让我试试这个、

    此外,在通过 sl_WlanGetNetworkList  ()读取 WLAN 列表时,应设置扫描策略一次而不是每次

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我尝试通过设置扫描网络  扫描策略 现在出现问题了  sl_WlanGetNetworkList() 功能每次扫描网络时、都会返回相同的网络列表。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您的 CC3100MOD 中包含哪一个服务包? 如果在您的模块不是最新的 SP、请尝试更新它们。 有关更多详细信息、请参阅此处此处

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如何检查 Service Pack 并验证它 是否是最新的?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    可通过 API sl_DevGet () SL_DEVICE_GENERAL_CONFIGURATION、SL_DEVICE_GENERAL_VERSION 来读取它。 但是、如果您提出此问题、则表示您从未更新过 ServicePack。 没有适当更新 ServicePack 的 CC31xx 器件可能会受到错误和安全漏洞的影响。 通常不建议在没有适当服务包的情况下使用 CC31xx 器件。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我已读取固件版本、如下所示。 请浏览一下。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您器件的 NWP 版本为2.2.0.1。 我认为此服务包已有大约9年的历史。 您应该明确地更新服务包。 此处提供 CC3100的最新 ServicePack 为2.14.0.0

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您的遵守、这意味着如果不升级服务包(固件)、我们将无法扫描连接到某个 AP 网络的网络、但问题是我们没有升级模块的配置(UART 不可用)。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我无法确认升级 ServicePack 能够解决您的问题。 但 ServicePack 升级是您应该尝试的第一步。 §没有可用的 UART、仍可以使用 sl_ filesystem API 更新 ServicePack。 有关更多详细信息、请参阅生产线指南中的第17.2章(链接是我之前回答的一个)。

    1月