Skip to content

Commit 739a438

Browse files
Merge #217
217: Bump ssd1306 dev dependency to 0.4 and updated examples r=thalesfragoso a=therealprof Signed-off-by: Daniel Egger <daniel@eggers-club.de> Co-authored-by: Daniel Egger <daniel@eggers-club.de>
2 parents 7ca3a1f + 3a252c8 commit 739a438

File tree

5 files changed

+15
-12
lines changed

5 files changed

+15
-12
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ panic-semihosting = "0.5.3"
5656
cortex-m-semihosting = "0.3.3"
5757
arrayvec = { version = "0.5.1", default-features = false }
5858
panic-halt = "0.2.0"
59-
ssd1306 = "0.3.1"
59+
ssd1306 = "0.4"
6060
embedded-graphics = "0.6.2"
6161
usb-device = "0.2.5"
6262
usbd-serial = "0.1.0"

examples/analog-stopwatch-with-spi-ssd1306.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ extern crate stm32f4xx_hal as hal;
1414

1515
use crate::hal::{
1616
gpio::{gpioa::PA0, Edge, ExtiPin, Input, PullDown},
17-
interrupt,
17+
interrupt, pac,
1818
prelude::*,
1919
rcc::{Clocks, Rcc},
2020
spi::Spi,
@@ -44,8 +44,7 @@ use embedded_graphics::{
4444
};
4545
use micromath::F32Ext;
4646

47-
use ssd1306::{mode::GraphicsMode, Builder as SSD1306Builder};
48-
use stm32f4::stm32f429;
47+
use ssd1306::{prelude::*, Builder};
4948

5049
// Set up global state. It's all mutexed up for concurrency safety.
5150
static ELAPSED_MS: Mutex<Cell<u32>> = Mutex::new(Cell::new(0u32));
@@ -72,7 +71,7 @@ enum StopwatchState {
7271

7372
#[entry]
7473
fn main() -> ! {
75-
let mut dp = stm32f429::Peripherals::take().unwrap();
74+
let mut dp = pac::Peripherals::take().unwrap();
7675
let cp = cortex_m::peripheral::Peripherals::take().unwrap();
7776
dp.RCC.apb2enr.write(|w| w.syscfgen().enabled());
7877

@@ -124,7 +123,8 @@ fn main() -> ! {
124123
ss.set_low().unwrap();
125124

126125
// Set up the display
127-
let mut disp: GraphicsMode<_> = SSD1306Builder::new().connect_spi(spi, dc).into();
126+
let interface = SPIInterfaceNoCS::new(spi, dc);
127+
let mut disp: GraphicsMode<_> = Builder::new().connect(interface).into();
128128
disp.init().unwrap();
129129
disp.flush().unwrap();
130130

examples/rng-display.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ use embedded_graphics::{
2626
fonts::Font6x8, fonts::Text, pixelcolor::BinaryColor, prelude::*, style::TextStyleBuilder,
2727
};
2828

29-
use ssd1306::{prelude::*, Builder as SSD1306Builder};
29+
use ssd1306::{prelude::*, Builder, I2CDIBuilder};
3030

3131
use hal::{i2c::I2c, prelude::*, stm32};
3232
use rand_core::RngCore;
@@ -72,7 +72,8 @@ fn main() -> ! {
7272
let i2c = I2c::i2c1(dp.I2C1, (scl, sda), 400.khz(), clocks);
7373

7474
// Set up the display
75-
let mut disp: GraphicsMode<_> = SSD1306Builder::new().connect_i2c(i2c).into();
75+
let interface = I2CDIBuilder::new().init(i2c);
76+
let mut disp: GraphicsMode<_> = Builder::new().connect(interface).into();
7677
disp.init().unwrap();
7778

7879
// enable the RNG peripheral and its clock

examples/ssd1306-image.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ extern crate stm32f4xx_hal as hal;
2020
use cortex_m_rt::ExceptionFrame;
2121
use cortex_m_rt::{entry, exception};
2222
use embedded_graphics::{image::Image, image::ImageRaw, pixelcolor::BinaryColor, prelude::*};
23-
use ssd1306::{prelude::*, Builder as SSD1306Builder};
23+
use ssd1306::{prelude::*, Builder, I2CDIBuilder};
2424

2525
use crate::hal::{i2c::I2c, prelude::*, stm32};
2626

@@ -48,7 +48,8 @@ fn main() -> ! {
4848
let btn = gpioc.pc13.into_pull_down_input();
4949

5050
// Set up the display
51-
let mut disp: GraphicsMode<_> = SSD1306Builder::new().connect_i2c(i2c).into();
51+
let interface = I2CDIBuilder::new().init(i2c);
52+
let mut disp: GraphicsMode<_> = Builder::new().connect(interface).into();
5253
disp.init().unwrap();
5354
disp.flush().unwrap();
5455

examples/stopwatch-with-ssd1306-and-interrupts.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ use embedded_graphics::{
4242
prelude::*,
4343
style::TextStyleBuilder,
4444
};
45-
use ssd1306::{mode::GraphicsMode, Builder as SSD1306Builder};
45+
use ssd1306::{prelude::*, Builder, I2CDIBuilder};
4646

4747
// Set up global state. It's all mutexed up for concurrency safety.
4848
static ELAPSED_MS: Mutex<Cell<u32>> = Mutex::new(Cell::new(0u32));
@@ -82,7 +82,8 @@ fn main() -> ! {
8282
board_btn.enable_interrupt(&mut dp.EXTI);
8383
board_btn.trigger_on_edge(&mut dp.EXTI, Edge::FALLING);
8484

85-
let mut disp: GraphicsMode<_> = SSD1306Builder::new().connect_i2c(i2c).into();
85+
let interface = I2CDIBuilder::new().init(i2c);
86+
let mut disp: GraphicsMode<_> = Builder::new().connect(interface).into();
8687
disp.init().unwrap();
8788
disp.flush().unwrap();
8889

0 commit comments

Comments
 (0)