40 #ifndef ATOMIC_CORTEX_H_ 41 #define ATOMIC_CORTEX_H_ 44 #ifdef CMSIS_CONF_HEADER_PATH 45 #include CMSIS_CONF_HEADER_PATH 51 #define atomic_cas_uint8(t,o,n) atomic_cortex_cas_uint8((t),(o),(n)) 54 atomic_cortex_cas_uint8(uint8_t *target, uint8_t old_val, uint8_t new_val)
58 if(__LDREXB(target) == old_val) {
59 status = __STREXB(new_val, target);
64 return status == 0 ? true :
false;
__STATIC_INLINE void __DMB(void)
Data Memory Barrier.