Wiznet如何实现将SPI设备(如W5500)挂载至SPI总线上的?

发布于 2019-11-03 00:48:29    浏览:2443
我仔细看了Wiznet的源码,没有发现源码使用rt_spi_bus_attach_device()函数将W5500挂载至SPI总线上,请问程序是如何实现挂载的?或者就没有挂载,要用户自己挂载?谢谢!:handshake

查看更多

20 个回答
whj467467222
whj467467222 认证专家 2019-11-03
This guy hasn't written anything yet
我并没有使用过wiznet,我的回答仅供你参考。
在RTT中引入了一个netdev层,netdev中中有个参数数famliy,用来确定设备的类型,其中就支持wiznet,在netdev之后 还有一个SAL层,这个层就实现了对接各种链接的接口。你看看wiznet没有对接是不是在其他2个地方完成了SPI的挂载
hello
hello 2019-11-04
This guy hasn't written anything yet
在w5500_device.c文件里面有挂载的代码,

文件内容

#include "drv_spi.h"

int w5500_spi_device_init()
{
__HAL_RCC_GPIOG_CLK_ENABLE();
return rt_hw_spi_device_attach("spi1","spi10",GPIOA,GPIO_PIN_4);
}
INIT_DEVICE_EXPORT(w5500_spi_device_init);
hw75320
hw75320 2019-11-05
This guy hasn't written anything yet
whj467467222 发表于 2019-11-3 08:43
我并没有使用过wiznet,我的回答仅供你参考。
在RTT中引入了一个netdev层,netdev中中有个参数数famliy,用 ...


查了这些程序,都没有看到。谢谢!
hw75320
hw75320 2019-11-05
This guy hasn't written anything yet
hello 发表于 2019-11-4 08:28
在w5500_device.c文件里面有挂载的代码,

文件内容


你的wiznet组件包是哪个版本?从哪里下载的?我从官方github下载的组件包里,没有找到w5500_device.c文件啊?
Hu_XianShen
Hu_XianShen 2019-11-06
This guy hasn't written anything yet
hw75320 发表于 2019-11-5 22:09
你的wiznet组件包是哪个版本?从哪里下载的?我从官方github下载的组件包里,没有找到w5500_device.c文件 ...


尝试用ENV去实现,目前Wiznet只支持W5500,肯定有W5500_device.c;
不过W5500_device.c中确实没有挂载文件。
hw75320
hw75320 2019-11-06
This guy hasn't written anything yet
Hu_XianShen 发表于 2019-11-6 08:50
尝试用ENV去实现,目前Wiznet只支持W5500,肯定有W5500_device.c;
不过W5500_device.c中确实没有挂载文 ...


我看了一下,好像是有些评估板的自定义BSP中的port文件夹中有此源码,W5500_device.c确实实现了spi设备的挂载。
小菜鸟爱吃菜
小菜鸟爱吃菜 2019-11-07
This guy hasn't written anything yet
[img=1076,612][/img]
小菜鸟爱吃菜
小菜鸟爱吃菜 2019-11-07
This guy hasn't written anything yet
小菜鸟爱吃菜 发表于 2019-11-7 10:38


注意msp里得先有对应spi总线的初始化,用cube工具生成
小菜鸟爱吃菜
小菜鸟爱吃菜 2019-11-07
This guy hasn't written anything yet
自己在这个文件里挂接
hnhebing
hnhebing 2019-11-14
This guy hasn't written anything yet
@hw75320 w5500调试通过了吗?

撰写答案

请登录后再发布答案,点击登录
关注者
0
被浏览
2.4k

发布
问题

分享
好友

手机
浏览

扫码手机浏览