commit
05a2102ecb
@ -137,6 +137,15 @@ for chip in chips.values():
|
||||
if func := funcs.get(f'{name}_MISO'):
|
||||
f.write(f'impl_spi_pin!({name}, MisoPin, {pin}, {func});')
|
||||
|
||||
if block_mod == 'i2c':
|
||||
f.write(f'impl_i2c!({name});')
|
||||
for pin, funcs in af.items():
|
||||
if pin in pins:
|
||||
if func := funcs.get(f'{name}_SCL'):
|
||||
f.write(f'impl_i2c_pin!({name}, SclPin, {pin}, {func});')
|
||||
if func := funcs.get(f'{name}_SDA'):
|
||||
f.write(f'impl_i2c_pin!({name}, SdaPin, {pin}, {func});')
|
||||
|
||||
if block_mod == 'gpio':
|
||||
custom_singletons = True
|
||||
port = name[4:]
|
||||
|
58
embassy-stm32/src/i2c/mod.rs
Normal file
58
embassy-stm32/src/i2c/mod.rs
Normal file
@ -0,0 +1,58 @@
|
||||
#![macro_use]
|
||||
|
||||
#[cfg_attr(feature = "_i2c_v2", path = "v2.rs")]
|
||||
mod _version;
|
||||
pub use _version::*;
|
||||
|
||||
pub enum Error {
|
||||
Bus,
|
||||
Arbitration,
|
||||
Nack,
|
||||
}
|
||||
|
||||
pub(crate) mod sealed {
|
||||
use super::*;
|
||||
use crate::gpio::Pin;
|
||||
|
||||
pub trait Instance {
|
||||
fn regs() -> &'static crate::pac::i2c::I2c;
|
||||
}
|
||||
|
||||
pub trait SclPin<T: Instance>: Pin {
|
||||
fn af_num(&self) -> u8;
|
||||
}
|
||||
|
||||
pub trait SdaPin<T: Instance>: Pin {
|
||||
fn af_num(&self) -> u8;
|
||||
}
|
||||
}
|
||||
|
||||
pub trait Instance: sealed::Instance + 'static {}
|
||||
|
||||
pub trait SclPin<T: Instance>: sealed::SclPin<T> + 'static {}
|
||||
|
||||
pub trait SdaPin<T: Instance>: sealed::SdaPin<T> + 'static {}
|
||||
|
||||
macro_rules! impl_i2c {
|
||||
($inst:ident) => {
|
||||
impl crate::i2c::sealed::Instance for peripherals::$inst {
|
||||
fn regs() -> &'static crate::pac::i2c::I2c {
|
||||
&crate::pac::$inst
|
||||
}
|
||||
}
|
||||
|
||||
impl crate::i2c::Instance for peripherals::$inst {}
|
||||
};
|
||||
}
|
||||
|
||||
macro_rules! impl_i2c_pin {
|
||||
($inst:ident, $pin_func:ident, $pin:ident, $af:expr) => {
|
||||
impl crate::i2c::$pin_func<peripherals::$inst> for peripherals::$pin {}
|
||||
|
||||
impl crate::i2c::sealed::$pin_func<peripherals::$inst> for peripherals::$pin {
|
||||
fn af_num(&self) -> u8 {
|
||||
$af
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
494
embassy-stm32/src/i2c/v2.rs
Normal file
494
embassy-stm32/src/i2c/v2.rs
Normal file
@ -0,0 +1,494 @@
|
||||
use crate::gpio::AnyPin;
|
||||
use crate::gpio::Pin;
|
||||
use crate::i2c::{Error, Instance, SclPin, SdaPin};
|
||||
use crate::time::Hertz;
|
||||
use core::marker::PhantomData;
|
||||
use embassy::util::Unborrow;
|
||||
use embassy_extras::unborrow;
|
||||
use embedded_hal::blocking::i2c::Read;
|
||||
use embedded_hal::blocking::i2c::Write;
|
||||
use embedded_hal::blocking::i2c::WriteRead;
|
||||
|
||||
use crate::pac::i2c;
|
||||
use crate::pac::i2c::I2c as I2cTrait;
|
||||
use core::cmp;
|
||||
|
||||
use crate::pac::gpio::vals::{Afr, Moder, Ot};
|
||||
use crate::pac::gpio::Gpio;
|
||||
use crate::pac::regs::gpio_v1::vals::Cnf;
|
||||
|
||||
pub struct I2c<'d, T: Instance> {
|
||||
//peri: T,
|
||||
scl: AnyPin,
|
||||
sda: AnyPin,
|
||||
phantom: PhantomData<&'d mut T>,
|
||||
}
|
||||
|
||||
impl<'d, T: Instance> I2c<'d, T> {
|
||||
pub fn new<F>(
|
||||
pclk: Hertz,
|
||||
peri: impl Unborrow<Target = T> + 'd,
|
||||
scl: impl Unborrow<Target = impl SclPin<T>>,
|
||||
sda: impl Unborrow<Target = impl SdaPin<T>>,
|
||||
freq: F,
|
||||
) -> Self
|
||||
where
|
||||
F: Into<Hertz>,
|
||||
{
|
||||
unborrow!(peri);
|
||||
unborrow!(scl, sda);
|
||||
|
||||
unsafe {
|
||||
Self::configure_pin(scl.block(), scl.pin() as _, scl.af_num());
|
||||
Self::configure_pin(sda.block(), sda.pin() as _, sda.af_num());
|
||||
}
|
||||
|
||||
unsafe {
|
||||
T::regs().cr1().modify(|reg| {
|
||||
reg.set_pe(false);
|
||||
reg.set_anfoff(false);
|
||||
});
|
||||
}
|
||||
|
||||
let timings = Timings::new(pclk, freq.into());
|
||||
|
||||
unsafe {
|
||||
T::regs().timingr().write(|reg| {
|
||||
reg.set_presc(timings.prescale);
|
||||
reg.set_scll(timings.scll);
|
||||
reg.set_sclh(timings.sclh);
|
||||
reg.set_sdadel(timings.sdadel);
|
||||
reg.set_scldel(timings.scldel);
|
||||
});
|
||||
}
|
||||
|
||||
let scl = scl.degrade();
|
||||
let sda = sda.degrade();
|
||||
|
||||
unsafe {
|
||||
T::regs().cr1().modify(|reg| {
|
||||
reg.set_pe(true);
|
||||
});
|
||||
}
|
||||
|
||||
Self {
|
||||
scl,
|
||||
sda,
|
||||
phantom: PhantomData,
|
||||
}
|
||||
}
|
||||
|
||||
unsafe fn configure_pin(block: Gpio, pin: usize, af_num: u8) {
|
||||
let (afr, n_af) = if pin < 8 { (0, pin) } else { (1, pin - 8) };
|
||||
block.moder().modify(|w| w.set_moder(pin, Moder::ALTERNATE));
|
||||
block.afr(afr).modify(|w| w.set_afr(n_af, Afr(af_num)));
|
||||
block.otyper().modify(|w| w.set_ot(pin, Ot::OPENDRAIN));
|
||||
//block
|
||||
//.ospeedr()
|
||||
//.modify(|w| w.set_ospeedr(pin, crate::pac::gpio::vals::Ospeedr::VERYHIGHSPEED));
|
||||
}
|
||||
|
||||
fn master_stop(&mut self) {
|
||||
unsafe {
|
||||
T::regs().cr2().write(|w| w.set_stop(i2c::vals::Stop::STOP));
|
||||
}
|
||||
}
|
||||
|
||||
fn master_read(&mut self, address: u8, length: usize, stop: Stop) {
|
||||
assert!(length < 256 && length > 0);
|
||||
|
||||
// Wait for any previous address sequence to end
|
||||
// automatically. This could be up to 50% of a bus
|
||||
// cycle (ie. up to 0.5/freq)
|
||||
while unsafe { T::regs().cr2().read().start() == i2c::vals::Start::START } {}
|
||||
|
||||
// Set START and prepare to receive bytes into
|
||||
// `buffer`. The START bit can be set even if the bus
|
||||
// is BUSY or I2C is in slave mode.
|
||||
|
||||
unsafe {
|
||||
T::regs().cr2().modify(|w| {
|
||||
w.set_sadd((address << 1 | 0) as u16);
|
||||
w.set_rd_wrn(i2c::vals::RdWrn::READ);
|
||||
w.set_nbytes(length as u8);
|
||||
w.set_start(i2c::vals::Start::START);
|
||||
w.set_autoend(i2c::vals::Autoend::AUTOMATIC);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
fn master_write(&mut self, address: u8, length: usize, stop: Stop) {
|
||||
assert!(length < 256 && length > 0);
|
||||
|
||||
// Wait for any previous address sequence to end
|
||||
// automatically. This could be up to 50% of a bus
|
||||
// cycle (ie. up to 0.5/freq)
|
||||
while unsafe { T::regs().cr2().read().start() == i2c::vals::Start::START } {}
|
||||
|
||||
// Set START and prepare to send `bytes`. The
|
||||
// START bit can be set even if the bus is BUSY or
|
||||
// I2C is in slave mode.
|
||||
unsafe {
|
||||
T::regs().cr2().modify(|w| {
|
||||
w.set_sadd((address << 1 | 0) as u16);
|
||||
w.set_add10(i2c::vals::Add::BIT7);
|
||||
w.set_rd_wrn(i2c::vals::RdWrn::WRITE);
|
||||
w.set_nbytes(length as u8);
|
||||
w.set_start(i2c::vals::Start::START);
|
||||
w.set_autoend(stop.autoend());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
fn master_re_start(&mut self, address: u8, length: usize, stop: Stop) {
|
||||
assert!(length < 256 && length > 0);
|
||||
|
||||
unsafe {
|
||||
T::regs().cr2().modify(|w| {
|
||||
w.set_sadd((address << 1 | 1) as u16);
|
||||
w.set_add10(i2c::vals::Add::BIT7);
|
||||
w.set_rd_wrn(i2c::vals::RdWrn::READ);
|
||||
w.set_nbytes(length as u8);
|
||||
w.set_start(i2c::vals::Start::START);
|
||||
w.set_autoend(stop.autoend());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
fn flush_txdr(&self) {
|
||||
//if $i2c.isr.read().txis().bit_is_set() {
|
||||
//$i2c.txdr.write(|w| w.txdata().bits(0));
|
||||
//}
|
||||
|
||||
unsafe {
|
||||
if T::regs().isr().read().txis() {
|
||||
T::regs().txdr().write(|w| w.set_txdata(0));
|
||||
}
|
||||
if T::regs().isr().read().txe() {
|
||||
T::regs().isr().modify(|w| w.set_txe(true))
|
||||
}
|
||||
}
|
||||
|
||||
// If TXDR is not flagged as empty, write 1 to flush it
|
||||
//if $i2c.isr.read().txe().is_not_empty() {
|
||||
//$i2c.isr.write(|w| w.txe().set_bit());
|
||||
//}
|
||||
}
|
||||
|
||||
fn wait_txe(&self) -> Result<(), Error> {
|
||||
loop {
|
||||
unsafe {
|
||||
let isr = T::regs().isr().read();
|
||||
if isr.txe() {
|
||||
return Ok(());
|
||||
} else if isr.berr() {
|
||||
T::regs().icr().write(|reg| reg.set_berrcf(true));
|
||||
return Err(Error::Bus);
|
||||
} else if isr.arlo() {
|
||||
T::regs().icr().write(|reg| reg.set_arlocf(true));
|
||||
return Err(Error::Arbitration);
|
||||
} else if isr.nackf() {
|
||||
T::regs().icr().write(|reg| reg.set_nackcf(true));
|
||||
self.flush_txdr();
|
||||
return Err(Error::Nack);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn wait_rxne(&self) -> Result<(), Error> {
|
||||
loop {
|
||||
unsafe {
|
||||
let isr = T::regs().isr().read();
|
||||
if isr.rxne() {
|
||||
return Ok(());
|
||||
} else if isr.berr() {
|
||||
T::regs().icr().write(|reg| reg.set_berrcf(true));
|
||||
return Err(Error::Bus);
|
||||
} else if isr.arlo() {
|
||||
T::regs().icr().write(|reg| reg.set_arlocf(true));
|
||||
return Err(Error::Arbitration);
|
||||
} else if isr.nackf() {
|
||||
T::regs().icr().write(|reg| reg.set_nackcf(true));
|
||||
self.flush_txdr();
|
||||
return Err(Error::Nack);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn wait_tc(&self) -> Result<(), Error> {
|
||||
loop {
|
||||
unsafe {
|
||||
let isr = T::regs().isr().read();
|
||||
if isr.tc() {
|
||||
return Ok(());
|
||||
} else if isr.berr() {
|
||||
T::regs().icr().write(|reg| reg.set_berrcf(true));
|
||||
return Err(Error::Bus);
|
||||
} else if isr.arlo() {
|
||||
T::regs().icr().write(|reg| reg.set_arlocf(true));
|
||||
return Err(Error::Arbitration);
|
||||
} else if isr.nackf() {
|
||||
T::regs().icr().write(|reg| reg.set_nackcf(true));
|
||||
self.flush_txdr();
|
||||
return Err(Error::Nack);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl<'d, T: Instance> Read for I2c<'d, T> {
|
||||
type Error = Error;
|
||||
|
||||
fn read(&mut self, address: u8, buffer: &mut [u8]) -> Result<(), Self::Error> {
|
||||
assert!(buffer.len() < 256 && buffer.len() > 0);
|
||||
|
||||
self.master_read(address, buffer.len(), Stop::Automatic);
|
||||
|
||||
for byte in buffer {
|
||||
// Wait until we have received something
|
||||
self.wait_rxne()?;
|
||||
|
||||
//*byte = self.i2c.rxdr.read().rxdata().bits();
|
||||
unsafe {
|
||||
*byte = T::regs().rxdr().read().rxdata();
|
||||
}
|
||||
}
|
||||
|
||||
// automatic STOP
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
impl<'d, T: Instance> Write for I2c<'d, T> {
|
||||
type Error = Error;
|
||||
|
||||
fn write(&mut self, address: u8, bytes: &[u8]) -> Result<(), Self::Error> {
|
||||
// TODO support transfers of more than 255 bytes
|
||||
assert!(bytes.len() < 256 && bytes.len() > 0);
|
||||
|
||||
// I2C start
|
||||
//
|
||||
// ST SAD+W
|
||||
self.master_write(address, bytes.len(), Stop::Software);
|
||||
|
||||
for byte in bytes {
|
||||
// Wait until we are allowed to send data
|
||||
// (START has been ACKed or last byte when
|
||||
// through)
|
||||
self.wait_txe()?;
|
||||
|
||||
// Put byte on the wire
|
||||
//self.i2c.txdr.write(|w| w.txdata().bits(*byte));
|
||||
unsafe {
|
||||
T::regs().txdr().write(|w| w.set_txdata(*byte));
|
||||
}
|
||||
}
|
||||
|
||||
// Wait until the write finishes
|
||||
self.wait_tc()?;
|
||||
|
||||
// Stop
|
||||
self.master_stop();
|
||||
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
impl<'d, T: Instance> WriteRead for I2c<'d, T> {
|
||||
type Error = Error;
|
||||
|
||||
fn write_read(
|
||||
&mut self,
|
||||
address: u8,
|
||||
bytes: &[u8],
|
||||
buffer: &mut [u8],
|
||||
) -> Result<(), Self::Error> {
|
||||
// TODO support transfers of more than 255 bytes
|
||||
assert!(bytes.len() < 256 && bytes.len() > 0);
|
||||
assert!(buffer.len() < 256 && buffer.len() > 0);
|
||||
|
||||
// I2C start
|
||||
//
|
||||
// ST SAD+W
|
||||
self.master_write(address, bytes.len(), Stop::Software);
|
||||
|
||||
for byte in bytes {
|
||||
// Wait until we are allowed to send data
|
||||
// (START has been ACKed or last byte went through)
|
||||
self.wait_txe()?;
|
||||
|
||||
// Put byte on the wire
|
||||
//self.i2c.txdr.write(|w| w.txdata().bits(*byte));
|
||||
unsafe {
|
||||
T::regs().txdr().write(|w| w.set_txdata(*byte));
|
||||
}
|
||||
}
|
||||
|
||||
// Wait until the write finishes before beginning to read.
|
||||
self.wait_tc()?;
|
||||
|
||||
// I2C re-start
|
||||
//
|
||||
// SR SAD+R
|
||||
self.master_re_start(address, buffer.len(), Stop::Automatic);
|
||||
|
||||
for byte in buffer {
|
||||
// Wait until we have received something
|
||||
self.wait_rxne()?;
|
||||
|
||||
//*byte = self.i2c.rxdr.read().rxdata().bits();
|
||||
unsafe {
|
||||
*byte = T::regs().rxdr().read().rxdata();
|
||||
}
|
||||
}
|
||||
|
||||
// automatic STOP
|
||||
|
||||
Ok(())
|
||||
}
|
||||
}
|
||||
|
||||
/// I2C Stop Configuration
|
||||
///
|
||||
/// Peripheral options for generating the STOP condition
|
||||
#[derive(Copy, Clone, PartialEq)]
|
||||
pub enum Stop {
|
||||
/// Software end mode: Must write register to generate STOP condition
|
||||
Software,
|
||||
/// Automatic end mode: A STOP condition is automatically generated once the
|
||||
/// configured number of bytes have been transferred
|
||||
Automatic,
|
||||
}
|
||||
|
||||
impl Stop {
|
||||
fn autoend(&self) -> i2c::vals::Autoend {
|
||||
match self {
|
||||
Stop::Software => i2c::vals::Autoend::SOFTWARE,
|
||||
Stop::Automatic => i2c::vals::Autoend::AUTOMATIC,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct Timings {
|
||||
prescale: u8,
|
||||
scll: u8,
|
||||
sclh: u8,
|
||||
sdadel: u8,
|
||||
scldel: u8,
|
||||
}
|
||||
|
||||
impl Timings {
|
||||
fn new(i2cclk: Hertz, freq: Hertz) -> Self {
|
||||
let i2cclk = i2cclk.0;
|
||||
let freq = freq.0;
|
||||
// Refer to RM0433 Rev 7 Figure 539 for setup and hold timing:
|
||||
//
|
||||
// t_I2CCLK = 1 / PCLK1
|
||||
// t_PRESC = (PRESC + 1) * t_I2CCLK
|
||||
// t_SCLL = (SCLL + 1) * t_PRESC
|
||||
// t_SCLH = (SCLH + 1) * t_PRESC
|
||||
//
|
||||
// t_SYNC1 + t_SYNC2 > 4 * t_I2CCLK
|
||||
// t_SCL ~= t_SYNC1 + t_SYNC2 + t_SCLL + t_SCLH
|
||||
let ratio = i2cclk / freq;
|
||||
|
||||
// For the standard-mode configuration method, we must have a ratio of 4
|
||||
// or higher
|
||||
assert!(
|
||||
ratio >= 4,
|
||||
"The I2C PCLK must be at least 4 times the bus frequency!"
|
||||
);
|
||||
|
||||
let (presc_reg, scll, sclh, sdadel, scldel) = if freq > 100_000 {
|
||||
// Fast-mode (Fm) or Fast-mode Plus (Fm+)
|
||||
// here we pick SCLL + 1 = 2 * (SCLH + 1)
|
||||
|
||||
// Prescaler, 384 ticks for sclh/scll. Round up then subtract 1
|
||||
let presc_reg = ((ratio - 1) / 384) as u8;
|
||||
// ratio < 1200 by pclk 120MHz max., therefore presc < 16
|
||||
|
||||
// Actual precale value selected
|
||||
let presc = (presc_reg + 1) as u32;
|
||||
|
||||
let sclh = ((ratio / presc) - 3) / 3;
|
||||
let scll = (2 * (sclh + 1)) - 1;
|
||||
|
||||
let (sdadel, scldel) = if freq > 400_000 {
|
||||
// Fast-mode Plus (Fm+)
|
||||
assert!(i2cclk >= 17_000_000); // See table in datsheet
|
||||
|
||||
let sdadel = i2cclk / 8_000_000 / presc;
|
||||
let scldel = i2cclk / 4_000_000 / presc - 1;
|
||||
|
||||
(sdadel, scldel)
|
||||
} else {
|
||||
// Fast-mode (Fm)
|
||||
assert!(i2cclk >= 8_000_000); // See table in datsheet
|
||||
|
||||
let sdadel = i2cclk / 4_000_000 / presc;
|
||||
let scldel = i2cclk / 2_000_000 / presc - 1;
|
||||
|
||||
(sdadel, scldel)
|
||||
};
|
||||
|
||||
(
|
||||
presc_reg,
|
||||
scll as u8,
|
||||
sclh as u8,
|
||||
sdadel as u8,
|
||||
scldel as u8,
|
||||
)
|
||||
} else {
|
||||
// Standard-mode (Sm)
|
||||
// here we pick SCLL = SCLH
|
||||
assert!(i2cclk >= 2_000_000); // See table in datsheet
|
||||
|
||||
// Prescaler, 512 ticks for sclh/scll. Round up then
|
||||
// subtract 1
|
||||
let presc = (ratio - 1) / 512;
|
||||
let presc_reg = cmp::min(presc, 15) as u8;
|
||||
|
||||
// Actual prescale value selected
|
||||
let presc = (presc_reg + 1) as u32;
|
||||
|
||||
let sclh = ((ratio / presc) - 2) / 2;
|
||||
let scll = sclh;
|
||||
|
||||
// Speed check
|
||||
assert!(
|
||||
sclh < 256,
|
||||
"The I2C PCLK is too fast for this bus frequency!"
|
||||
);
|
||||
|
||||
let sdadel = i2cclk / 2_000_000 / presc;
|
||||
let scldel = i2cclk / 500_000 / presc - 1;
|
||||
|
||||
(
|
||||
presc_reg,
|
||||
scll as u8,
|
||||
sclh as u8,
|
||||
sdadel as u8,
|
||||
scldel as u8,
|
||||
)
|
||||
};
|
||||
|
||||
// Sanity check
|
||||
assert!(presc_reg < 16);
|
||||
|
||||
// Keep values within reasonable limits for fast per_ck
|
||||
let sdadel = cmp::max(sdadel, 2);
|
||||
let scldel = cmp::max(scldel, 4);
|
||||
|
||||
//(presc_reg, scll, sclh, sdadel, scldel)
|
||||
Self {
|
||||
prescale: presc_reg,
|
||||
scll,
|
||||
sclh,
|
||||
sdadel,
|
||||
scldel,
|
||||
}
|
||||
}
|
||||
}
|
@ -15,6 +15,8 @@ pub mod clock;
|
||||
pub mod dma;
|
||||
pub mod exti;
|
||||
pub mod gpio;
|
||||
#[cfg(feature = "_i2c")]
|
||||
pub mod i2c;
|
||||
pub mod pwr;
|
||||
pub mod rcc;
|
||||
#[cfg(feature = "_rng")]
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,9 +197,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,9 +197,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,9 +197,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -197,10 +197,45 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const I2C5: i2c::I2c = i2c::I2c(0x40006400 as _);
|
||||
impl_i2c!(I2C5);
|
||||
impl_i2c_pin!(I2C5, SclPin, PA8, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC10, 4);
|
||||
impl_i2c_pin!(I2C5, SclPin, PC11, 4);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PC9, 6);
|
||||
impl_i2c_pin!(I2C5, SdaPin, PF0, 6);
|
||||
impl_i2c_pin!(I2C5, SclPin, PF1, 6);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, HASH_RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RCC: rcc::Rcc = rcc::Rcc(0x58024400 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,9 +214,37 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C2: i2c::I2c = i2c::I2c(0x40005800 as _);
|
||||
impl_i2c!(I2C2);
|
||||
impl_i2c_pin!(I2C2, SclPin, PB10, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PB11, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PF0, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PF1, 4);
|
||||
impl_i2c_pin!(I2C2, SclPin, PH4, 4);
|
||||
impl_i2c_pin!(I2C2, SdaPin, PH5, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
@ -214,8 +214,29 @@ impl_gpio_pin!(PK13, 10, 13, EXTI13);
|
||||
impl_gpio_pin!(PK14, 10, 14, EXTI14);
|
||||
impl_gpio_pin!(PK15, 10, 15, EXTI15);
|
||||
pub const I2C1: i2c::I2c = i2c::I2c(0x40005400 as _);
|
||||
impl_i2c!(I2C1);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB6, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB7, 4);
|
||||
impl_i2c_pin!(I2C1, SclPin, PB8, 4);
|
||||
impl_i2c_pin!(I2C1, SdaPin, PB9, 4);
|
||||
pub const I2C3: i2c::I2c = i2c::I2c(0x40005c00 as _);
|
||||
impl_i2c!(I2C3);
|
||||
impl_i2c_pin!(I2C3, SclPin, PA8, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PC9, 4);
|
||||
impl_i2c_pin!(I2C3, SclPin, PH7, 4);
|
||||
impl_i2c_pin!(I2C3, SdaPin, PH8, 4);
|
||||
pub const I2C4: i2c::I2c = i2c::I2c(0x58001c00 as _);
|
||||
impl_i2c!(I2C4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB6, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB7, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PB8, 6);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PB9, 6);
|
||||
impl_i2c_pin!(I2C4, SclPin, PD12, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PD13, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PF14, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PF15, 4);
|
||||
impl_i2c_pin!(I2C4, SclPin, PH11, 4);
|
||||
impl_i2c_pin!(I2C4, SdaPin, PH12, 4);
|
||||
pub const PWR: pwr::Pwr = pwr::Pwr(0x58024800 as _);
|
||||
pub const RNG: rng::Rng = rng::Rng(0x48021800 as _);
|
||||
impl_rng!(RNG, RNG);
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user