PIC24F16KA101 RA4引脚不能用作输出

时间:2014-03-29 10:45:27

标签: microcontroller pic

我正在尝试使用PIC24F16KA101的RA4引脚作为数字输出。它连接到7段显示器的其中一个段。但它始终给出约800mv的恒定电压。我无法驾驶这个别针。

我检查了数据表,知道它是否是漏极开路,但数据表中没有提到。我也尝试将其设置为开漏(ODCAbits.ODA4 = 1),并使用10K至Vcc(Vcc = 3V)的上拉电阻。但仍然无法驾驶它。

有没有人遇到过这样的问题?感谢任何帮助......

4 个答案:

答案 0 :(得分:2)

如果GPIO没有在PIC上工作,那么通常是因为其中一个外设正在使用它。许多引脚是多用途的,如果其中一个外设正在使用它,那么它将无法用作GPIO。

数据手册中有针脚引脚图上的引脚(对于PDIP20封装,请仔细检查您使用的封装):

PGC3 / SOSCO / T1CK / U2CTS / CN0 / RA4

这告诉您哪些外设使用该引脚。这意味着您需要弄清楚PGC3的用途,并将其关闭。然后你必须弄清楚SOSCO是什么,并将其关闭。还有T1CK(定时器1时钟输入可能?),U2CTS和CN0必须关闭。

答案 1 :(得分:0)

我刚用PIC24FV32KA301遇到了这个问题。我的设备的此引脚上的外设列表几乎与您的相同,即:PGEC3 / SOSCO / SCLKI​​ / U2CTS / CN0 / RA4

根据数据表,问题在于FOSCSEL配置字的SOSCSRC熔丝,它在两者之间切换: SOSCO引脚上的“模拟晶体功能”和“数字SCLKI​​功能”。

要在SOCSO引脚上获得数字I / O,需要清除SOSCSRC保险丝。默认设置为(1)。以下是我使用的配置线:

_FOSCSEL( SOSCSRC_DIG );

数据表没有明确说明这将允许SOSCO引脚上的数字I / O,但我在microchip forum post中发现具有类似外设集的不同器件的数据表使情况更加清晰。

答案 2 :(得分:0)

这是因为可能启用了第二个振荡器(SOSC),您可以从OSCCON寄存器中的SOSCEN位禁用它;代码是:

OSCCONbits.SOSCEN = 0;

然后您可以像往常一样使用TRIS寄存器将引脚配置为输出......

答案 3 :(得分:0)

注意SOSC引脚可能是通用输入引脚(如果不用作辅助振荡器),因此您可能无法将其用作输出引脚