วันพุธที่ 14 มีนาคม พ.ศ. 2561

ส่งงานครั้งที่ 4

Arduino - LED Bar Graph
const int analogPin = A0;
const int ledCount = 8;
int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9};
void setup() {
   for (int thisLed = 0; thisLed < ledCount; thisLed++) { //กำหนด thisLed=0 ถ้า thisLed น้อยกว่า ledCount ให้เพิ่ม thisLed ทีละ 1
      pinMode(ledPins[thisLed], OUTPUT);
   }
}
void loop() {
   int sensorReading = analogRead(analogPin);
   int ledLevel = map(sensorReading, 0, 1023, 0, ledCount); //กำหนดค่า sensorReading จาก 0,1023 เป็น 0,ledCount
   for (int thisLed = 0; thisLed < ledCount; thisLed++) {
      if (thisLed < ledLevel) {
         digitalWrite(ledPins[thisLed], HIGH);
      }else {
         digitalWrite(ledPins[thisLed], LOW);
      }
   }
Bar Breadboard

ส่งงานครั้งที่3

Arduino ควบคุมหลอด LED RGB


int RGBPin[] = { 9, 10, 11 }; //กำหนดตัวเเปรRGBPinที่ขา 9,10,11 
void setup() {
  pinMode(RGBPin[0], OUTPUT);
  pinMode(RGBPin[1], OUTPUT);
  pinMode(RGBPin[2], OUTPUT);
}

void SetRGB(int r, int g, int b) { //เปิดฟังก์ชั่น SetRGB กำหนดตัวแปร r,g,b
  analogWrite(RGBPin[0], r); //ส่งค่า r ที่ RGBPin ตำแหน่งที่ 0
  analogWrite(RGBPin[1], g); //ส่งค่า g ที่ RGBPin ตำแหน่งที่ 1
  analogWrite(RGBPin[2], b); //ส่งค่า b ที่ RGBPin ตำแหน่งที่ 2
}

void loop() {
  SetRGB(255, 0, 0); //อ่านค่าจาก SetRGB r=255,g=0,b=0 (Red)
  delay(500); //หน่วงเวลา 5 วินาที
  SetRGB(0, 255, 0); //อ่านค่าจาก SetRGB r=0,g=255,b=0 (Green)
  delay(500);
  SetRGB(0, 0, 255); //อ่านค่าจาก SetRGB r=0,g=0,b=255 (Blue)
  delay(500);
  SetRGB(255, 255, 0); //อ่านค่าจาก SetRGB r=255,g=255,b=0 (Yellow)
  delay(500);
  SetRGB(0, 255, 255); //อ่านค่าจาก SetRGB r=0,g=255,b=255 (Sky blue)
  delay(500);
  SetRGB(255, 0, 255); //อ่านค่าจาก SetRGB r=255,g=0,b=255 (Pink)
  delay(500);
  SetRGB(255, 255, 255); //อ่านค่าจาก SetRGB r=255,g=255,b=255 (White)
  delay(500);
}

วันพุธที่ 7 มีนาคม พ.ศ. 2561

ส่งงานครั้งที่ 2

Button Digital Input

int buttonPin = 2;
int ledPin = 13;
int buttonState = 0; //กำหนดตัวแปร buttonState สถานะของปุ่ม ตั้งค่าเริ่มต้นให้เป็น 0

void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
}

void loop(){
buttonState = digitalRead(buttonPin); //ให้ตัวแปร buttonState อ่านค่าที่ได้รับเหมือน buttonPin

if (buttonState == HIGH) { //ถ้าตัวแปร buttonState ต้องมีค่าเป็น high
digitalWrite(ledPin, HIGH);
}
else {
digitalWrite(ledPin, LOW); 
}
}


ส่งงานครั้งที่ 1

Arduino Switch ควบคุม LED

int sw0=5; //กำหนดตัวแปร sw0 ที่ ขา 5
int sw1=6; //กำหนดตัวแปร sw1 ที่ ขา 6
int sw2=7; //กำหนดตัวแปร sw2 ที่ ขา 7
int led0=12; //กำหนดตัวแปร led ที่ ขา 12
int led1=13; //กำหนดตัวแปร led1 ที่ ขา 13

void setup()
{
 pinMode(sw0,INPUT); //กำหนดตัวเเปร sw0 เป็น input
 pinMode(sw1,INPUT); //กำหนดตัวเเปร sw1 เป็น input 
 pinMode(sw2,INPUT); //กำหนดตัวเเปร sw2 เป็น input
 pinMode(led0,OUTPUT); //กำหนดตัวเเปร led0เป็น output
 pinMode(led1,OUTPUT); //กำหนดตัวเเปร led1 เป็น output
}

void loop()
{
 if (digitalRead(sw0)==LOW)  //ถ้าอ่านค่าดิจิตอลจาก sw0 เป็น low ให้
 {
  digitalWrite(led0,HIGH); //ส่งค่า high ไปที่ขา led0
 }
 else //ถ้าไม่
 {
  digitalWrite(led0,LOW); //ให้ส่งค่า low ไปที่ขา led0
 }


 if (digitalRead(sw1)==LOW) //ถ้าอ่านค่าดิจิตอลจาก sw1 เป็น low ให้
 {
  digitalWrite(led1,HIGH); //ส่งค่า high ไปที่ขา led1
 }
 }
 else //ถ้าไม่
 {
  digitalWrite(led1,LOW); //ให้ส่งค่า low ไปที่ขา led1
 }
 }

 if (digitalRead(sw2)==LOW) //ถ้าอ่านค่าดิจิตอลจาก sw2 เป็น low ให้
 {
  digitalWrite(led0,HIGH); //ส่งค่า high ไปที่ขา led0
  digitalWrite(led1,HIGH); //ส่งค่า high ไปที่ขา led1
 }
 else //ถ้าไม่
 {
  digitalWrite(led0,LOW); //ให้ส่งค่า low ไปที่ขา led0
  digitalWrite(led1,LOW); //ให้ส่งค่า low ไปที่ขา led1
 }
}

Mini Project

 Control Lamp 220v  With LDR const int lamp = 12; const int ldrPin=A0; #include <Wire.h> #include <LiquidCrystal_I2C.h...