PICkit2 闪烁带按钮的指示灯



我使用的是带有16f690芯片的PICkit2低引脚数演示板。 我已经能够编写简单的代码来打开和关闭 LED,但在尝试使用按钮更改 LED 的状态时,一直无法做到这一点。我的代码如下,以及指向该设备原理图的链接。

#include <htc.h>
__CONFIG(MCLRE_OFF &  BOREN_OFF & PWRTE_OFF & IESO_OFF & CP_OFF & FCMEN_ON);
void main()
{
    //initialization
    TRISAbits.RA3 = 1;      //make button (RA3) input
    TRISCbits.RC0 = 0;      //make LED (RC0) output
    for(;;)                 // loop forever
    {
        //set RC0 if RA3 is low (button pressed), else clear RC0
        if(PORTAbits.RA3)
        {
            RC0 = 1;
        }
        else
        {
            RC0 = 0;
        }
    }
}

演示板用户指南

RA3 也是/MCLR,数据表的表 3 表示该引脚上的上拉电阻仅通过外部/MCLR 配置激活。如果没有上拉,您将不会得到变化。引脚读数是连续高还是低?

我会避免使用 RA3,至少在调试时是这样,如果您必须在发布代码中使用它,请在调试时将引脚换成另一个引脚。

PORTA的另一个常见问题是它默认是一个模拟输入端口。ANSEL位已设置,需要清除以用作数字输入,但RA3未映射到模拟输入。

我一直遇到同样的问题,并发现了以下内容。

在 MPLAB IDE 的编程器设置中,勾选"从重置释放时的 3 状态"。 我还将包含的头文件从"htc.h"更改为"pic.h",该按钮现在可以工作了。

最新更新