วันศุกร์ที่ 22 พฤษภาคม พ.ศ. 2558

วันที่ 5 ของการฝึกงานที่ FIBO

1.ไปถึงห้องเจอโจทย์ที่พี่ให้ไว้ให้

ซึงผมก็ทำตังแต่ 9.00น - 12.00น เลยครับก็ได้ศึกษาก่อนคือผมเข้าไปหาข้อมูลใน www.google.com จึงได้เขียนโปรแกรมเป็นแบบนี้เลยครับ              int S1 = 2;                                                                int S2 = 3;
int S3 = 14;
int S4 = 15;
 int VR = A3;
int VR2= 0;
void setup(){
pinMode(S1,INPUT);
pinMode(S2,INPUT);
pinMode(S3,INPUT);
pinMode(S4,INPUT);
for (int i=6; i <= 13; i++){
pinMode(i,OUTPUT);
}
for (int j=13; j >= 6; j--){
pinMode(j,OUTPUT);
}
}
void loop(){
if(digitalRead(S1)==HIGH){
for(int i=6; i <= 13; i++){
digitalWrite(i,HIGH);
delay(500);
digitalWrite(i,LOW);
delay(500);
}
}
if(digitalRead(S2)==HIGH){
for(int j=13; j >= 6; j--){
digitalWrite(j,HIGH);
delay(500);
digitalWrite(j,LOW);
delay(500);
}
}
if(digitalRead(S3)==HIGH){
for(int i=6; i <= 13; i++){
digitalWrite(i,HIGH);
delay(700);
digitalWrite(i,LOW);
delay(700);
}
for(int j=13; j >= 6; j--){
digitalWrite(j,HIGH);
delay(700);
digitalWrite(j,LOW);
delay(700);
}
}
if(digitalRead(S4)==HIGH){
for(int i=6; i <= 13; i++){
digitalWrite(i,HIGH);
delay(200);
digitalWrite(i,LOW);
delay(200);
}
for(int j=13; j >= 6; j--){
digitalWrite(j,HIGH);
delay(200);
digitalWrite(j,LOW);
delay(200);
}
}
if(digitalRead(VR)==HIGH){
for(int i=6; i <= 13; i++){
digitalWrite(i,HIGH);
delay(VR);
digitalWrite(i,LOW);
delay(VR);
}
for(int j=13; j >= 6; j--){
digitalWrite(j,HIGH);
delay(VR);
digitalWrite(j,LOW);
delay(VR);
}
}
                                                                         }
จะได้ไฟวิ่งตามรูปนี้เลยครับ

2.ตอนบ่ายพี่ไนท์ให้ทำวงจรกด สวิทช์ S1 แล้ว 7-segment ติดเป็นเลข 1 กดครั่งที่ 2 เป็นเลข กดสวิทช์ S2 นับขึ้นครั่งละ 10 จึงได้ทำจะได้โปรแกรมประมาณนี้ครับ
const byte SEVEN_SEG[7] = {6, 7, 8, 9, 10, 11, 12}; const byte ZeroToNine[10][8] = { {1,1,1,1,1,1,0}, {0,1,1,0,0,0,0}, {1,1,0,1,1,0,1}, {1,1,1,1,0,0,1}, {0,1,1,0,0,1,1}, {1,0,1,1,0,1,1}, {1,0,1,1,1,1,1}, {1,1,1,0,0,0,0}, {1,1,1,1,1,1,1}, {1,1,1,1,0,1,1}}; ; void setup() { pinMode(A2,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); for (int i = 0; i < 7; i++) { pinMode(SEVEN_SEG[i], OUTPUT); digitalWrite(SEVEN_SEG[i], HIGH ); } digitalWrite(A2,LOW); digitalWrite(4,LOW); digitalWrite(5,LOW); } void loop() { int i = 0; for (int k = 0; k< 7; k++) { digitalWrite(A2,LOW); digitalWrite(4,HIGH); digitalWrite(5,HIGH); digitalWrite(SEVEN_SEG[k], ZeroToNine[i][k] ); } delay(6); for (int k = 0; k< 7; k++) { digitalWrite(A2,HIGH); digitalWrite(4,LOW); digitalWrite(5,HIGH); digitalWrite(SEVEN_SEG[k], ZeroToNine[i+1][k] ); } delay(6); for (int k = 0; k< 7; k++) { digitalWrite(A2,HIGH); digitalWrite(4,HIGH); digitalWrite(5,LOW); digitalWrite(SEVEN_SEG[k], ZeroToNine[i+2][k] ); } delay(6); }

แต่ปัญหาคือผมยังทำ INPUT รับค่าจากสวิทช์ไม่ได้ซึงผมต้องกลับมาอ่านหนังสือใหม่ครับ
ซึงปัญหาไม่ได้เกิดจากสิ่งได๋ซึ่งมันเกิดจากตัวผมเองที่ความรู้ยังไม่มีพอที่จะทำได้ ผมต้องขยันเป็น 2 หรือ 3 เท่าครับ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น