มินิโปรเจค
เครื่องตั้งเวลาเตือน1-6นาที
อ้างอิงhttp://www.elec-za.com/pic
อุปกรณ์
1.PIC16F628A
2.LED
3.BUZZER
4.C 22u
5.ทรานซิสเตอร์2N3904
6.ตัวR
7.สวิต
8.คริสตัล4m
CODE
int TimeS = 0, i, t, Ar = 0;
void OnNumber(int number);
void main() {
TRISA = 0x00;
TRISB = 0x0C;
PORTA = 0;
PORTB = 0x02;
TimeS = 1;
while(1){
while(!PORTB.F3){
if (PORTB.F2){
delay_ms(200);
while(PORTB.F2) ;
TimeS++;
if (TimeS > 5)
TimeS = 1;
OnNumber(TimeS);
}
}
delay_ms(200);
while(PORTB.F3) ;
for (i=TimeS;i>=1;i--){
for (t=0;t<=59;t++){
OnNumber(i);
delay_ms(500);
OnNumber(i-1);
delay_ms(500);
}
}
PORTB = 0x10;
while(!PORTB.F3) ;
delay_ms(200);
while(PORTB.F3) ;
PORTB = 0x02;
TimeS = 1;
delay_ms(200);
}
}
void OnNumber(int number){
switch(number){
case 1:
PORTA = 0;
PORTB = 0x02;
break;
case 2:
PORTA = 0;
PORTB = 0x03;
break;
case 3:
PORTA = 0x01;
PORTB = 0x03;
break;
case 4:
PORTA = 0x09;
PORTB = 0x03;
break;
case 5:
PORTA = 0x0D;
PORTB = 0x03;
break;
default:
PORTA = 0x00;
PORTB = 0x00;
break;
}
}
ความคิดเห็น
แสดงความคิดเห็น