Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
LWIP
网络
NXP-MCXN947
NXP MCXN947测评:ETH设备(一)基本的设置和测试
发布于 2024-03-31 20:41:12 浏览:271
订阅该版
[tocm] # 测试任务 此次是参加RT-Thread组织的活动,进行FRDM-MCXN947开发板的评测。NXP FRDM-MCXN947板是NXP官方针对MCX N94x/54x微控制器家族推出的紧凑且可扩展的开发板,帮助用户快速开展原型设计,开发板提供丰富的行业标准接口,可以轻松访问MCU的I/O,同时板载外部闪存与MCU-Link调试器,支持各种附加版的扩展,为用户提供简单高效的评估和开发体验。 我的任务是测试ETH接口,也就是网络接口。开发板提供了RJ45的接口,我们先测试最基本的网络功能,然后在此基础上测试网络相关的应用程序。 # menuconfig设置 我使用的开发环境是Env环境,直接使用命令行进行编译。 在Env中使用menuconfig命令进行配置工作。官方提供了网络的驱动程序,所以可以直接进行有关网络的配置: ## 使能PHY驱动 在RT-Thread Components -> Device Drivers中选择Using ethernet phy device drivers ![使能PHY](https://oss-club.rt-thread.org/uploads/20240331/45d81c9359c5a3cf8473fe8ca950d677.png) ## 使能网络相关组件 在RT-Thread Components -> Network中选择网络相关的组件 ![使能网络相关组件](https://oss-club.rt-thread.org/uploads/20240331/ec8e9699c71c9c75f51edabc7a8eefdf.png) # 遇到的问题和解决方案 不过当直接将程序下载到开发板时遇到了一个问题,当使用ifconfig命令时,程序报告错误:ifconfig: network interface device list error. 然后使用list device命令也确实没有看到网络相关的设备。 经过仔细检查编译日志,发现drv_eth.c文件就压根没有编译。而注册网络设备的工作是在drv_eth.c文件中实现的。我检查了drv_eth.c所在目录的D:\rt-thread\bsp\nxp\mcx\mcxn\Libraries\drivers\SConscript。该文件的内容是这样的: ```c from building import * cwd = GetCurrentDir() src = [] if GetDepend('BSP_USING_PIN'): src += ['drv_pin.c'] if GetDepend('BSP_USING_UART'): src += ['drv_uart.c'] if GetDepend('BSP_USING_RTC'): src += ['drv_rtc.c'] if GetDepend('BSP_USING_SPI'): src += ['drv_spi.c'] if GetDepend('BSP_USING_SDIO'): src += ['drv_sdio.c'] if GetDepend('BSP_USING_I2C'): src += ['drv_i2c.c'] if GetDepend('BSP_USING_ADC'): src += ['drv_adc.c'] if GetDepend('BSP_USING_DAC'): src += ['drv_dac.c'] if GetDepend('BSP_USING_HWTIMER'): src += ['drv_hwtimer.c'] if GetDepend('BSP_USING_WDT'): src += ['drv_wdt.c'] if GetDepend('BSP_USING_PWM'): src += ['drv_pwm.c'] path = [cwd,cwd + '/config'] group = DefineGroup('Drivers', src, depend = [''], CPPPATH = path) Return('group') ``` 从这个文件看,压根就没有添加drv_eth.c,所以即使我们在前面选择了ETH PHY的选项,也不会编译drv_eth.c文件。解决的办法是在文件中加上: ```c if GetDepend('RT_USING_PHY'): src += ['drv_eth.c'] ``` # 测试结果 再次编译程序并下载,这次程序就可以正常运行了。 我们通过ifconfig命令很容易看到当前的网络配置。ps命令也可以看出当前的各个网络相关线程都正常运行。 ![检查网络接口](https://oss-club.rt-thread.org/uploads/20240331/72dcedb0c6c713147433a2fccfb9ef6c.png) 再使用PING命令可以正常工作了! ![ping命令](https://oss-club.rt-thread.org/uploads/20240331/224856a35aa7feae067e9b5daded6ad3.png) 下面我们将继续测试网络的其他功能。
0
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
zealsoft
这家伙很懒,什么也没写!
文章
4
回答
0
被采纳
0
关注TA
发私信
相关文章
1
RT-THREAD在STM32H747平台上移植lwip
2
{lwip}使能RT_LWIP_DHCP时可以获取到ip
3
stm32f103 LWIP 2.0.2 TCP收发问题
4
lwip2.1不重启修改IP
5
关于网络协议栈的测试
6
可否将LWIP升级到2.1.2 和 2.0.3?
7
socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
8
tcpclient 插拔网线问题?
9
两个tcpclient同时通讯可以吗?
10
SO_BINDTODEVICE 未定义该如何解决
推荐文章
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
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
ulog
C++_cpp
at_device
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
a1012112796
13
个答案
2
次被采纳
张世争
9
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
本月文章贡献
程序员阿伟
9
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
5
次点赞
RTT_逍遥
1
篇文章
2
次点赞
ThinkCode
1
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部