If you have SIO open in Peripheral View, it can inadvertently trigger the hardware spinlocks (by reading them with side effects), and the code gets stuck waiting for spinlock to be released.
SIO: SPINLOCK0, SPINLOCK1, …, SPINLOCK30, SPINLOCK31 Registers
Reading from a spinlock address will:
- Return 0 if lock is already locked
- Otherwise return nonzero, and simultaneously claim the lock
SIO: SPINLOCK0, SPINLOCK1, …, SPINLOCK30, SPINLOCK31 Registers
Reading from a spinlock address will:
- Return 0 if lock is already locked
- Otherwise return nonzero, and simultaneously claim the lock
Statistics: Posted by gmx — Sat May 02, 2026 10:40 pm







