[−][src]Struct stm32h7_fmc::Sdram
SDRAM Controller
Implementations
impl<IC, PINS> Sdram<IC, PINS> where
IC: SdramChip,
PINS: PinsSdram<FMC>,
[src]
IC: SdramChip,
PINS: PinsSdram<FMC>,
pub fn new(fmc: FMC, rec_fmc: Fmc, _pins: PINS, _chip: IC) -> Self
[src]
New SDRAM instance
_pins
must be a set of pins connecting to an SDRAM on the
FMC controller. This is currently implemented for the types
PinsSdramBank1
and
PinsSdramBank2
Panics
-
Panics if there are not enough address lines in
PINS
to access the whole SDRAM. -
Panics if there are not enough bank address lines in
PINS
to access the whole SDRAM.
pub unsafe fn new_unchecked(
fmc: FMC,
rec_fmc: Fmc,
_pins: PINS,
_chip: IC
) -> Self
[src]
fmc: FMC,
rec_fmc: Fmc,
_pins: PINS,
_chip: IC
) -> Self
New SDRAM instance
_pins
must be a set of pins connecting to an SDRAM on the
FMC controller. This is currently implemented for the types
PinsSdramBank1
and
PinsSdramBank2
Safety
The pins are not checked against the requirements for this SDRAM chip. So you may be able to initialise a SDRAM without enough pins to access the whole memory.
pub fn init<D>(&mut self, delay: &mut D, core_clocks: CoreClocks) -> *mut u32 where
D: DelayUs<u8>,
[src]
D: DelayUs<u8>,
Initialise SDRAM instance. Delay is used to wait the SDRAM powerup delay.
Returns a raw pointer to the memory-mapped SDRAM block.
Panics
-
Panics if the FMC kernel clock
fmc_ker_ck
is not running. -
Panics if any setting in
IC::CONFIG
cannot be achieved. -
Panics if the FMC kernal clock
fmc_ker_ck
is too fast for maximum SD clock inIC::TIMING
.
Auto Trait Implementations
impl<IC, PINS> Send for Sdram<IC, PINS> where
IC: Send,
PINS: Send,
IC: Send,
PINS: Send,
impl<IC, PINS> !Sync for Sdram<IC, PINS>
impl<IC, PINS> Unpin for Sdram<IC, PINS> where
IC: Unpin,
PINS: Unpin,
IC: Unpin,
PINS: Unpin,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,