Saturday, February 23, 2019

2

                                                                         งานที่ 2
                                                               
                                                      Code
int D7 = 7;int D6 = 6;int D5 = 5;int D4 = 4;
void setup()
{
    pinMode(D7,OUTPUT);pinMode(D6,OUTPUT);
    pinMode(D5,OUTPUT);pinMode(D4,OUTPUT);
}
void loop()
{
    digitalWrite(D7,HIGH);digitalWrite(D6,LOW);
    digitalWrite(D5,LOW);digitalWrite(D4,LOW);
    delay(1000);
    digitalWrite(D7,LOW);digitalWrite(D6,HIGH);
    digitalWrite(D5,LOW);digitalWrite(D4,LOW);
    delay(1000);
    digitalWrite(D7,LOW);digitalWrite(D6,LOW);
    digitalWrite(D5,HIGH);digitalWrite(D4,LOW);
    delay(1000);
    digitalWrite(D7,LOW);digitalWrite(D6,LOW);
    digitalWrite(D5,LOW);digitalWrite(D4,HIGH);
    delay(1000);
}

3

                                                                        งานที่ 3

Code

#include "LedControl.h"
LedControl lc=LedControl(5,7,6,1);
// Pin 5->DIN, 7->CLK, 6->CS(LOAD), 1 = No.of devices
void show4digit(int num)
{
   int seg1,seg2,seg3,seg4;
  seg1 = ((num%1000)%100)%10;
  seg2 = ((num%1000)%100)/10;
  seg3 = (num%1000)/100;
  seg4 = num/1000; 
  lc.setDigit(0,0,seg1,false);
  if (num>=10)
    lc.setDigit(0,1,seg2,false);
    if (num>=100)
        lc.setDigit(0,2,seg3,false);
    if (num>=1000)
        lc.setDigit(0,3,seg4,false); 
    delay(300);
}
void setup()
{
    Serial.begin(9600);
    lc.shutdown(0,false); 
    lc.setIntensity(0,5);
    lc.clearDisplay(0);     
}
void loop()
{
    int num;
    num = analogRead(A0);
    Serial.print("analogRead=");Serial.println(num);
    lc.clearDisplay(0);
    show4digit(num);
}

Friday, February 22, 2019

4

งานที่ 4
      Code
int led = 10;
void setup()
{
  Serial.begin(9600);
  pinMode(led,OUTPUT);   
}
void loop()
{
  int x,y;
  x = analogRead(A0);
  y = map(x,0,1023,0,255);
  Serial.print("x = ");Serial.println(x);
  Serial.print("y = ");Serial.println(y); 
  analogWrite(led,y);
}

5

งานที่ 5

Code
int led = 13;
int sw = 2;
void setup()
{
  Serial.begin(9600);
  pinMode(led,OUTPUT);
  pinMode(sw,INPUT);       
}

void loop()
  int x;
  x = digitalRead(sw);
  Serial.print("x = ");Serial.println(x);
  digitalWrite(led,!x);  
}

6

งานที่ 6
Code

#include "LedControl.h"
#include "Keypad.h"
char keys[1][1][0][5]={
  {'7','8','9','A'},
  {'4','5','6','B'},
  {'1','2','3','C'},
  {'E','0','F','D'}};
byte rowPins[] = {7,6,5,4};
byte colPins[] = {3,2,1,0};
Keypad keypad = Keypad(makeKeymap(keys),rowPins,colPins,4,4);
LedControl lc=LedControl(1,1,0,5);
void setup()
{
  lc.shutdown(0,false); 
  lc.setIntensity(0,5);
  lc.clearDisplay(0);     
}
void loop()
{
  char key = keypad.getKey();
  if (key != NO_KEY)
  {
    lc.setChar(0,0,key,false);
  }
}

7

งานที่ 7

                                                                       Code
#include "LedControl.h"
#define C4  262
#define D4  294
#define E4  330
#define F4  349
#define FS4 370
#define G4  392
#define A4  440
#define B4  494
#define C5  523
#define D5  587
int melody[] = {D4,D4,E4,D4,G4,FS4,D4,D4,E4,D4,A4,G4,D4,D4,D5, 
  B4,G4,FS4,E4,C5,C5,B4,G4,A4,G4};
float beats[] ={0.5,0.5,1,1,1,2,0.5,0.5,1,1,1,2,0.5,0.5,1,1,
  1,1,1,0.5,0.5,1,1,1,2};
