rt-thread-official/bsp/imxrt/imxrt1060-nxp-evk/MIMXRT1060-EVK上手指南.md

135 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### MIMXRT1060-EVK上手指南
MIMXRT1060-EVK支持RT-Studio工程本上手指南以RT-Studio环境的开发说明举例。
#### 准备阶段
- 拉取rt-thread的github仓库到本地[链接地址](https://github.com/RT-Thread/rt-thread)。
- 下载安装RT-Thread Studio,[链接地址](https://www.rt-thread.org/studio.html)。
- 准备RW007模块。
#### BSP上手阶段
- 找到MIMXRT1060-EVK BSP所在目录使用menuconfig配置工程
![](./figures/6.png)
取消暂时不需要的配置,具体操作如下:
- Onboard Peripherial Drivers选项设置
![](./figures/4.png)
- On-chip Peripherial Drivers选项设置
![](./figures/5.png)
- 点击文件,选择导入选项。
![](./figures/1.png)
- 选择导入RT-Thread Bsp 到工作空间中
![](./figures/2.png)
<div STYLE="page-break-after: always;"></div>
- 按照示例填写工程信息
![](./figures/3.png)
- 移除usb文件夹包含的文件
![](./figures/7.png)
<div STYLE="page-break-after: always;"></div>
- 编译工程
![](./figures/8.png)
工程编译通过,至此,准备阶段完成。
#### 使用RT-Studio配置BSP驱动
RT-Thread每个BSP已经默认适配了若干片上外设驱动与板载外设驱动使用RT-Studio将相应的开关直接打开并依据使用环境配置相应参数即可使用。由于各个管脚存在复用功能所以并不是所有的片上外设驱动与板载外设驱动都可以同时使用使用时需要结合原理图来合理开启相应的外设驱动。
RT-Thread有许多软件软件包使用RT-Studio将相应软件包的开关打开便可将软件包添加至工程使用。
![](./figures/17.png)
#### 联网实操使用RW007模块联网
RW007 是由上海睿赛德电子科技有限公司开发的高速 WiFi 模块,使用 SPI 与主机通信。[RW007使用指南链接](https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/application-note/packages/rw007_module_using/an0034-rw007-module-using)。
MIMXRT1060-EVK板载arduino接口提供的SPI接口与SD卡的SDIO接口使用的管脚存在重复的管脚所以板载的SPI接口默认未连接将下方**原理图中标记DNP的地方连接起来(使用SPI接口一定要做这一步)**便可以使用板载arduino接口引出的SPI接口此时板载的SD卡槽不可使用。
![](./figures/11.png)
##### MIMXRT1060-EVK使用RW007指南
###### 1.配置板载SPI外设
RW007可采用SPI接口通讯MIMXRT1060-EVK支持SPI驱动默认采用轮询的方式与RW007通讯(暂不支持中断与DMA模式与RW007通讯)使用RT-Studio配置SPI的具体配置如下:
![](./figures/10.png)
###### 2.使用RT-Studio配置RW007软件包
点击左侧的RT-Thread Settings选项弹出右侧的配置菜单在搜索栏中输入RW007,选择`rw007:SPI WIFI rw007 driver `,相应配置参数如下:
![](./figures/9.png)
###### 3.将RW007模块插入板载的arduino接口
![](./figures/12.png)
###### 4.修改RW007示例
由于RW007软件包的默认示例是基于STM32的示例所以在RT1060-EVK上需进行少量的修改修改RW007软件包中的example文件夹中的rw007_stm32_port.c文件。
修改`int wifi_spi_device_init(void)`函数,使用下述给出的代码替换原有的示例:
```c
int wifi_spi_device_init(void)
{
char sn_version[32];
rw007_gpio_init();
rt_hw_spi_device_attach(RW007_SPI_BUS_NAME, "wspi", RW007_CS_PIN);
rt_hw_wifi_init("wspi");
rt_wlan_set_mode(RT_WLAN_DEVICE_STA_NAME, RT_WLAN_STATION);
rt_wlan_set_mode(RT_WLAN_DEVICE_AP_NAME, RT_WLAN_AP);
rw007_sn_get(sn_version);
rt_kprintf("\nrw007 sn: [%s]\n", sn_version);
rw007_version_get(sn_version);
rt_kprintf("rw007 ver: [%s]\n\n", sn_version);
return 0;
}
```
###### 5.修改完成后,编译工程,烧录固件。
![](./figures/13.png)
`rw007 sn`与`rw007 ver`可以正常输出无乱码时RW007驱动成功
###### 6. wifi联网测试
在shell中输入`wifi scan`命令搜索WIFI。
![](./figures/14.png)
输入`wifi`,按`tab`键列出wifi相关命令
![](./figures/15.png)
连接目标wifi测试使用ping命令测试是否连接成功
![](./figures/16.png)
至此MIMXRT1060-EVK的基础环境便搭建测试完毕