STM32中操作寄存器GPIOB_CRL &= ~( 0x0F<< (4*0))與GPIOB_CRL &=~(0x0F)之間有什么區別嗎?


沒有區別,作用相同。只是這樣寫便於修改和沿用。

對於只用到PB0端口的程序~(0x0f << (4*0)) 和~0x0f沒有區別。0x0f <<(4*N) 就是 向左 移動N個4位,所以0x0f << (4*0)和0x0f一樣。

如果使用PB1,則為~(0x0f << (4*1))。即0x0f << (4*1)為0xf0, 取反為0x0f.

但是如果使用到了PB1等其他端口,這樣寫便於修改。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM