#spi #spi-driver

no-std w5500-ll

Low level driver for the Wiznet W5500 internet offload chip

21 releases (12 breaking)

0.13.0 Jun 9, 2024
0.12.0 Oct 2, 2023
0.11.0 Aug 6, 2023
0.10.4 Jul 14, 2022
0.7.0 Feb 24, 2021

#143 in Hardware support

Download history 120/week @ 2024-07-20 72/week @ 2024-07-27 129/week @ 2024-08-03 47/week @ 2024-08-10 59/week @ 2024-08-17 59/week @ 2024-08-24 57/week @ 2024-08-31 86/week @ 2024-09-07 101/week @ 2024-09-14 136/week @ 2024-09-21 90/week @ 2024-09-28 39/week @ 2024-10-05 55/week @ 2024-10-12 48/week @ 2024-10-19 38/week @ 2024-10-26 79/week @ 2024-11-02

220 downloads per month
Used in 7 crates (2 directly)

MIT license

340KB
2.5K SLoC

w5500-ll

Platform agnostic rust driver for the Wiznet W5500 SPI internet offload chip.

This is a low-level (ll) crate. The scope of this crate is:

  1. Register accessors.
  2. Networking data types.

Higher level functionality (such as socket operations) should be built on-top of what is provided here.

Example

Reading the VERSIONR register (a constant value).

use w5500_ll::{eh1::vdm::W5500, Registers};

let mut w5500 = W5500::new(spi);
let version: u8 = w5500.version()?;
assert_eq!(version, 0x04);

Feature Flags

All features are disabled by default.

  • defmt: Enable formatting most types with defmt.
  • eh0: Enables the eh0 module which contains implementations of the Registers trait using the embedded-hal version 0.2 traits.
  • eh1: Enables the eh1 module which contains implementations of the Registers trait using the embedded-hal version 1 traits.
  • eha1: Implements the aio::Registers trait for types in the eh1 module using the embedded-hal-async traits.

Dependencies

~175KB