Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <LiquidCrystal.h>
- LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
- int silnik=0;
- int moc=0;
- int czas=0;
- double x;
- int temp=30;
- int obr=600;
- int tryb=0;
- int EnB=8;
- int En4=9;
- int En3=10;
- int Przyc=11;
- int s;
- void setup(){
- Serial.begin(9600);
- lcd.begin(16, 2); //Deklaracja typu
- pinMode(EnB,OUTPUT);
- pinMode(En4,OUTPUT);
- pinMode(En3,OUTPUT);
- digitalWrite(EnB,LOW);
- digitalWrite(En4,LOW);
- digitalWrite(En3,LOW);
- pinMode(Przyc,INPUT_PULLUP);
- ekran_powitalny();
- digitalWrite(Przyc,HIGH);
- delay(200);
- while(digitalRead(Przyc)==HIGH){
- Tryb();
- //lcd.setCursor(14,1);
- //lcd.print(tryb);
- delay(100);
- }
- delay(200);
- lcd.clear();
- wyswietlanie_menu_wyboru();
- x=0;
- digitalWrite(Przyc,HIGH);
- delay(200);
- while(digitalRead(Przyc)==HIGH){
- Tempt();
- lcd.setCursor(5,0);
- lcd.print(temp);
- delay(100);
- }
- x=0;
- digitalWrite(Przyc,HIGH);
- delay(200);
- while(digitalRead(Przyc)==HIGH){
- Obroty();
- lcd.setCursor(5,1);
- lcd.print(obr);
- delay(200);
- }
- lcd.clear();
- switch(tryb){
- case 1:
- Tryb1();
- break;
- case 2:
- Tryb2();
- break;
- case 3:
- Tryb3();
- break;
- case 4:
- Tryb4();
- break;
- case 5:
- Tryb5();
- break;
- case 6:
- Tryb6();
- break;
- }
- lcd.setCursor(4,0);
- lcd.print("Gotowe!!!");
- delay(1000);
- }
- void loop(){
- }
- void Silnik(int wart, int kierunek){
- if(kierunek==0){
- digitalWrite(En3,0);
- digitalWrite(En4,1);
- analogWrite(EnB,wart);
- }else{
- digitalWrite(En3,1);
- digitalWrite(En4,0);
- analogWrite(EnB,wart);
- }
- }
- void Tempt(){
- x=analogRead(A5);
- if((x>=0)&&(x<256)){
- temp=30;
- }
- if((x>255)&&(x<512)){
- temp=40;
- }
- if((x>511)&&(x<768)){
- temp=60;
- }
- if((x>766)&&(x<1024)){
- temp=90;
- }
- }
- void Obroty(){
- x=analogRead(A5);
- if((x>=0)&&(x<256)){
- obr=600;
- silnik=150;
- }
- if((x>255)&&(x<512)){
- obr=700;
- silnik=170;
- }
- if((x>511)&&(x<768)){
- obr=800;
- silnik=180;
- }
- if((x>766)&&(x<1024)){
- obr=900;
- silnik=200;
- }
- }
- void Tryb(){
- x=analogRead(A5);
- if((x>=0)&&(x<171)){
- tryb=1;
- lcd.setCursor(0,0);
- lcd.print("Pranie wstepne");
- }lcd.clear();
- if((x>170)&&(x<340)){
- tryb=2;
- lcd.setCursor(0,0);
- lcd.print("Pranie zasadnicze");
- }lcd.clear();
- if((x>341)&&(x<512)){
- tryb=3;
- lcd.setCursor(0,0);
- lcd.print("Pranie zasadnicze");
- }lcd.clear();
- if((x>513)&&(x<684)){
- tryb=4;
- lcd.setCursor(0,0);
- lcd.print("Plukanie");
- }lcd.clear();
- if((x>683)&&(x<853)){
- tryb=5;
- lcd.setCursor(0,0);
- lcd.print("Wirowanie");
- }lcd.clear();
- if((x>854)&&(x<1024)){
- tryb=6;
- lcd.setCursor(0,0);
- lcd.print("Suszenie");
- }lcd.clear();
- }
- void Tryb2(){
- for(czas=10;czas>=0;czas--){
- Silnik(silnik,0);
- Serial.println(czas);
- lcd.setCursor(0,0);
- lcd.print("Pranie wstepne");
- wyswietlanie_czasu();
- delay(1000);
- }
- Silnik(0,0);
- lcd.clear();
- czas=0;
- }
- void Tryb3(){
- for(czas=10;czas>=0;czas--){
- Silnik(silnik,czas%2);
- Serial.println(czas);
- lcd.setCursor(0,0);
- lcd.print("Pranie zasadnicze");
- wyswietlanie_czasu();
- delay(1000);
- }
- lcd.clear();
- czas=0;
- Silnik(0,0);
- }
- void Tryb4(){
- for(czas=4;czas>=0;czas--){
- Silnik(silnik,czas%2);
- obr=200;
- temp=30;
- Serial.println(czas);
- lcd.setCursor(0,0);
- lcd.print("Plukanie");
- wyswietlanie_czasu();
- delay(1000);
- }
- lcd.clear();
- czas=0;
- Silnik(0,0);
- }
- void Tryb5(){
- for(czas=10;czas>=0;czas--){
- Silnik(silnik,0);
- obr=900;
- temp=30;
- Serial.println(czas);
- lcd.setCursor(0,0);
- lcd.print("Wirowanie");
- wyswietlanie_czasu();
- delay(1000);
- }
- lcd.clear();
- czas=0;
- Silnik(0,0);
- }
- void Tryb6(){
- for(czas=10;czas>=0;czas--){
- Silnik(silnik,czas%2);
- obr=500;
- Serial.println(czas);
- lcd.setCursor(0,0);
- lcd.print("Suszenie");
- wyswietlanie_czasu();
- delay(1000);
- }
- Silnik(0,0);
- lcd.clear();
- czas=0;
- }
- void Tryb1(){
- Tryb2();
- delay(500);
- Tryb3();
- delay(500);
- Tryb4();
- delay(500);
- Tryb5();
- delay(500);
- Tryb6();
- delay(500);
- }
- void ekran_powitalny(){
- lcd.clear();
- lcd.setCursor(6,0);
- lcd.print("MEiL");
- lcd.setCursor(3,1);
- lcd.print("Industries");
- delay(3000);
- lcd.clear();
- lcd.setCursor(5,0);
- lcd.print("Witaj!");
- lcd.setCursor(0,1);
- lcd.print("Wybierz tryb:");
- }
- void wyswietlanie_menu_wyboru(){
- lcd.setCursor(0, 0); //Ustawienie kursora
- lcd.print("temp "); //Wyúwietlenie tekstu
- lcd.setCursor(7,0);
- lcd.print("*C");
- lcd.setCursor(0, 1); //Ustawienie kursora
- lcd.print("obr "); //Wyúwietlenie tekstu
- lcd.setCursor(8, 1); //Ustawienie kursora
- lcd.print("rpm"); //Wyúwietlenie tekstu
- }
- void wyswietlanie_czasu(){
- lcd.setCursor(5,1);
- lcd.print(" ");
- lcd.setCursor(5,1);
- lcd.print(czas);
- lcd.setCursor(7,1);
- lcd.print("sek");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement