为M33核心外设提供原子访问的另一种方式
我在SRAM上使用LDREX和 STREX以进行原子访问,但不知道如何在外设上实现它。请您给出在Cortex-M33内核上为外设实现原子性的方法?
解决方案
您的评论指出您正在使用Renesas RA6M5。这款芯片的GPIO端口具备原子位设置/清除寄存器,允许你在不进行RMW的情况下设置位或位组,甚至可以同时对某些位进行设置、对其他位进行重置。
PCNTR3 是关注的寄存器;它宽32位,但可以被视为两个16位寄存器,分别名为 PORR(用于重置)和 POSR(用于置位)。
文档请参阅 RA6M5群组硬件用户手册 的第19.2.3节。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。