سلسلة الأردوينو للمبتدئين ( المشروع عـــ9ـــدد ) : عداد من 1-9 باستعمال 7SEG-COM-CATH
المطلوب تنفيذه
1- عند الظغط على الزر يبدأ العد
2- عند الرفع يبقي العدد الاخير على الشاشة
3- عند اعادة الظغط يصفر و يبدأ من جديد
المكونات
1-اردوينوا
2- 7SEG-COM-CATH
3- مفتاح جرس
4- مقاومة 10K
المخطط
الكود
void setup()
{
pinMode(7,OUTPUT);
pinMode(6,OUTPUT);
pinMode(5,OUTPUT);
pinMode(4,OUTPUT);
pinMode(3,OUTPUT);
pinMode(2,OUTPUT);
pinMode(1,OUTPUT);
pinMode(0,INPUT_PULLUP );
}
void loop()
{
int k= -1 ;
while (digitalRead(0) == HIGH ) {
k++;
if (k==0){
//0
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,HIGH);
digitalWrite(3,HIGH);
digitalWrite(2,HIGH);
digitalWrite(1,LOW);
delay(200);
digitalRead(0);
}
else if (k==1){
//1
digitalWrite(7,LOW);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,LOW);
digitalWrite(3,LOW);
digitalWrite(2,LOW);
digitalWrite(1,LOW);
delay(200);
digitalRead(0);
}
else if (k==2){
//2
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,LOW);
digitalWrite(4,HIGH);
digitalWrite(3,HIGH);
digitalWrite(2,LOW);
digitalWrite(1,HIGH);
delay(200);
digitalRead(0);
}
else if (k==3){
//3
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,HIGH);
digitalWrite(3,LOW);
digitalWrite(2,LOW);
digitalWrite(1,HIGH);
delay(200);
digitalRead(0);
}
else if (k==4){
//4
digitalWrite(7,LOW);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,LOW);
digitalWrite(3,LOW);
digitalWrite(2,HIGH);
digitalWrite(1,HIGH);
delay(200);;
digitalRead(0);
}
else if (k==5){
//5
digitalWrite(7,HIGH);
digitalWrite(6,LOW);
digitalWrite(5,HIGH);
digitalWrite(4,HIGH);
digitalWrite(3,LOW);
digitalWrite(2,HIGH);
digitalWrite(1,HIGH);
delay(200);
digitalRead(0);
}
else if (k==6){
//6
digitalWrite(7,LOW);
digitalWrite(6,LOW);
digitalWrite(5,HIGH);
digitalWrite(4,HIGH);
digitalWrite(3,HIGH);
digitalWrite(2,HIGH);
digitalWrite(1,HIGH);
delay(200);
digitalRead(0);
}
else if (k==7){
//7
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,LOW);
digitalWrite(3,LOW);
digitalWrite(2,LOW);
digitalWrite(1,LOW);
delay(200);
digitalRead(0);
}
else if (k==8){
//8
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,HIGH);
digitalWrite(3,HIGH);
digitalWrite(2,HIGH);
digitalWrite(1,HIGH);
delay(200);
digitalRead(0);
}
else if (k==9){
//9
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,HIGH);
digitalWrite(4,LOW);
digitalWrite(3,LOW);
digitalWrite(2,HIGH);
digitalWrite(1,HIGH);
delay(200);
digitalRead(0);
}
}
}
ليست هناك تعليقات:
إرسال تعليق