【先楫HPM6750EVKMINI测评】3# HPM6750对RW007模块的控制
本帖最后由 太阳上的骑士 于 2022-7-21 00:48 编辑<p><span style="font-size:20px;"><b>1、RW007介绍</b></span></p>
<p><span style="font-size:16px;">RW007是由上海睿赛德电子科技有限公司开发基于Cortex-M4 WIFI SOC的SPI/UART 高速wifi模块。RT-Thread操作系统提供原生支持,如果使用RT-Thread支持的处理器即插即用,如果不跑RT-Thread的话在网上还没找到合适的驱动程序。</span></p>
<p><span style="font-size:16px;">HPM6750EVKMINI开发板正好在RT-Thread支持的开发板里,所以驱动起来会很方便。</span></p>
<p><span style="font-size:16px;"><strong>RW007主要特性:</strong></span></p>
<ol>
<li style="list-style-type:none">
<ol>
<li style="list-style-type:none"> </li>
</ol>
</li>
</ol>
<ul>
<li><span style="font-size:16px;">高性能 MCU</span></li>
<li><span style="font-size:16px;">使用 SPI 通信方式</span></li>
<li><span style="font-size:16px;">SPI 时钟高达 30Mbps</span></li>
<li><span style="font-size:16px;">SPI 模式下有效以太网带宽高达上传 1MBytes/s,下载 1MBytes/s</span></li>
<li><span style="font-size:16px;">支持 WiFi+BLE 主从机功能</span></li>
<li><span style="font-size:16px;">BLE 主机功能可同时连接多个 BLE 设备</span></li>
<li><span style="font-size:16px;">WiFi 支持 STA+AP 模式</span></li>
<li><span style="font-size:16px;">支持微信小程序 BLE 快速配网</span></li>
<li><span style="font-size:16px;">支持断网快速回连</span></li>
<li><span style="font-size:16px;">内置 Bootloader,支持 OTA 固件升级、安全固件功能</span></li>
<li><span style="font-size:16px;">支持批量远程升级,方便运维管理</span></li>
</ul>
<p><span style="font-size:16px;">官方资料地址:</span></p>
<p><span style="font-size:16px;"><a href="https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/application-note/packages/rw007_module_using/an0034-rw007-module-using?id=rw007">https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/application-note/packages/rw007_module_using/an0034-rw007-module-using?id=rw007</a></span></p>
<p> </p>
<p><span style="font-size:20px;"><b>2、硬件连接</b></span></p>
<p></p>
<p></p>
<p><span style="font-size:16px;"><strong>引脚连接</strong></span></p>
<table>
<tbody>
<tr>
<td>
<p><span style="font-size:16px;">HPM6750</span></p>
</td>
<td>
<p><span style="font-size:16px;">RW007</span></p>
</td>
<td>
<p><span style="font-size:16px;">功能</span></p>
</td>
</tr>
<tr>
<td>
<p><span style="font-size:16px;">H15</span></p>
</td>
<td>
<p><span style="font-size:16px;">nRST</span></p>
</td>
<td>
<p><span style="font-size:16px;">RST</span></p>
</td>
</tr>
<tr>
<td>
<p><span style="font-size:16px;">H14</span></p>
</td>
<td>
<p><span style="font-size:16px;">INT</span></p>
</td>
<td>
<p><span style="font-size:16px;">INT/BUSY</span></p>
</td>
</tr>
<tr>
<td>
<p><span style="font-size:16px;">G16</span></p>
</td>
<td>
<p><span style="font-size:16px;">MISO</span></p>
</td>
<td>
<p><span style="font-size:16px;">MISO</span></p>
</td>
</tr>
<tr>
<td>
<p><span style="font-size:16px;">H16</span></p>
</td>
<td>
<p><span style="font-size:16px;">nCS</span></p>
</td>
<td>
<p><span style="font-size:16px;">CS</span></p>
</td>
</tr>
<tr>
<td>
<p><span style="font-size:16px;">H17</span></p>
</td>
<td>
<p><span style="font-size:16px;">CMD_MOSI</span></p>
</td>
<td>
<p><span style="font-size:16px;">MOSI</span></p>
</td>
</tr>
<tr>
<td>
<p><span style="font-size:16px;">G17</span></p>
</td>
<td>
<p><span style="font-size:16px;">CLK</span></p>
</td>
<td>
<p><span style="font-size:16px;">CLK</span></p>
</td>
</tr>
</tbody>
</table>
<p><span style="font-size:16px;">HPM6750EVKMINI开发板使用SPI1和RW007模块通信。</span></p>
<p> </p>
<p><span style="font-size:20px;"><b>3、WIFI功能</b></span></p>
<p><span style="font-size:16px;">WIFI功能的实现参考论坛帖子:</span></p>
<p><span style="font-size:16px;"><a href="https://bbs.eeworld.com.cn/thread-1206656-1-1.html">https://bbs.eeworld.com.cn/thread-1206656-1-1.htm</a><a href="https://bbs.eeworld.com.cn/thread-1206656-1-1.html">l</a></span></p>
<p><span style="font-size:16px;">实现步骤为:</span></p>
<ol>
<li><span style="font-size:16px;">新建RT-Thread Projec</span></li>
<li style=""><span style="font-size:16px;">添加RW007的RT-Thread Package</span></li>
<li style=""><span style="font-size:16px;">修改port后编译下载运行</span></li>
</ol>
<p><span style="font-size:16px;">下载完成后复位:</span></p>
<p></p>
<p><span style="font-size:16px;">Msh命令wifi join yourSSID yourPSW即可连接路由器,但是只能连2.4G频段,5G RW007模块搜索不到。</span></p>
<p> </p>
<p><span style="font-size:20px;"><b>4、BLE功能</b></span></p>
<p> </p>
<p><strong><span style="font-size:18px;">按照官方文档操作</span></strong></p>
<p><span style="font-size:16px;">1)根据RW007官方文档说明,需要使用到env工具,所以先安装env工具。RT-Thread env 工具下载:</span></p>
<p><span style="font-size:16px;"><a href="https://www.rt-thread.org/page/download.html">https://www.rt-thread.org/page/download.html</a></span></p>
<p><span style="font-size:16px;">把env工具添加到windows右键:</span></p>
<p></p>
<p> </p>
<p><span style="font-size:16px;">2)通过RT-Thread Studio中setting界面添加的RW007驱动版本是V2.0.1,只有wifi驱动,没有BLE功能,在V2.1.0以上版本支持BLE功能。所以去RW007的官方Gitee仓库下载最新驱动包。在Gitee界面貌似也没有描述驱动包版本,驱动包Gitee:</span></p>
<p><span style="font-size:16px;"><a href="https://gitee.com/RT-Thread-Mirror/rw007">https://gitee.com/RT-Thread-Mirror/rw007</a></span></p>
<p><span style="font-size:16px;">将下载的最新驱动包替换RT-Thread Studio工程中的RW007驱动文件,</span></p>
<p> -></p>
<p></p>
<p> </p>
<p><span style="font-size:16px;">3)在工程根目录右键运行ConEmu Here:</span></p>
<p></p>
<p><span style="font-size:16px;">输入menuconfig进行配置,也许是版本问题,按照Gitee的readme步骤做会有点不一样,到最后选择驱动版本时没有V2.1.0,无论选择是V2.0.1还是latest,都出现不了use ble function</span></p>
<p> </p>
<p></p>
<p><span style="font-size:16px;">4)网络上搜索RW007 V2.1.0版本的驱动一直也没搜索到,所以这个方法暂时只能放弃,如果有谁有V2.1.0的驱动版本欢迎分享一下。</span></p>
<p> </p>
<p><span style="font-size:18px;"><b>参考RT-Thread物联网操作系统官方博文</b></span></p>
<p><span style="font-size:16px;">参考链接:</span></p>
<p><span style="font-size:16px;"><a href="https://blog.csdn.net/rtthreadiotos/article/details/117005097">https://blog.csdn.net/rtthreadiotos/article/details/117005097</a></span></p>
<p><strong><span style="font-size:16px;">1)新建RT-Thread Studio Project</span></strong></p>
<p><span style="font-size:16px;">1. 新建RT-Thread Projec</span></p>
<p><span style="font-size:16px;">2. 添加RW007的RT-Thread Package</span></p>
<p><span style="font-size:16px;">3. 用最新的RW007库替换原工程驱动文件</span></p>
<p> </p>
<p><strong><span style="font-size:16px;">2)在工程applications目录添加ble_example.c</span></strong></p>
<p><span style="font-size:16px;">1. 新建ble_example.c文件,添加ble相关功能函数</span></p>
<p><span style="font-size:16px;">2. 添加msh命令ble_example_start,功能为初始化ble,然后自动连接mac地址匹配的设备</span></p>
<p> </p>
<p><strong><span style="font-size:16px;">3)搭建测试从设备</span></strong></p>
<p><span style="font-size:16px;">1. 因为RW007的BLE只能作为主设备,所以需要有个从设备给RW007连</span></p>
<p><span style="font-size:16px;">2. 找一块蓝牙开发板,烧录BLE Uart代码,被连接后led亮,没连接led不亮</span></p>
<p><span style="font-size:16px;">3. 用dongle查看蓝牙开发板蓝牙mac地址,这里为C9:BF:1B:24:BD:2E</span></p>
<p><span style="font-size:16px;"></span></p>
<p> </p>
<p><strong><span style="font-size:16px;">4)测试</span></strong></p>
<p><span style="font-size:16px;">1. 修改example代码里的mac地址为蓝牙开发板地址</span></p>
<p><span style="font-size:16px;">2. 上电,在msh输入ble_example_start</span></p>
<p><span style="font-size:16px;">3. 观察开发板上的led,一直不亮</span></p>
<p><span style="font-size:16px;"></span></p>
<p> </p>
<p><strong><span style="font-size:16px;">5)尝试修改里面的一些内容也一直连接不上</span></strong></p>
<p><span style="font-size:16px;">至此,板子上的RW007的BLE功能还一直没调通,如果大家有什么想法和建议欢迎交流,后续有时间再试试~</span></p>
<p><span style="font-size:16px;">因为对RW007和RT-Thread了解不深,如果写的有不对的地方欢迎指正~</span></p>
本帖最后由 devinfanyang 于 2022-7-21 14:31 编辑
<p>你好,这个问题可能需要等RT-Thread那边更新一下包。</p>
<p>如果您想快速的使能自带的rw007_ble 功能,可以尝试下面的步骤:</p>
<p>1. 更新一下附件中的文件。</p>
<p>2. 将</p>
<p> menuconfig RW007_USING_BLE<br />
bool "Enable RW007 BLE"<br />
depends on PKG_USING_RW007<br />
default n</p>
<p>加到board目录底下的 Kconfig文件,可以放在 menu "On-chip Peripheral Drivers" 这一行下面</p>
<p> </p>
<p>3. 运行menuconfig ,并选中 RW007_USING_BLE这一项并保存设置。</p>
<p>4. 重新用scons 编译工程并用gdb下载调试。</p>
devinfanyang 发表于 2022-7-21 14:20
你好,这个问题可能需要等RT-Thread那边更新一下包。
如果您想快速的使能自带的rw007_ble 功能,可 ...
<p>您好,我添加了RW007_USING_BLE后,编译下载用msh输入rw007_ble scan,好像没实现scan功能,试了其它功能也没有用。</p>
<p>如果方便的话能分享一下您那RW007实际能用的工程吗,方便我们使用学习一下~</p>
<p> </p>
<p>您好,我这边只试用了一下scan功能,步骤如下:</p>
<ul>
<li>rw007_ble init central</li>
<li>rw007_ble scan</li>
</ul>
<p>其他功能需要参考RT-Thread官方的文档来操作</p>
<p><a href="https://github.com/RT-Thread-packages/rw007">RT-Thread-packages/rw007: RW007 (SPI Wi-Fi module) driver for RT-Thread (github.com)</a></p>
<p> </p>
本帖最后由 太阳上的骑士 于 2022-7-22 19:15 编辑
<div class="quote">
<blockquote><font size="2"><a href="forum.php?mod=redirect&goto=findpost&pid=3159469&ptid=1211442" target="_blank"><font color="#999999">devinfanyang 发表于 2022-7-22 11:18</font></a></font> 您好,我这边只试用了一下scan功能,步骤如下: rw007_ble init central rw007_ble scan 其他 ...</blockquote>
</div>
<p>试了一下可以了,以前没有用rw007_ble init central进行初始化所以不行。</p>
<p>谢谢解答<img height="48" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/congra.gif" width="48" /></p>
页:
[1]