Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
英飞凌Infineon
IFX-英飞凌开发板模块评测任务大挑战-SPI X 无线网卡测试
发布于 2023-05-07 23:18:59 浏览:411
订阅该版
[tocm] 本文主要基于 PSoC™ 62 with CAPSENSE™ evaluation kit开发板 X RT-Thread,测试RW007(SPI接口)的无线网络功能。 # 一、硬件介绍 PSoC™ 62 with CAPSENSE™ evaluation kit开发板基于CY8C624ALQI_S2D42 ,芯片集成 2MB 内部 Flash 和 1MB SRAM。具有单周期乘法的150-MHz Arm Cortex-M4F CPU (浮点和存储器保护单元),100-MHz Cortex M0+ CPU,带单周期乘法和 MPU,可以充分发挥 PSoC6 双核芯片性能。 RW007 是由上海睿赛德电子科技有限公司开发的高速 WiFi 模块,模块基于 Realtek RTL8710BN(Ameba Z 系列) WIFI SOC,使用 SPI/UART 与主机通信 ,支持 IEEE 802.11b/g/n 网络、 WEP/WPA/WPA2 加密方式和 STA 和 AP 模式。 PSoC™ 62 with CAPSENSE™ evaluation kit开发板 X RW007的合体照片如下: ![IFX.jpg](https://oss-club.rt-thread.org/uploads/20230507/762dd1362ae93abfc80116d4245dcc34.jpg.webp) # 二、项目创建 目前RT-Thread Studio已经支持PSoC™ 62 with CAPSENSE™ evaluation kit开发板BSP,可以很方便的一路NEXT创建好工程并顺利把灯点起来。本章主要介绍配置RW007 SPI模式。 首先,需要打开SPI接口,根据开发板的原理图,选择SPI0对接RW007网卡,使能SPI0 BUS。 ![IFX1.png](https://oss-club.rt-thread.org/uploads/20230507/46286d205a057cf7bea1a9f413fab68a.png) 其二,配置RW007对接的接口,包括CS、INT、RESET等针脚。 ![IFX2.png](https://oss-club.rt-thread.org/uploads/20230507/38bb2f10ef119683442318de154b0b22.png) 第三、添加RW007软件包,得益于RT-Thread软件包,我们可以灵活的选择各类模块。 ![IFX3.png](https://oss-club.rt-thread.org/uploads/20230507/ec518646796bada0c40047dd7528759c.png) 最后,在组件中,使能SPI总线驱动。 ![IFX4.png](https://oss-club.rt-thread.org/uploads/20230507/e590cf9d14e2a34afac866553f6a80bd.png) 点击工程的保存,然后编译程序。很奇怪为什么文件居然大于1M。点击下载到开发板。 ![IFX5.png](https://oss-club.rt-thread.org/uploads/20230507/ce6e69797d71ded157058b703434aeaf.png) # 三、网络测试 固件下载完成后,reset系统,熟悉的log😀: ```c \ | / - RT - Thread Operating System / | \ 4.1.1 build May 7 2023 19:07:36 2006 - 2022 Copyright by RT-Thread team lwIP-2.0.3 initialized! [I/sal.skt] Socket Abstraction Layer initialize success. msh >[spi0] Freq:[25000000]HZ [31m[E/[RW007]] The wifi Stage 1 status 0 0 0 1 [0m [I/WLAN.dev] wlan init success [I/WLAN.lwip] eth device init ok name:w0 [I/WLAN.dev] wlan init success [I/WLAN.lwip] eth device init ok name:w1 ``` list_device后可以网路已经起来: ```c list_device device type ref count -------- -------------------- ---------- w1 Network Interface 1 w0 Network Interface 1 wlan0 Network Interface 1 wlan1 Network Interface 1 wspi SPI Device 0 spi0 SPI Bus 0 uart6 Character Device 2 pin Pin Device 0 msh > msh >help RT-Thread shell commands: ifconfig - list the information of all network interfaces ping - ping network host dns - list and set the information of dns netstat - list the information of TCP / IP clear - clear the terminal screen version - show RT-Thread version information list_thread - list thread list_sem - list semaphore in system list_event - list event in system list_mutex - list mutex in system list_mailbox - list mail box in system list_msgqueue - list message queue in system list_mempool - list memory pool in system list_timer - list timer in system list_device - list device in system list - list objects help - RT-Thread shell help. ps - List threads in the system. free - Show the memory usage in the system. wifi - wifi command pin - pin [option] reboot - Reboot System ``` wifi scan后再join: ```c msh >wifi scan SSID MAC security rssi chn Mbps ------------------------------- ----------------- -------------- ---- --- ---- STAR 2.4G a3:36:bc:6a:b7:c8 WPA2_AES_PSK -88 4 0 xWi-Fi5 d7:bb:e6:50:dd:a1 WPA2_AES_PSK -91 1 0 x d7:bb:e6:7b:dd:9c WPA2_AES_PSK -93 1 0 msh > msh >wifi join SSID PWD [I/WLAN.mgnt] wifi connect success ssid:SSID msh > msh >[I/WLAN.lwip] Got IP address : 192.168.99.216 ``` 来个ping,可见RW007工作正常。 ```c msh >ping 192.168.99.1 60 bytes from 192.168.99.1 icmp_seq=0 ttl=64 time=2 ms 60 bytes from 192.168.99.1 icmp_seq=1 ttl=64 time=45 ms 60 bytes from 192.168.99.1 icmp_seq=2 ttl=64 time=2 ms 60 bytes from 192.168.99.1 icmp_seq=3 ttl=64 time=50 ms ``` # 四、测试中发现的问题 SPI接口的频率问题,之前一直默认30M HZ,这次也正常的配置成30M,结果reset后系统就出错。 ```c o[spi0] Freq:[30000000]HZ (result != CYHAL_SPI_RSLT_CLOCK_ERROR) assertion failed at function:ifx_spi_init, line number:93 ``` 后来跟群内大佬讨论了下,MCU最大支持25M HZ,于是在配置SPI的时候选择25M HZ,这下正常了。 > SPI Mode: The SPI mode supports full Motorola SPI, TI Secure Simple Pairing (SSP) (essentially adds a start pulse that is used to synchronize SPI Codecs), and National Microwire (half-duplex form of SPI). The SPI block supports an EZSPI mode in which the data interchange is reduced to reading and writing an array in memory. The SPI interface operates with a 25-MHz clock. # 五、相关代码 不需要放github,因为全程基于RT-Thread Studio拖拽实现,直接生成代码,有需要可以动动小手打开RT-Thread Studio生成一份。 # 六、一些感想 RT-Thread Studio真心赞,硬件平台&基础软件的功能实现统统可以通过拖拽的方式实现,常见的硬件驱动和底层协议之类的基础软件以软件包的形式提供,极大的方便了嵌入式开发者,后续开发者只需要做好2件事:平台移植+业务实现即可,甚至平台移植都可以由厂家实现,譬如本次 PSoC™ 62 with CAPSENSE™ evaluation kit开发板的BSP。 最后感谢 Infineon Technologies & RT-Thread的评测任务大挑战活动。
0
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
Juggernaut
①②③
文章
8
回答
109
被采纳
6
关注TA
发私信
相关文章
1
RT-Thread支持英飞凌芯片吗?
2
RT-Thread系统在英飞凌TC364芯片上仅能在 Cpu 0 运行
3
请问版主RTT有没有移植到infineon的XC2000系列MCU上
4
关于RTT对于infineon 的Aurix系列的支持。
5
RT-AK使用,插件如何构建
6
PSOC6 BSP工程导入不成功
7
PSoCTM 62 初始化串口后进入休眠,功耗增加。
8
英飞凌PSoC 6 RTT开发板普通工程编译完ROM使用量就达到了1101KB
9
2023开发者大会动手实验环境搭建
10
英飞凌CYW43012 Wi-Fi 功能提示MAC地址获取错误
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
UART
ota在线升级
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
编译报错
Debug
SFUD
msh
rt_mq_消息队列_msg_queue
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1443
个答案
289
次被采纳
张世争
805
个答案
174
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
出出啊
1
篇文章
4
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
1
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部