我是PIC微控制器和电气工程领域的新手,所以请放轻松:)
无论如何,我设法对PIC 16f627进行了编程,以便在按下按钮(触发按钮)时打开三个LED,并在另一个按钮被按下时启动关闭序列(基本上每个LED彼此之间以5秒钟的延迟关断)。按下(重置按钮)。我已经在Velleman的K8048 PIC编程器/实验板上进行了测试。引脚RA0和RA2分别是触发按钮和复位按钮的输入,而引脚RB0,RB1和RB2分别是LED的输出引脚。
使用实验板很棒,但是我想将其移至实际电路。问题是我不知道从哪里开始。我已经购买了3个LED(每个3.3伏),一些按钮和电线,并构造了以下电路:
(对不起的原理图很抱歉)
在我构建的电路中,我首先进行测试以查看LED是否可以使用3个1.5伏AA电池,并且它们可以正常工作,因此我认为不需要电阻器。
但是,这不起作用,我完全迷失了。供参考,这是我的PIC代码。它使用MikroC用C编写。它可以在实验板上使用,所以我认为这不是问题
void main() {
TRISB.RB0 = 0;
TRISB.RB1 = 0;
TRISB.RB2 = 0;
PORTB.RB0 = 0;
PORTB.RB1 = 0;
PORTB.RB2 = 0;
CMCON = 0x07;
TRISA = 255;
for(;;){
if(PORTA.RA0 == 1 && PORTB.RB0 == 1 && PORTB.RB1 == 1 && PORTB.RB2 == 1){
delay_ms(5000);
PORTB.RB0 = 0;
delay_ms(5000);
PORTB.RB1 = 0;
delay_ms(5000);
PORTB.RB2 = 0;
}
if(PORTA.RA2 == 1){
PORTB.RB0 = 1;
PORTB.RB1 = 1;
PORTB.RB2 = 1;
}
}
}
任何帮助将不胜感激。谢谢!