6个版本 (3个重大更改)
0.4.0 | 2024年1月29日 |
---|---|
0.3.2 | 2023年9月22日 |
0.3.0 | 2021年12月27日 |
0.2.0 | 2021年11月4日 |
0.1.0 | 2021年11月3日 |
在 嵌入式开发 中排名 #393
16KB
348 行
smoltcp-slip
本crate旨在为smoltcp提供SLIP协议的实现。
用法
use linux_embedded_hal::Serial;
use smoltcp::iface::{Config, Interface};
use smoltcp::time::Instant;
use smoltcp::wire::{HardwareAddress, Ipv4Address, Ipv4Cidr};
use smoltcp_slip::SlipDevice;
// open a serial device
let device = Serial::open("/dev/ttyS0".to_string(), 9600)
.expect("open serial port");
// create a SLIP device from this I/O device
let mut device = SlipDevice::from(device);
// create an interface from this IP device
let local_addr = Ipv4Cidr::new(Ipv4Address([192, 168, 1, 1]), 24);
let mut iface = Interface::new(Config::new(HardwareAddress::Ip), &mut device, Instant::now());
iface.update_ip_addrs(|ips| { ips.push(local_addr.into()); });
// At this point, iface.poll() and the likes can be called.
依赖关系
~2.5MB
~55K SLoC