* rmt: wrap rmt_item32_t in a newtype
This makes it much easier to use `TxRmtDriver::start_iter` and
`TxRmtDriver::start_iter_blocking` (#113).
* examples/rmt_musical_buzzer: fix for ESP32
Possibly broken by #97, possibly never worked. The ESP-IDF repo
specifically excludes the ESP32 from the RMT musical buzzer demo
because its RMT unit lacks hardware looping. Before this change, the
demo would simply hang when trying to play the second note possibly
because the ESP32 RMT unit does not support asynchronous stopping.
As an added bonus, this example is now much easier to modify to
experiment with 1-bit chiptune synthesis by making every symbol
(cycle) accessible in the ISR iterator.
* rmt: remove Pulse::into_rmt_item in favor of Symbol::new
Also, factor Pulse pairs into function arguments for ease of use.
* don't touch pullups on reset while init PinDriver
ivan i am a sinner
clippy + fmt
clippy
more sinning in RTC
* fix missing unsafe
* cleanup
* extend the usage of reset_without_pull on drop + added changelog
* replace mem_froget with drop
This should provide a slightly user-friendlier error message in the case that a user enables a different `restore-state` in `critical-section`.
Right now it's possible to e.g. enable the `std` feature on `critical-section`; `cargo` will not complain but `rustc` will complain about the return types of the `CriticalSection::enter` implementation.
Version change: "1" -> "1.1"
`src/uart.rs` uses `EnumSet::EMPTY` for a `const fn`.
`EnumSet::EMPTY` is not available in 1.0.0, but first introduced in 1.1.