打印
[Kinetis]

关于管脚复用的不解。

[复制链接]
1732|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
WAMCNCN|  楼主 | 2015-5-2 21:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在一个例程中
   PORTC_PCR5  |= PORT_PCR_MUX(2);             //   开启PC5管脚SPI0 SPI0 SCK                    
    PORTC_PCR6  |= PORT_PCR_MUX(2);            //    开启PC6管脚SPI0 SPI0 MOSI
在另一例程中
    PORTC_PCR5  |= PORT_PCR_MUX(2)|(uint32_t)~(uint32_t)PORT_PCR_MUX(5);                                   //   开启PC5管脚SPI0 SPI0 SCK                    
    PORTC_PCR6  |= PORT_PCR_MUX(2)|(uint32_t)~(uint32_t)PORT_PCR_MUX(5);                                    //    开启PC6管脚SPI0 SPI0 MOSI
下面相对上面多了  |(uint32_t)~(uint32_t)PORT_PCR_MUX(5)这有做何解,什么迷惑,求解

     PORT_PCR_MUX(5)是管脚的复用功能5的宏,强制转换成32位后取反,再强制成32位后,吧MUX三位变成了010,或上管脚的复用功能2的宏后,变成100,在管脚的信号复用复位值111或成了011,不再是管脚复用功能2了?我这样理解有错吗

相关帖子

沙发
FSL_TICS_Jeremy| | 2015-5-4 11:18 | 只看该作者
0x010或上0x010还是其本身啊。

使用特权

评论回复
板凳
WAMCNCN|  楼主 | 2015-5-5 21:27 | 只看该作者
FSL_TICS_Jeremy 发表于 2015-5-4 11:18
0x010或上0x010还是其本身啊。


:L搞混了,当成2进制+法运算了
那不是多此一举吗,画蛇添足?

使用特权

评论回复
地板
FSL_TICS_Jeremy| | 2015-6-1 11:25 | 只看该作者
非常感谢你关于Kinetis的技术问题。如果你没有其他问题,我们将此帖默认为已解决.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

50

主题

1882

帖子

1

粉丝