- let p0 = P0Parts::new(board.P0);
- let p1 = P1Parts::new(board.P1);
-
- let kbd_lcd_reset = p1.p1_08; // GPIO5, D5
- let _stm_cs = p0.p0_07; // GPIO6, D6,
- let lcd_cs = p0.p0_26; // GPIO9, D9,
- let lcd_dc = p0.p0_27; // GPIO10, D10
-
- let kbd_sda = p0.p0_12.into_floating_input().degrade();
- let kbd_scl = p0.p0_11.into_floating_input().degrade();
-
- let kbd_i2c = Twim::new(
- board.TWIM0,
- TwimPins {
- sda: kbd_sda,
- scl: kbd_scl,
- },
- TwimFrequency::K100,
+ let kbd_lcd_reset = _pins.d5;
+ let _stm_cs = _pins.d6;
+ let lcd_cs = _pins.d9;
+ let lcd_dc = _pins.d10;
+
+ // i2c keyboard interface
+ // kbd SDA = D12
+ // kbd SCL = D11
+ // FREQ 100KHZ
+ let kbd_i2c = i2c_master(
+ &mut _clocks,
+ 100u32.khz(),
+ peripherals.SERCOM2,
+ &mut peripherals.MCLK,
+ _pins.sda,
+ _pins.scl,
+ &mut _pins.port