智诊小助手-AP/Station模式切换

  • AP模式

在AP模式下,设备充当无线网络的中心节点,也就是无线路由器或热点。设备负责管理无线网络,管理连接的客户端设备,以及提供数据传输的中继点。客户端设备(如智能手机、笔记本电脑等)可以连接到AP模式的设备上,通过它访问互联网或其他网络资源。

AP模式的连接方法如下:

  1. 如下图,确保图标模式的选择为AP模式

  1. 点击选择WIFI的部分进入到选择WIFI的界面后,连接设备对应的WIFI,最后点击主界面的连接即可,连接成功后就可以将设备调成AP模式

注:手机的移动网络要关闭

  • Station模式

Station模式是指设备作为无线网络中的一个客户端节点,也就是普通的无线终端设备。在STA模式下,设备连接到一个已经存在的无线网络,以便访问网络资源或互联网。简而言之,该模式就是让设备连接别的设备的网络。

Station模式的连接方法如下:

  1. 确保手机的热点已打开
  2. 点击主界面中的“配置热点”选项,进入到选择设备名称的界面

  1. 找到对应设备的名称,并点击“连接”(若存在多个设备,难以找到,可以点击上述配置界面中的“铃铛”图标,点击后,对应的设备就会响)

  1. 点击“连接”后,进入通讯模式选择界面。点击“Station模式”

  1. 点击后,进入到配置热点界面,输入手机的热点名称和密码,最后点击配置即可

  1. 等到VCI设备WIFI指示灯变成蓝色,说明Station模式配置成功

当遇到 `make build` 报错,提示 `out/main.elf section '.non_cacheable_bss' 无法 fit in region 'int_sram_no_cacheable'`、`section .int_results 与 .non_cacheable_bss 重叠` 以及 `region 'int_sram_no_cacheable' 溢出 11504 字节` 时,可以从以下几个方面进行解决: ### 减少 `.non_cacheable_bss` 段的大小 - **检查全局和静态变量**:`.non_cacheable_bss` 段通常包含未初始化的全局和静态变量。查看代码中是否存在不必要的全局或静态变量,将其改为局部变量,以减少该段的大小。 ```c // 原代码 static int large_array[10000]; // 可能导致 .non_cacheable_bss 段过大 // 修改后 void some_function() { int local_array[10000]; // 改为局部变量 // 使用 local_array } ``` - **动态内存分配**:对于一些大型数组或数据结构,可以使用动态内存分配(如 `malloc` 和 `free`)来代替静态分配。 ```c #include <stdlib.h> void some_function() { int *dynamic_array = (int *)malloc(10000 * sizeof(int)); if (dynamic_array != NULL) { // 使用 dynamic_array free(dynamic_array); // 释放内存 } } ``` ### 调整链接脚本 - **扩大 `int_sram_no_cacheable` 区域**:如果硬件资源允许,可以在链接脚本中扩大 `int_sram_no_cacheable` 区域的大小。找到链接脚本中定义 `int_sram_no_cacheable` 区域的部分,增加其大小。 ```ld MEMORY { int_sram_no_cacheable (rw) : ORIGIN = 0x10000000, LENGTH = 64K + 11504 // 增加长度以容纳溢出部分 } ``` - **重新分配段**:可以在链接脚本中调整 `.non_cacheable_bss` 和 `.int_results` 段的位置,避免它们重叠。 ```ld SECTIONS { .text : { *(.text) } .non_cacheable_bss : { *(.non_cacheable_bss) } > int_sram_no_cacheable .int_results : { *(.int_results) } > another_region // 将 .int_results 段分配到其他区域 } ``` ### 优化编译选项 - **使用优化选项**:在编译时使用优化选项,如 `-O1`、`-O2` 或 `-O3`,可以减少代码和数据的大小。 ```sh gcc -O2 -c source.c -o source.o ``` ### 检查硬件配置 - **确认硬件资源**:确保硬件上有足够的 `int_sram_no_cacheable` 空间。如果硬件本身的资源有限,可能需要考虑更换硬件或优化算法以减少内存使用。 ### 调试和分析 - **使用工具分析**:使用链接器的详细输出选项(如 `-Wl,--print-memory-usage`)来分析各个段的大小和内存使用情况,找出占用内存较大的部分。 ```sh gcc -Wl,--print-memory-usage source.o -o out/main.elf ``` 通过以上方法,可以逐步解决 `make build` 报错中出现的 `.non_cacheable_bss` 段无法放入 `int_sram_no_cacheable` 区域、段重叠以及区域溢出的问题。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值