From 39be19cfaf18f2256c593c2b1917feea5bd9f2b7 Mon Sep 17 00:00:00 2001
From: jonay2000 <jonabent@gmail.com>
Date: Sat, 11 Mar 2023 15:59:42 +0100
Subject: [PATCH] fmt and ci
---
src/barometer.rs | 8 +++---
src/battery.rs | 3 ---
src/motor.rs | 5 ----
src/mpu/error.rs | 3 +--
src/mpu/firmware_loader.rs | 2 +-
src/mpu/mod.rs | 7 +-----
src/mpu/sensor.rs | 51 ++++++++------------------------------
src/time.rs | 6 -----
src/twi.rs | 44 ++++++++++++++++----------------
src/uart.rs | 5 ----
10 files changed, 39 insertions(+), 95 deletions(-)
diff --git a/src/barometer.rs b/src/barometer.rs
index e37aaa9..80d64aa 100644
--- a/src/barometer.rs
+++ b/src/barometer.rs
@@ -115,10 +115,10 @@ fn update() {
match baro.loop_state {
Ms5611LoopState::Reset => {
//We let the chip know we want to read D1.
- _ = twi.write(
+ twi.write(
MS5611_ADDR,
REG_D1 + baro.over_sampling_ratio.addr_modifier(),
- &[]
+ &[],
);
//Then set loop state for next iteration
@@ -138,10 +138,10 @@ fn update() {
let d1 = u32::from_be_bytes(buf);
//We let the chip know we want to read D2.
- _ = twi.write(
+ twi.write(
MS5611_ADDR,
REG_D2 + baro.over_sampling_ratio.addr_modifier(),
- &[]
+ &[],
);
//Then set loop state for next iteration
diff --git a/src/battery.rs b/src/battery.rs
index 083f395..90b17e9 100644
--- a/src/battery.rs
+++ b/src/battery.rs
@@ -3,7 +3,6 @@
use crate::mutex::Mutex;
use crate::once_cell::OnceCell;
use cortex_m::peripheral::NVIC;
-use nrf51_hal::gpio::Level;
use nrf51_pac::interrupt;
use nrf51_pac::Interrupt;
@@ -47,13 +46,11 @@ pub(crate) fn initialize(adc: nrf51_pac::ADC, nvic: &mut NVIC) {
#[interrupt]
unsafe fn ADC() {
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::High) };
ADC_STATE.modify(|adc| {
adc.adc.events_end.reset();
// Battery voltage = (result*1.2*3/255*2) = RESULT*0.007058824
adc.last_result = adc.adc.result.read().result().bits() * 7;
});
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::Low) };
}
/// Returns the battery voltage in 10^-2 volt.
diff --git a/src/motor.rs b/src/motor.rs
index 3408f9f..2c95bf2 100644
--- a/src/motor.rs
+++ b/src/motor.rs
@@ -1,7 +1,6 @@
use crate::mutex::Mutex;
use crate::once_cell::OnceCell;
use cortex_m::peripheral::NVIC;
-use nrf51_hal::gpio::Level;
use nrf51_pac::{interrupt, Interrupt, GPIOTE, PPI};
struct Motors {
@@ -238,7 +237,6 @@ pub(crate) fn initialize(
#[interrupt]
unsafe fn TIMER2() {
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::High) };
// Safety: interrupts are already turned off here, since we are inside an interrupt
let motors = unsafe { MOTORS.no_critical_section_lock_mut() };
if motors.timer2.events_compare[3].read().bits() != 0 {
@@ -252,12 +250,10 @@ unsafe fn TIMER2() {
motors.timer2.cc[1].write(|w| w.bits(u32::from(1000 + motors.motor_values[3])));
}
}
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::Low) };
}
#[interrupt]
unsafe fn TIMER1() {
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::High) };
// Safety: interrupts are already turned off here, since we are inside an interrupt
let motors = unsafe { MOTORS.no_critical_section_lock_mut() };
if motors.timer1.events_compare[3].read().bits() != 0 {
@@ -270,5 +266,4 @@ unsafe fn TIMER1() {
motors.timer1.cc[1].write(|w| w.bits(u32::from(1000 + motors.motor_values[1])));
}
}
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::Low) };
}
diff --git a/src/mpu/error.rs b/src/mpu/error.rs
index 11a6290..98aae0e 100644
--- a/src/mpu/error.rs
+++ b/src/mpu/error.rs
@@ -1,3 +1,2 @@
-
#[derive(Debug)]
-pub enum Error {}
\ No newline at end of file
+pub enum Error {}
diff --git a/src/mpu/firmware_loader.rs b/src/mpu/firmware_loader.rs
index 118bd33..3159f94 100644
--- a/src/mpu/firmware_loader.rs
+++ b/src/mpu/firmware_loader.rs
@@ -12,7 +12,7 @@ impl Mpu6050 {
}
pub fn boot_firmware(&mut self, i2c: &mut I2c) {
- self.write(i2c, Register::PrgmStart as u8, &[ 0x04, 0x00]);
+ self.write(i2c, Register::PrgmStart as u8, &[0x04, 0x00]);
}
fn write_memory(&mut self, i2c: &mut I2c, data: &[u8]) {
diff --git a/src/mpu/mod.rs b/src/mpu/mod.rs
index ed1763a..52efc85 100644
--- a/src/mpu/mod.rs
+++ b/src/mpu/mod.rs
@@ -3,9 +3,9 @@ use crate::mpu::sensor::Mpu6050;
use crate::mutex::Mutex;
use crate::once_cell::OnceCell;
use crate::twi::{TwiWrapper, TWI};
+use error::Error;
use nb::Error::WouldBlock;
use structs::{Accel, Gyro, Quaternion};
-use error::Error;
#[allow(unused)]
mod config;
@@ -25,7 +25,6 @@ pub const SAMPLE_RATE_DIVIDER_MPU: u8 = 0;
/// MPU Sample Rate Divider under RAW mode
pub const SAMPLE_RATE_DIVIDER_RAW: u8 = 0;
-
type I2c = TwiWrapper;
struct Mpu {
@@ -112,10 +111,6 @@ pub fn read_dmp_bytes() -> nb::Result<Quaternion, ()> {
if len < 28 {
return Err(WouldBlock);
}
- // if len > 28 * 5 {
- // mpu.mpu.reset_fifo(twi)?;
- // return Err(WouldBlock);
- // }
// If we got mis-aligned, we skip a packet
if len % 28 != 0 {
diff --git a/src/mpu/sensor.rs b/src/mpu/sensor.rs
index 376c2d7..f2721f7 100644
--- a/src/mpu/sensor.rs
+++ b/src/mpu/sensor.rs
@@ -1,18 +1,17 @@
+use crate::led::Green;
use crate::mpu::config::Fifo;
use crate::mpu::config::GyroFullScale;
use crate::mpu::config::{AccelFullScale, ClockSource, DigitalLowPassFilter};
use crate::mpu::registers::Register;
use crate::mpu::structs::{Accel, Gyro};
use crate::time::delay_ms_assembly;
+use crate::twi::TwiWrapper;
use core::marker::PhantomData;
use core::time::Duration;
use embedded_hal::blocking::i2c::{Write, WriteRead};
-use crate::led::Green;
-use crate::twi::TwiWrapper;
const MPU6050_ADDRESS: u8 = 0x68;
-
pub type I2c = TwiWrapper;
pub(crate) struct Mpu6050(PhantomData<()>);
@@ -48,17 +47,12 @@ impl Mpu6050 {
self.enable_dmp(i2c);
}
- pub(crate) fn read(
- &mut self,
- i2c: &mut I2c,
- reg: u8,
- response: &mut [u8],
- ) {
+ pub(crate) fn read(&mut self, i2c: &mut I2c, reg: u8, response: &mut [u8]) {
let _ = i2c.read(MPU6050_ADDRESS, reg, response);
}
pub(crate) fn write(&mut self, i2c: &mut I2c, reg_address: u8, bytes: &[u8]) {
- let _ = i2c.write(MPU6050_ADDRESS, reg_address, bytes);
+ i2c.write(MPU6050_ADDRESS, reg_address, bytes);
}
pub(crate) fn read_register(&mut self, i2c: &mut I2c, reg: Register) -> u8 {
@@ -77,12 +71,7 @@ impl Mpu6050 {
buf
}
- pub(crate) fn write_register(
- &mut self,
- i2c: &mut I2c,
- reg: Register,
- value: u8,
- ) {
+ pub(crate) fn write_register(&mut self, i2c: &mut I2c, reg: Register, value: u8) {
self.write(i2c, reg as u8, &[value]);
}
@@ -106,11 +95,7 @@ impl Mpu6050 {
}
/// Pick the clock-source
- pub fn set_clock_source(
- &mut self,
- i2c: &mut I2c,
- clock_source: ClockSource,
- ) {
+ pub fn set_clock_source(&mut self, i2c: &mut I2c, clock_source: ClockSource) {
let mut value = self.read_register(i2c, Register::PwrMgmt1);
value |= clock_source as u8;
self.write_register(i2c, Register::PwrMgmt1, value);
@@ -120,21 +105,13 @@ impl Mpu6050 {
self.write_register(i2c, Register::IntEnable, 0x00)
}
- pub fn set_accel_full_scale(
- &mut self,
- i2c: &mut I2c,
- scale: AccelFullScale,
- ) {
+ pub fn set_accel_full_scale(&mut self, i2c: &mut I2c, scale: AccelFullScale) {
let mut value = self.read_register(i2c, Register::AccelConfig);
value |= (scale as u8) << 3;
self.write_register(i2c, Register::AccelConfig, value)
}
- pub fn set_gyro_full_scale(
- &mut self,
- i2c: &mut I2c,
- scale: GyroFullScale,
- ) {
+ pub fn set_gyro_full_scale(&mut self, i2c: &mut I2c, scale: GyroFullScale) {
let mut value = self.read_register(i2c, Register::GyroConfig);
value |= (scale as u8) << 3;
self.write_register(i2c, Register::GyroConfig, value)
@@ -144,11 +121,7 @@ impl Mpu6050 {
self.write_register(i2c, Register::SmpRtDiv, div)
}
- pub fn set_digital_lowpass_filter(
- &mut self,
- i2c: &mut I2c,
- filter: DigitalLowPassFilter,
- ) {
+ pub fn set_digital_lowpass_filter(&mut self, i2c: &mut I2c, filter: DigitalLowPassFilter) {
let mut value = self.read_register(i2c, Register::Config);
value |= filter as u8;
self.write_register(i2c, Register::Config, value)
@@ -195,11 +168,7 @@ impl Mpu6050 {
}
/// Read the FIFO
- pub fn read_fifo<'a>(
- &mut self,
- i2c: &mut I2c,
- buf: &'a mut [u8],
- ) -> &'a [u8] {
+ pub fn read_fifo<'a>(&mut self, i2c: &mut I2c, buf: &'a mut [u8]) -> &'a [u8] {
self.read_registers(i2c, Register::FifoRw, &mut buf[..])
}
diff --git a/src/time.rs b/src/time.rs
index c623aa2..846fa2a 100644
--- a/src/time.rs
+++ b/src/time.rs
@@ -10,7 +10,6 @@ use crate::once_cell::OnceCell;
/// and hard to convert to an exact number of seconds
pub use cortex_m::asm::delay as assembly_delay;
use cortex_m::peripheral::NVIC;
-use nrf51_hal::gpio::Level;
use nrf51_hal::rtc::{RtcCompareReg, RtcInterrupt};
use nrf51_hal::Rtc;
use nrf51_pac::RTC0;
@@ -156,8 +155,6 @@ fn counter_diff(prev: u32, curr: u32) -> u32 {
#[interrupt]
unsafe fn RTC0() {
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::High) };
-
// SAFETY: we're in an interrupt so this code cannot be run concurrently anyway
let rtc = RTC.no_critical_section_lock_mut();
// SAFETY: we're in an interrupt so this code cannot be run concurrently anyway
@@ -180,9 +177,6 @@ unsafe fn RTC0() {
rtc.reset_event(RtcInterrupt::Compare0);
TIMER_FLAG.store(true, Ordering::SeqCst);
}
-
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::Low) };
-
}
/// Wait for the next interrupt configured by `set_interrupt_frequency`.
diff --git a/src/twi.rs b/src/twi.rs
index 7660050..7726233 100644
--- a/src/twi.rs
+++ b/src/twi.rs
@@ -20,7 +20,7 @@ pub struct TwiWrapper {
pub enum TwiStatus {
BufEmpty,
- Success
+ Success,
}
impl TwiWrapper {
@@ -54,10 +54,12 @@ impl TwiWrapper {
self.set_sent_flag(false);
self.set_recv_flag(false);
- self.twi.address.write(|w| unsafe{w.address().bits(addr)});
- self.twi.txd.write(|w| unsafe{w.txd().bits(reg_addr)});
+ self.twi
+ .address
+ .write(|w| unsafe { w.address().bits(addr) });
+ self.twi.txd.write(|w| unsafe { w.txd().bits(reg_addr) });
self.twi.shorts.reset();
- self.twi.tasks_starttx.write(|w| unsafe{w.bits(1)});
+ self.twi.tasks_starttx.write(|w| unsafe { w.bits(1) });
self.wait_sent();
self.set_sent_flag(false);
@@ -68,7 +70,7 @@ impl TwiWrapper {
self.twi.shorts.write(|w| w.bb_suspend().set_bit())
}
- self.twi.tasks_startrx.write(|w| unsafe{w.bits(1)});
+ self.twi.tasks_startrx.write(|w| unsafe { w.bits(1) });
let mut bytes_left = data.len();
let mut write_ptr = 0;
@@ -84,7 +86,7 @@ impl TwiWrapper {
if bytes_left == 1 {
self.twi.shorts.write(|w| w.bb_stop().set_bit())
}
- self.twi.tasks_resume.write(|w| unsafe{w.bits(1)});
+ self.twi.tasks_resume.write(|w| unsafe { w.bits(1) });
if bytes_left == 0 {
break;
@@ -96,10 +98,12 @@ impl TwiWrapper {
pub fn write(&self, addr: u8, reg_addr: u8, data: &[u8]) {
if data.is_empty() {
- self.twi.address.write(|w| unsafe{w.address().bits(addr)});
+ self.twi
+ .address
+ .write(|w| unsafe { w.address().bits(addr) });
self.twi.shorts.write(|w| w.bb_stop().set_bit());
- self.twi.txd.write(|w| unsafe{w.txd().bits(reg_addr)});
- self.twi.tasks_starttx.write(|w| unsafe{w.bits(1)});
+ self.twi.txd.write(|w| unsafe { w.txd().bits(reg_addr) });
+ self.twi.tasks_starttx.write(|w| unsafe { w.bits(1) });
self.wait_sent();
return;
@@ -107,22 +111,24 @@ impl TwiWrapper {
self.set_sent_flag(false);
- self.twi.address.write(|w| unsafe{w.address().bits(addr)});
+ self.twi
+ .address
+ .write(|w| unsafe { w.address().bits(addr) });
self.twi.shorts.reset();
- self.twi.txd.write(|w| unsafe{w.txd().bits(reg_addr)});
- self.twi.tasks_starttx.write(|w| unsafe{w.bits(1)});
+ self.twi.txd.write(|w| unsafe { w.txd().bits(reg_addr) });
+ self.twi.tasks_starttx.write(|w| unsafe { w.bits(1) });
self.wait_sent();
self.set_sent_flag(false);
for &i in data {
- self.twi.txd.write(|w| unsafe{w.txd().bits(i)});
+ self.twi.txd.write(|w| unsafe { w.txd().bits(i) });
self.wait_sent();
self.set_sent_flag(false);
}
- self.twi.tasks_stop.write(|w| unsafe {w.bits(1)});
+ self.twi.tasks_stop.write(|w| unsafe { w.bits(1) });
}
}
@@ -172,14 +178,8 @@ pub(crate) fn initialize(
twi.frequency.write(|w| w.frequency().variant(FREQ));
// Set which interrupts we want to receive
- twi.intenset.write(|w| {
- w.txdsent()
- .set_bit()
- .rxdready()
- .set_bit()
- .error()
- .set_bit()
- });
+ twi.intenset
+ .write(|w| w.txdsent().set_bit().rxdready().set_bit().error().set_bit());
twi.shorts.reset();
twi.enable.write(|w| w.enable().enabled());
diff --git a/src/uart.rs b/src/uart.rs
index b8053c2..c74c069 100644
--- a/src/uart.rs
+++ b/src/uart.rs
@@ -1,7 +1,6 @@
use crate::mutex::Mutex;
use crate::once_cell::OnceCell;
use cortex_m::peripheral::NVIC;
-use nrf51_hal::gpio::Level;
use nrf51_pac::interrupt;
use ringbuffer::{ConstGenericRingBuffer, RingBuffer, RingBufferRead, RingBufferWrite};
@@ -118,8 +117,6 @@ fn put_byte(uart: &mut OnceCell<UartDriver>, byte: u8) {
/// Interrupt handler for UART0
/// It's called when the enabled interrupts for uart0 are triggered
unsafe fn UART0() {
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::High) };
-
// Safety: interrupts are already turned off here, since we are inside an interrupt
let uart = unsafe { UART.no_critical_section_lock_mut() };
@@ -141,6 +138,4 @@ unsafe fn UART0() {
if uart.uart.events_error.read().bits() != 0 {
uart.uart.events_error.reset();
}
-
- let _ = unsafe { nrf51_hal::gpio::p0::Parts::new(nrf51_pac::Peripherals::steal().GPIO).p0_20.into_push_pull_output(Level::Low) };
}
--
GitLab