2个不稳定版本
0.2.0 | 2024年1月11日 |
---|---|
0.0.0 | 2023年8月18日 |
#1862 在 嵌入式开发
235KB
4.5K SLoC
SPE ADIN1110 embassy-net
集成
embassy-net
为Analog ADIN1110
SPI SPE以太网芯片提供的集成。
什么是SPE或单对以太网/10 BASE-T1L
SPE代表单对以太网。正如其名所示,SPE使用两根线(双绞线)作为物理媒介进行差分信号传输。SPE是全双工的 - 它可以同时发送和接收以太网数据包。SPE仍然是以太网,只是物理层不同。
SPE还支持PoDL (Power over Data Line)
,从0.5瓦到50瓦的电力传输,类似于PoE
,但需要额外的硬件和握手协议。
SPE具有许多链路速度,但只有10 BASE-T1L
能够在2.4 Vpp发送幅度下达到1000米的线缆长度。截至2023年,没有任何标准是相互兼容的。因此,10 BASE-T1L
无法与10 BASE-T1S
、100 BASE-T1或任何标准
x BASE-T
一起工作。
在行业中,SPE也被称为APL (Advanced Physical Layer)
,它基于10 BASE-T1L
标准。
APL可用于intrinsic safety applications/explosion hazardous areas
,它有自己的名称和标准,称为2-WISE (2-wire intrinsically safe ethernet) IEC TS 60079-47:2021
。
10 BASE-T1L
和ADIN1110
被设计来支持本质安全应用。电源能量是固定的,不支持PDoL。
支持的SPI模式
ADIN1110
支持两种SPI模式:Generic
和OPEN Alliance 10BASE-T1x MAC-PHY serial interface
两种模式都支持带或不带额外CRC。目前仅支持带或不带CRC的Generic
SPI。
注意:SPI模式由硬件引脚SPI_CFG0
和SPI_CFG1
选择。软件无法检测或更改模式。
硬件
- 已在
Analog Devices EVAL-ADIN1110EBZ
和STM32L4S5QII3P
上测试,请参阅spe_adin1110_http_server
示例。 SparkFun MicroMod Single Pair Ethernet Function Board
或SparkFun MicroMod Single Pair Ethernet Kit (End Of Life)
,支持多个微控制器。请确保它是Embassy支持的微控制器!
其他SPE芯片
Analog ADIN2111
2端口SPI版本。可以与该驱动程序一起使用。Analog ADIN1100
RGMII版本。
测试
ADIN1110库可以在主机上使用模拟SPI驱动程序进行测试。
$ cargo test --target x86_64-unknown-linux-gnu
基准测试
- 在
Analog Devices EVAL-ADIN1110EBZ
上进行基准测试,使用spe_adin1110_http_server
示例。
基本 ping
基准测试
# ping <IP> -c 60
60 packets transmitted, 60 received, 0% packet loss, time 59066ms
rtt min/avg/max/mdev = 1.089/1.161/1.237/0.018 ms
# ping <IP> -s 1472 -M do -c 60
60 packets transmitted, 60 received, 0% packet loss, time 59066ms
rtt min/avg/max/mdev = 5.122/5.162/6.177/0.133 ms
使用 oha
的 HTTP 压力生成器基准测试
# oha -c 1 http://<IP> -z 60s
Summary:
Success rate: 50.00%
Total: 60.0005 secs
Slowest: 0.0055 secs
Fastest: 0.0033 secs
Average: 0.0034 secs
Requests/sec: 362.1971
Total data: 2.99 MiB
Size/request: 289 B
Size/sec: 51.11 KiB
依赖项
~2MB
~41K SLoC