void setup()
{
pinMode(2,INPUT_PULLUP); กดค้างเพื่อให้ output 1,2 เป็น Low ตลอด
pinMode(3,INPUT_PULLUP); ล็อค
pinMode(4,INPUT_PULLUP); ปลดล๊อค
pinMode(5,OUTPUT); output1
pinMode(6,OUTPUT); outpu2
}
void loop()
{
if (digitalRead(4) == HIGH)
{
digitalWrite(6, LOW);
digitalWrite(5, LOW);
}
if (digitalRead(3) == HIGH)
{
delay(200);
digitalWrite(6, LOW);
digitalWrite(5, HIGH);
delay(3000);
digitalWrite(5,LOW);
}
if (digitalRead(2) == HIGH)
{
delay(200);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
delay(3000);
digitalWrite(6,LOW);
}
}
ตามนี้ครับ กดinput3 output2 เป็น high 3วิ แล้วเป็น low
กดinput4 output1 เป็นhigh 3วิ แล้วเป็น low
แต่ถ้ากด input2 ค้างไว้แล้วกด input3 หรือ4 output ก็ยังได้ high ออกมา
รบกวนแนะนำหน่อยครับ ขอบคุณมากๆครับ
#include<16F84.h>
#use delay(clock=8000000)
#fuses XT,NOWDT
#use fast_io(A)
#use fast_io(B)
int a,b;
void main()
{
set_tris_a(0xff);
set_tris_b(0x00);
output_b(0b00000000);
a=1;
b=1;
while(true)
{
while(input(pin_a4))
{
output_low(pin_b1);
output_low(pin_b2);
output_low(pin_b7);
}
while(!input(pin_a3))
{
output_low(pin_b1);
output_low(pin_b2);
output_low(pin_b7);
}
while(input(pin_a1))
{
a=~a;
delay_ms(800);
if(!input(pin_a1))
if(!input(pin_a2))
output_bit(pin_b7,a);
output_bit(pin_b1,a);
delay_ms(500);
if(!input(pin_a2))
output_low(pin_b1);
delay_ms(500);
if(!input(pin_a2))
output_bit(pin_b1,a);
delay_ms(500);
if(!input(pin_a2))
output_low(pin_b1);
delay_ms(500);
if(!input(pin_a2))
output_bit(pin_b1,a);
delay_ms(500);
if(!input(pin_a2))
output_low(pin_b1);
delay_ms(500);
output_low(pin_b7);
}
while(input(pin_a2))
{
b=~b;
delay_ms(800);
if(!input(pin_a2))
if(!input(pin_a1))
output_bit(pin_b2,b);
output_bit(pin_b1,a);
delay_ms(500);
if(!input(pin_a1))
output_low(pin_b1);
delay_ms(500);
if(!input(pin_a1))
output_bit(pin_b1,a);
delay_ms(500);
if(!input(pin_a1))
output_low(pin_b1);
delay_ms(500);
if(!input(pin_a1))
output_bit(pin_b1,a);
delay_ms(500);
if(!input(pin_a1))
output_low(pin_b1);
delay_ms(500);
output_low(pin_b2);
}
}
}
โปรแกรมตัวนี้ผมเขียนภาษาซีแล้วใช้กับ IC PIC ตอนนี้เลยอยากศีกษา บอร์ด arduino
มีตัวอย่างโคดการใช้สวิตช์กดค้างแล้วจับเวลาในการกด
รอติดตามวิธีเขียนโปรแกรม Arduino ในคอร์สเรียน Arduino เร็ว ๆ นี้ครับ