unify channel assign
This commit is contained in:
parent
77e372e842
commit
ea1e1973eb
@ -85,8 +85,10 @@ async fn main(_spawner: Spawner) {
|
|||||||
|
|
||||||
let color_list = [&turn_off, &dim_white];
|
let color_list = [&turn_off, &dim_white];
|
||||||
|
|
||||||
|
let pwm_channel = Channel::Ch1;
|
||||||
|
|
||||||
// make sure PWM output keep low on first start
|
// make sure PWM output keep low on first start
|
||||||
ws2812_pwm.set_duty(Channel::Ch1, 0);
|
ws2812_pwm.set_duty(pwm_channel, 0);
|
||||||
|
|
||||||
{
|
{
|
||||||
use embassy_stm32::dma::{Burst, FifoThreshold, Transfer, TransferOptions};
|
use embassy_stm32::dma::{Burst, FifoThreshold, Transfer, TransferOptions};
|
||||||
@ -100,7 +102,7 @@ async fn main(_spawner: Spawner) {
|
|||||||
|
|
||||||
loop {
|
loop {
|
||||||
// start PWM output
|
// start PWM output
|
||||||
ws2812_pwm.enable(Channel::Ch1);
|
ws2812_pwm.enable(pwm_channel);
|
||||||
|
|
||||||
unsafe {
|
unsafe {
|
||||||
Transfer::new_write(
|
Transfer::new_write(
|
||||||
@ -108,7 +110,7 @@ async fn main(_spawner: Spawner) {
|
|||||||
&mut dp.DMA1_CH2,
|
&mut dp.DMA1_CH2,
|
||||||
5,
|
5,
|
||||||
color_list[color_list_index],
|
color_list[color_list_index],
|
||||||
pac::TIM3.ccr(0).as_ptr() as *mut _,
|
pac::TIM3.ccr(pwm_channel.raw()).as_ptr() as *mut _,
|
||||||
dma_transfer_option,
|
dma_transfer_option,
|
||||||
)
|
)
|
||||||
.await;
|
.await;
|
||||||
@ -117,7 +119,7 @@ async fn main(_spawner: Spawner) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// stop PWM output for saving some energy
|
// stop PWM output for saving some energy
|
||||||
ws2812_pwm.disable(Channel::Ch1);
|
ws2812_pwm.disable(pwm_channel);
|
||||||
|
|
||||||
// wait another half second, so that we can see color change
|
// wait another half second, so that we can see color change
|
||||||
Timer::after_millis(500).await;
|
Timer::after_millis(500).await;
|
||||||
|
Loading…
Reference in New Issue
Block a user