希望我在这里有正确的论坛。
首先:
处理器: PIC32MX795F512L(在chipKIT mx32开发板上)
IDE: MPLAB X IDE v2.26
Pogrammer / Debugger: PicKIT 3
我正在尝试将一些PORT引脚设置为输出,这样我就可以将通信协议发送到另一个设备。但是,当我使用pickit 3作为调试器运行PIC时,我发现一些TRIS位不会切换到0。
到目前为止,这是我与TRISF和TRISG之间的问题,我在其他帖子中看到过一些问题,但没有解决方案。
我试图切换的针脚是:
这是我如何做的一个例子。
ODCDCLR = 0xFFFF;
ODCFCLR = 0xFFFF;
TRISDCLR = 3<<14;
TRISFCLR = 3<<5;
粘滞TRIS位可能是什么原因?
答案 0 :(得分:3)
如果你看page 36 of the datasheet,你会看到G2和G3只用作数字I / O而不是USB。摘录如下:
同样,如果启用了UART3,RF4将成为RX输入。
您需要确保启用/禁用共享这些引脚的外设并仔细阅读数据表 very 。它有时候是一个完整的PITA,但是我从来没有发现数据表出错 - 只是有时候事情被隐藏了!
答案 1 :(得分:0)
两个主要原因是配置为模拟的引脚和配置为其他功能的引脚,如JTAG。
对于F和G,您需要设置ANSELF = 0
和ANSELG = 0
。对于JTAG,您需要检查数据表,然后设置适当的配置位。
我没有检查您的特定设备的数据表,所以我无法确定。
更新
见Roger Rowland的回答。无法替代阅读数据表!