cortex-m
cortex-m copied to clipboard
Low level access to Cortex-M processors
Changes: - Add a `Vector::map_interrupt` function to allow mapping the `Vector::Interrupt` variant to e.g. a HAL's interrupt type. - Add a `SCB::vect_pending`function for getting the pending vector, if any.
I see that the [`ptr() function`](https://github.com/rust-embedded/cortex-m/blob/ae1d2a62d895dc458784c465e021a010cb75a8b1/src/peripheral/mod.rs#L248) to get the pointer to the register block has the comment "to be deprecated in 0.7", but it's already 0.7 and it isn't deprecated......
#355 is brilliant, we we should do that. But can we also do something with https://developer.arm.com/tools-and-software/open-source-software/arm-platforms-software/arm-ecosystem-fvps? It appears to emulate a Cortex-M55.
The [`asm::delay()`](https://github.com/rust-embedded/cortex-m/blob/master/src/asm.rs#L17-L44) function delays a program only by half the time/CPU cycles intended on an STM32H7. I have prepared a somewhat minimal example [here](https://github.com/nkrackow/cortex-m_delay_test/blob/master/src/main.rs). My CPU clock is at 400...
(This originally started as https://github.com/knurling-rs/probe-run/issues/316. I have tracked the issue down to the cortex-m-rt 0.7 branch and so am filing a new, more specific, issue here.) I have been trying...
Could we add intrinsics for calling Software Interrupts (the SWI or SVC instruction)? We probably also want a mechanism for marshalling some number of integer arguments into registers, and back...
TrustZone in Armv8-m processors like the Cortex-M23 and Cortex-M33 supports a second 'secure' copy of registers like SysTick and VTOR. It also supports a second interrupt vector table. I'd like...
The next stable Rust release, 1.59, will include stable `asm!()` and `global_asm!()` macros that finally permit us to define assembly directly in the crate without needing to distribute precompiled binaries....
I seem to have stumbled accross this issue [region 'FLASH' already defined](https://users.rust-lang.org/t/embedded-rust-lld-error-memory-x-region-flash-already-defined/34788) but the thread is closed by now. The proposed fix (using the GNU linker) does work for me....
If you would like to perform a checksum validation of all Flash memory you would need to know where all used Flash memory starts and ends. Today, this can (partially)...