Compare commits

..

1 Commits

Author SHA1 Message Date
3268b07ad9 use static cell instead of custom struct 2025-02-07 16:14:41 +01:00

View File

@@ -3,6 +3,7 @@
extern crate alloc; extern crate alloc;
use rtic::app; use rtic::app;
use rtic_monotonics::fugit::TimerInstantU32;
use rtic_monotonics::systick::prelude::*; use rtic_monotonics::systick::prelude::*;
use satrs::pool::{PoolAddr, PoolProvider, StaticHeaplessMemoryPool}; use satrs::pool::{PoolAddr, PoolProvider, StaticHeaplessMemoryPool};
use satrs::static_subpool; use satrs::static_subpool;
@@ -73,7 +74,9 @@ impl Net {
let mut iface = Interface::new( let mut iface = Interface::new(
config, config,
&mut ethdev, &mut ethdev,
smoltcp::time::Instant::from_millis(Mono::now().duration_since_epoch().to_millis()), smoltcp::time::Instant::from_millis(
(Mono::now() - TimerInstantU32::<1000>::from_ticks(0)).to_millis(),
),
); );
// Create sockets // Create sockets
let dhcp_socket = dhcpv4::Socket::new(); let dhcp_socket = dhcpv4::Socket::new();
@@ -92,7 +95,7 @@ impl Net {
/// Polls on the ethernet interface. You should refer to the smoltcp /// Polls on the ethernet interface. You should refer to the smoltcp
/// documentation for poll() to understand how to call poll efficiently /// documentation for poll() to understand how to call poll efficiently
pub fn poll<'a>(&mut self, sockets: &'a mut SocketSet) -> bool { pub fn poll<'a>(&mut self, sockets: &'a mut SocketSet) -> bool {
let uptime = Mono::now().duration_since_epoch(); let uptime = Mono::now() - TimerInstantU32::<1000>::from_ticks(0);
let timestamp = smoltcp::time::Instant::from_millis(uptime.to_millis()); let timestamp = smoltcp::time::Instant::from_millis(uptime.to_millis());
self.iface.poll(timestamp, &mut self.ethdev, sockets) self.iface.poll(timestamp, &mut self.ethdev, sockets)