发布于 2022-11-06 11:28:57
这个问题的不幸答案是:你没有。在ARM Cortex-M0/M0+上,原子读/修改/写操作是不可能的。如果您需要这样的功能,您将不得不依赖特殊用途的硬件。
例如,RP2040为外围设备上的原子RMW操作提供特殊的内存区域。它还为两个核之间的同步提供了一个特殊的自旋锁外设,以及用于内核间通信的硬件FIFO。所有这些都是必需的,因为Cortex-M0+核本身不提供任何原子内存操作。
https://stackoverflow.com/questions/74333402
复制相似问题