/*设置GPB5~GPB8为输出端口*/
rGPBCON &= ~((3<<10)|(3<<12)|(3<<14)|(3<<16));
rGPBCON |= ~((1<<10)|(1<<12)|(1<<14)|(1<<16));
上面的两条指令的含义:
rGPBDAT = rGPBDAT&(LED1_ON)&(LED2_ON)&(LED3_ON)&(LED4_ON)
分析:为什么不是直接把(LED1_ON)&(LED2_ON)&(LED3_ON)&(LED4_ON)的值赋给寄存器,还要与其本身"&"呢?
原因:因为前面已经知道要想使LED亮,只需要修改GPB5、GPB6、GPB7、GPB8,使它们输出为1.而不能修改其他的寄存器的值
如果直接赋值的话有可能会修改其他的寄存器的值(其他的寄存器有可能正在被使用)。
本文详细解析了通过寄存器操作实现嵌入式系统中GPIO端口配置的方法,特别是如何将特定GPIO设置为输出模式,并保持其他配置不变的具体实现过程。

1307

被折叠的 条评论
为什么被折叠?