int buzzerpin = 11;
int timestop = 70;
LedControl lc=LedControl(8,10,9,1); 
// Pin 8->DIN, 10->CLK, 9->CS(LOAD), 1 = No.of devices
void setup() 
{
  lc.shutdown(0,false);  
  lc.setIntensity(0,5); 
  lc.clearDisplay(0);
  int dl = 400;
  pinMode(buzzerpin,OUTPUT);
  lc.setChar(0,7,'H',false);
  lc.setChar(0,6,'b',false);
  lc.setChar(0,5,'d',false);
  int numnote;
  numnote = sizeof(melody)/2;  
  for (int i=0;i<numnote;i++) 
  {
    tone(buzzerpin, melody[i],dl*beats[i]);
    delay(dl*beats[i]);
    digitalWrite(buzzerpin,HIGH);
    delay(timestop);
  }
}
void loop() 
{}



8

งานที่ 8

                                                             Code
#include "LedControl.h"
#include "Keypad.h"
#define C4  262
#define D4  294
#define E4  330
#define F4  349
#define G4  392
#define A4  440
#define B4  494
#define C5  523
char keys[4][4]={
  {7,8,9,0},
  {4,5,6,0},
  {1,2,3,0},
  {0,0,0,0}};
byte rowPins[] = {7,6,5,4};
byte colPins[] = {3,2,1,0};
Keypad keypad = Keypad(makeKeymap(keys),rowPins,colPins,4,4);
int melody[] = {C4,D4,E4,F4,G4,A4,B4,C5};
int dl = 300;
int buzzerpin = 11;
LedControl lc=LedControl(8,10,9,1);
// Pin 8->DIN, 10->CLK, 9->CS(LOAD), 1 = No.of devices
void setup()
{
  lc.shutdown(0,false); 
  lc.setIntensity(0,5);
  lc.clearDisplay(0);
  pinMode(buzzerpin,OUTPUT);
  digitalWrite(buzzerpin,HIGH);
}
void loop()
{
  char key = keypad.getKey();
  if ((key != NO_KEY) && (key < 9))
  {
    lc.setDigit(0,0,key,false);
    tone(buzzerpin, melody[key-1],dl);
    delay(dl);
    digitalWrite(buzzerpin,HIGH);
  }
}

9

งานที่ 9

Code
#include <Wire.h>
#include <LiquidCrystal_I2C.h> 
LiquidCrystal_I2C lcd(0x27,16,2);
void setup()
{
  lcd.backlight();
  lcd.begin();//LiquidCrystal_I2C
}
void loop() 
{
  lcd.setCursor(0,0);
  lcd.print("Hello LCD I2C");
  lcd.setCursor(0,1);
  lcd.print("Pattayatech");
}


10

งานที่ 10
                                                                                                                                                                       
Code
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int aVal=0,tempaVal=0;
void setup()
{
  lcd.begin(16,2);
}
void loop()
{
  aVal = analogRead(A0);

  if (tempaVal != aVal)
  {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("LDR");
    lcd.setCursor(0,1);
    lcd.print(aVal);
    delay(300);
  }
  tempaVal = aVal;
}

11

งานที่ 11
             
                 Code
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int aval,temp_aval=0;
void setup()
{
  lcd.begin();
  lcd.setCursor(0,0);
  lcd.print("aval = ");
}
void loop()
{
   aval = analogRead(A0);
   if (temp_aval != aval)
   {
      lcd.setCursor(7,0);
      lcd.print("    ");
   }
   lcd.setCursor(7,0);
   lcd.print(aval);
   temp_aval = aval;
   delay(300);
}

12

งานที่ 12
             Code
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int triggerPin = 13;
int echoPin = 12;
long duration,distCM,temp_distCM=0;
void setup() 
{
  lcd.begin(16,2);
  lcd.setCursor(0,0);
  lcd.print("Dist =      cm");
  pinMode(triggerPin,OUTPUT);
  pinMode(echoPin,INPUT);
}
void loop() 
{
  digitalWrite(triggerPin,LOW);
  delayMicroseconds(2);
  digitalWrite(triggerPin,HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin,LOW);
  duration = pulseIn(echoPin,HIGH);
  distCM = duration/58;
  if (temp_distCM != distCM)
  {
    lcd.setCursor(7,0);
    lcd.print("    ");
  }
  lcd.setCursor(7,0);
  lcd.print(distCM);
  temp_distCM = distCM;
  delay(300);
}



13

                                                                        งานที่ 13


Code
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int PIRpin = 8;
void setup() 
  lcd.begin();
  pinMode(PIRpin,INPUT);
  lcd.home();
  lcd.print("Waiting for PIR");
  delay(10000);       
  lcd.clear();
}
void loop()
  int x = digitalRead(PIRpin);
  lcd.home();
  lcd.print("PIR = ");
  lcd.print(x);
  delay(100);
}

Wednesday, February 20, 2019

15




