Tài liệu học tập

Tài liệu tham khảo Lập trình vi điều khiển (Arduino)

09:53 | 12/09/2018



//Điều khiển 3 động cơ Hoạt động tuần tự (do SV Đinh Văn Hải - CĐQTM 16 thực hiện)



#include <Wire.h>;
#include <LiquidCrystal_I2C.h>;
LiquidCrystal_I2C lcd(0x27,16,2);


int led1 = 2;
int led2 = 3;
int led3 = 4;




int bien=0;
int bat=13;
int tat=12; 
int i=1;
int k;
unsigned long t1=0;
unsigned long t2=0;




void setup()
{
    pinMode(led1, OUTPUT);
    pinMode(led2, OUTPUT);
    pinMode(led3, OUTPUT);
pinMode(bat, INPUT);
pinMode(tat, INPUT);


lcd.begin();       //Khởi động  màn hình
lcd.backlight();   //Bật đèn nền
 lcd.clear();
    lcd.setCursor(0,0);   lcd.print("DC1:OFF");
    lcd.setCursor(9,0);   lcd.print("DC2:OFF");
    lcd.setCursor(0,1);   lcd.print("DC3:OFF");
     lcd.setCursor(9,1);   lcd.print("lan:");
}


void loop()
{  


 
   
  if ((digitalRead(bat) == HIGH)&&(digitalRead(tat) == LOW))
    {     bien=1; }
    
    if (bien==1)
    {   
        
                 t1=millis(); 
       {digitalWrite(led1, HIGH); k=1;  lcd.setCursor(4,0);   lcd.print("ON "); lcd.setCursor(13,1);   lcd.print(i);
      
       } 
         if (t1-t2 >5000)     {digitalWrite(led2, HIGH);    lcd.setCursor(13,0);   lcd.print("ON "); } 
         if (t1-t2 >10000)    {digitalWrite(led3, HIGH);      lcd.setCursor(4,1);   lcd.print("ON ");     ; } 
          
     } 
    
     
            
   if (digitalRead(tat) == HIGH)
       {
          bien=0;
         
           digitalWrite(led1, LOW);
            digitalWrite(led2, LOW);
            digitalWrite(led3, LOW);


           lcd.setCursor(0,0);   lcd.print("DC1:OFF");
           lcd.setCursor(9,0);   lcd.print("DC2:OFF");
           lcd.setCursor(0,1);   lcd.print("DC3:OFF");
           lcd.setCursor(9,1);   lcd.print("lan:");
           
            t2=t1;
           t1=millis();
          
            
        if (k==1) { i=i+1; k=0; }
        }    // end if tat
        
     if ((digitalRead(bat) == HIGH)&&(digitalRead(tat) == HIGH))  {   i=1;  lcd.setCursor(13,1);   lcd.print(i-1);               }
           
 
 }// end loop