我有一些示例代码(来自Nordic),其中包括下一行:
NRF_RADIO->EVENTS_END = 0;
(void)NRF_RADIO->EVENTS_END;
Run Code Online (Sandbox Code Playgroud)
NRF_RADIO-> EVENTS_END是嵌入式寄存器,在第一行设置为0.
有人可以解释第二行的含义是什么?
谢谢Yaron
第二行“仅”读回寄存器。这样做是通过将强制转换强制(void)为void来显式地忽略读取的实际值。
该系列有两个专长,这可能会使理解它变得不容易:
1的原因很可能是涉及到外围寄存器的情况(根据OP的声明)。这可能意味着需要看似无用的阅读的机制。例如:
2的原因是完全分开的,例如可以是:
编辑以提高可读性和更好的结构,而无需更改基本逻辑;为了防止误解,我认为这是两位拒绝投票的人的误解。如果有合理的理由拒绝投票,请告诉我。