#include <LiquidCrystal_I2C.h>
#include <DHT11.h>
int pin=4;
DHT11 dht11(pin);
LiquidCrystal_I2C lcd(0x27,16,2);
void setup()
{
  lcd.begin();
  lcd.setCursor(0,0);lcd.print("H =    %RH");
  lcd.setCursor(0,1);lcd.print("T =    C");
}
void loop()
{
int err;
  float temp, humi;
  if((err=dht11.read(humi, temp))==0)
  {
    Serial.print("temperature:");
    Serial.print(temp);
    Serial.print(" humidity:");
    Serial.print(humi);
    Serial.println();
 
  }
  else
  {
    Serial.println();
    Serial.print("Error No :");
    Serial.print(err);
    Serial.println(); 
  }
  lcd.setCursor(4,0);
  lcd.print(humi);
  lcd.setCursor(4,1);
  lcd.print(temp);
  delay(300);
}

14

#include <LedControl.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 11
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float Tfloat;
long Tint;
LedControl lc=LedControl(8,10,9,1);
// Pin 8->DIN, 10->CLK, 9->CS(LOAD), 1 = No.of devices
void show6digit(long num)
{
  int seg1,seg2,seg3,seg4,seg5,seg6;
  seg6 = (num/100000);
  seg5 = ((num%100000)/10000);
  seg4 = (((num%100000)%10000)/1000);
  seg3 = ((((num%100000)%10000)%1000)/100);
  seg2 = (((((num%100000)%10000)%1000)%100)/10);
  seg1 = (((((num%100000)%10000)%1000)%100)%10);
  lc.setDigit(0,0,seg1,false);
  lc.setDigit(0,1,seg2,false);
  lc.setDigit(0,2,seg3,false);
  lc.setDigit(0,3,seg4,false);
  lc.setDigit(0,4,seg5,true);
  if (num>=100000)
      lc.setDigit(0,5,seg6,false);
  delay(300);
}
void setup(void)
{
  sensors.begin();
  lc.shutdown(0,false); 
  lc.setIntensity(0,5);
  lc.clearDisplay(0);
}
void loop(void)
{
  sensors.requestTemperatures();
  Tfloat = sensors.getTempCByIndex(0);
  Tint = long(Tfloat*10000);
  lc.clearDisplay(0);
  show6digit(Tint);
}



Thursday, February 7, 2019

LCD+Infrared Sensor



#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd (0x27,16,2);
int aval,temp_aval=0;
void setup() {
  lcd.begin(16,2);
  lcd.setCursor(0,0);
  lcd.print("aval = ");
}

void loop() {
aval = analogRead(A0);
if (temp_aval  != aval)
{
  lcd.setCursor(7,0);
  lcd.print("        ");
}
lcd.setCursor(7,0);
lcd.print(aval);
temp_aval = aval;
delay(300);
}
ทดลอง
 พอเอาภาษา C ไปใส่ Arduino จะได้ว่าพอปรับค่า GP2Y0A21YK0F แล้ว LCD จะแสดงค่า cm ออกมา

LCD+LDR


#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int aVal=0,tempaVal=0;
void setup()
{

  lcd.begin(16,2);
}
void loop()
{
 aVal = analogRead(A0);

if (tempaVal != aVal)
{
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("LDR");
  lcd.setCursor(0,1);
  lcd.print(aVal);
  delay(300);
}
tempaVal = aVal;
}
ทดลอง
พอเอา ภาษา C ไปใส่ Arduino จะแสดงค่าความต้านทาน LDR ตามที่เราปรับ

Keypad

#include "LedControl.h"
#include "Keypad.h"
#define  C4  262
#define  D4  294
#define  E4  330
#define  F4  349
#define  G4  392
#define  A4  440
#define  B4  494
#define  C5  523
char keys [4][4]={
   {7,8,9,0},
   {4,5,6,0},
   {1,2,3,0},
   {0,0,0,0}};
byte rowPins[] = {7,6,5,4};
byte colPins[] = {3,2,1,0};
Keypad keypad = Keypad(makeKeymap(keys),rowPins,colPins,4,4);
int melody[]= {C4,D4,E4,F4,G4,A4,B4,C5};
int dl=300;
int buzzerpin = 11;
LedControl lc=LedControl(8,10,9,1);
void setup()
{
  lc.shutdown(0,false);
  lc.setIntensity(0,5);
  lc.clearDisplay(0);
  pinMode(buzzerpin,OUTPUT);
  digitalWrite(buzzerpin.HIGH);
}
void loop()
{
  char key = keypad.getKey();
  if ((key != NO_KEY) && (key < 9))
  {
    lc.setDigit(0,0,key,false);
    tone(buzzerpin, melody[key-1],d1);
    delay(d1);
    digitalWrite(buzzerpin.HIGH);
  }  
}

MINI Project ตัวจับเวลา

#include <LiquidCrystal.h> LiquidCrystal lcd(7,6,5,4,3,2); const int set = 8; int hours=10; int start=11;  int relay=9; ...