send receive nrz working
This commit is contained in:
@@ -9,10 +9,10 @@ use embassy_stm32::gpio;
|
||||
use embassy_stm32::gpio::{Output, Pull};
|
||||
use embassy_sync::blocking_mutex::raw::CriticalSectionRawMutex;
|
||||
use embassy_sync::channel::Channel;
|
||||
use embassy_time::{Duration, Timer};
|
||||
use heapless::Vec;
|
||||
use semestralka2::receive::{bit_decode, bit_receive_and_decode};
|
||||
use semestralka2::send::*;
|
||||
use embassy_time::Duration;
|
||||
use semestralka2::receive::bit_receive_and_decode;
|
||||
use semestralka2::send::nrz;
|
||||
use semestralka2::send::Tx;
|
||||
|
||||
use {defmt_rtt as _, panic_probe as _};
|
||||
|
||||
@@ -28,29 +28,21 @@ async fn main(spawner: Spawner) {
|
||||
let tx = Output::new(p.PF2, gpio::Level::High, gpio::Speed::VeryHigh);
|
||||
let rx = ExtiInput::new(p.PA3, p.EXTI3, Pull::Up);
|
||||
|
||||
// let config = Config::default();
|
||||
let sender = PIPE.sender();
|
||||
let sender_receiver = PIPE.receiver();
|
||||
let receiver_sender = PIPE_REC.sender();
|
||||
let receiver_reader = PIPE_REC.receiver();
|
||||
// let receiver = PIPE.receiver();
|
||||
let receiver = PIPE.receiver();
|
||||
|
||||
spawner.spawn(bit_send(tx, sender_receiver)).unwrap();
|
||||
spawner.spawn(bit_send(tx, receiver)).unwrap();
|
||||
spawner.spawn(bit_receive_and_decode(rx)).unwrap();
|
||||
// spawner.spawn(bit_decode(receiver_reader)).unwrap();
|
||||
|
||||
info!("starting echo");
|
||||
let mut v: Vec<u8, 38, u8> = Vec::new();
|
||||
|
||||
info!("starting loop");
|
||||
loop {
|
||||
let slovko = "ahoj";
|
||||
info!("slovo: {}", slovko);
|
||||
let vektorik = encode(slovko, &mut v);
|
||||
info!("slovo: {:#?}", vektorik);
|
||||
nrz(b"ahoj", &sender).await;
|
||||
nrz(b"hello", &sender).await;
|
||||
|
||||
info!("enkodovane, posielame do pipy...");
|
||||
nrz(&v, &sender).await;
|
||||
let data = [0x01, 0x02, 0x03, 0x04];
|
||||
nrz(&data, &sender).await;
|
||||
|
||||
Timer::after(Duration::from_millis(1000)).await;
|
||||
info!("frame sent");
|
||||
embassy_time::Timer::after(Duration::from_secs(1)).await;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user