aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32g4/src/bin/i2c_slave.rs
diff options
context:
space:
mode:
Diffstat (limited to 'examples/stm32g4/src/bin/i2c_slave.rs')
-rw-r--r--examples/stm32g4/src/bin/i2c_slave.rs9
1 files changed, 4 insertions, 5 deletions
diff --git a/examples/stm32g4/src/bin/i2c_slave.rs b/examples/stm32g4/src/bin/i2c_slave.rs
index a723a0e18..adf1f74fa 100644
--- a/examples/stm32g4/src/bin/i2c_slave.rs
+++ b/examples/stm32g4/src/bin/i2c_slave.rs
@@ -6,7 +6,6 @@ use defmt::*;
6use embassy_executor::Spawner; 6use embassy_executor::Spawner;
7use embassy_stm32::i2c::{Address, OwnAddresses, SlaveCommandKind}; 7use embassy_stm32::i2c::{Address, OwnAddresses, SlaveCommandKind};
8use embassy_stm32::mode::Async; 8use embassy_stm32::mode::Async;
9use embassy_stm32::time::Hertz;
10use embassy_stm32::{bind_interrupts, i2c, peripherals}; 9use embassy_stm32::{bind_interrupts, i2c, peripherals};
11use embassy_time::Timer; 10use embassy_time::Timer;
12use {defmt_rtt as _, panic_probe as _}; 11use {defmt_rtt as _, panic_probe as _};
@@ -127,8 +126,8 @@ async fn main(spawner: Spawner) {
127 let p = embassy_stm32::init(Default::default()); 126 let p = embassy_stm32::init(Default::default());
128 info!("Hello World!"); 127 info!("Hello World!");
129 128
130 let speed = Hertz::khz(400); 129 let mut config = i2c::Config::default();
131 let config = i2c::Config::default(); 130 config.frequency = Hertz::khz(400);
132 131
133 let d_addr_config = i2c::SlaveAddrConfig { 132 let d_addr_config = i2c::SlaveAddrConfig {
134 addr: OwnAddresses::OA1(Address::SevenBit(DEV_ADDR)), 133 addr: OwnAddresses::OA1(Address::SevenBit(DEV_ADDR)),
@@ -136,14 +135,14 @@ async fn main(spawner: Spawner) {
136 }; 135 };
137 let d_sda = p.PA8; 136 let d_sda = p.PA8;
138 let d_scl = p.PA9; 137 let d_scl = p.PA9;
139 let device = i2c::I2c::new(p.I2C2, d_scl, d_sda, Irqs, p.DMA1_CH1, p.DMA1_CH2, speed, config) 138 let device = i2c::I2c::new(p.I2C2, d_scl, d_sda, Irqs, p.DMA1_CH1, p.DMA1_CH2, config)
140 .into_slave_multimaster(d_addr_config); 139 .into_slave_multimaster(d_addr_config);
141 140
142 unwrap!(spawner.spawn(device_task(device))); 141 unwrap!(spawner.spawn(device_task(device)));
143 142
144 let c_sda = p.PB8; 143 let c_sda = p.PB8;
145 let c_scl = p.PB7; 144 let c_scl = p.PB7;
146 let controller = i2c::I2c::new(p.I2C1, c_sda, c_scl, Irqs, p.DMA1_CH3, p.DMA1_CH4, speed, config); 145 let controller = i2c::I2c::new(p.I2C1, c_sda, c_scl, Irqs, p.DMA1_CH3, p.DMA1_CH4, config);
147 146
148 unwrap!(spawner.spawn(controller_task(controller))); 147 unwrap!(spawner.spawn(controller_task(controller)));
149} 148}