New answers tagged cortex-m
1
vote
Why does ATSAM3X8E have two separate registers for setting and clearing bits?
To expand upon the mention of atomic operations in the answer, the ATSAM3X8E datasheet shows that microcontroller incorporates the ARM Cortex-M3 Bit-banding:
The regions for SRAM and peripherals ...
2
votes
Why does ATSAM3X8E have two separate registers for setting and clearing bits?
Just to add to @Justme's answer, this especially important on registers whose contents are modified by the microcontroller.Imagine an interrupt status register (that contains multiple interrupt ...
1
vote
Accepted
How does ATSAM3X8E's SAM-BA bootloader work?
The SAM3X8E can be configured to boot to SAM-BA monitor (the default), or to Flash 0 or 1. This is done via the GPNVM bits and is described in section 7.2.4 of the datasheet. Setting GPNVM1 to 1 ...
17
votes
Accepted
Why does ATSAM3X8E have two separate registers for setting and clearing bits?
If you want to enable one pin, you write the bit 1 which pin you want to enable. The bits that are 0 do nothing.
So your example with single enable is OK.
Your second enable might be completely wrong ...
7
votes
Accepted
CORTEX-M jump causes UFSR=2
Let's look at ARM's AN209 "Using Cortex-M3/M4/M7 Fault Exceptions":
INVSTATE: [...] the processor has attempted to execute an instruction that makes illegal use of the Execution Program ...
Top 50 recent answers are included
Related Tags
cortex-m × 156arm × 74
stm32 × 58
microcontroller × 35
c × 16
cortex-m4 × 15
cortex-m3 × 14
interrupts × 10
assembly × 9
embedded × 8
memory × 7
gpio × 6
swd × 6
atmel × 5
lpc × 5
cortex-m0 × 5
linux × 4
floating-point × 4
gcc × 4
hard-fault × 4
spi × 3
uart × 3
low-power × 3
debugging × 3
jtag × 3