初始化引脚为I2C功能后,怎么把对应的引脚再恢复为普通io?

jiamu |浏览1304次
收藏|2017/02/10 10:17

SYS->PA_H_MFP |= (SYS_PA_H_MFP_PA12_MFP_I2C0_SDA | SYS_PA_H_MFP_PA13_MFP_I2C0_SCL );

设置为I2C以后,重新设置为普通引脚

 SYS->PA_H_MFP |= (SYS_PA_H_MFP_PA12_MFP_GPA12 | SYS_PA_H_MFP_PA13_MFP_GPA13 );

但是没有任何效果,寄存器还是保持为I2C的模式,保护已经解除了,谢谢

满意回答

2022/09/06 14:52

与0做或运算,结果不变。应该用与运算把对应位全清0,

SYS->PA_H_MFP   &=

~(SYS_PA_H_MFP_PA12_MFP_Msk | SYS_PA_H_MFP_PA13_MFP_Msk);

 

Angus

其他回答(0)
0人关注该问题
+1
 加载中...