32 lines
842 B
Rust
32 lines
842 B
Rust
#![no_std]
|
|
#![no_main]
|
|
|
|
use defmt::*;
|
|
use embassy_executor::Spawner;
|
|
use embassy_stm32::crc::{Config, Crc, InputReverseConfig, PolySize};
|
|
use {defmt_rtt as _, panic_probe as _};
|
|
|
|
#[embassy_executor::main]
|
|
async fn main(_spawner: Spawner) {
|
|
let p = embassy_stm32::init(Default::default());
|
|
info!("Hello World!");
|
|
|
|
// Setup for: https://crccalc.com/?crc=Life, it never dieWomen are my favorite guy&method=crc32&datatype=ascii&outtype=0
|
|
let mut crc = Crc::new(
|
|
p.CRC,
|
|
unwrap!(Config::new(
|
|
InputReverseConfig::Byte,
|
|
true,
|
|
PolySize::Width32,
|
|
0xFFFFFFFF,
|
|
0x04C11DB7
|
|
)),
|
|
);
|
|
|
|
let output = crc.feed_bytes(b"Life, it never die\nWomen are my favorite guy") ^ 0xFFFFFFFF;
|
|
|
|
defmt::assert_eq!(output, 0x33F0E26B);
|
|
|
|
cortex_m::asm::bkpt();
|
|
}
|