0% found this document useful (0 votes)
12 views12 pages

#Include SoftwareSerial

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views12 pages

#Include SoftwareSerial

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

#include "SoftwareSerial.

h"

#include "DFRobotDFPlayerMini.h"

#include "U8glib.h"

#define buton1 4

#define buton2 12

#define buton3 13

#define kat1 A0

#define kat2 A1

#define kat3 A2

int kat1led=5;

int kat2led=7;

int kat3led=6;

//-----------------Step Motor Global Kodları-------------------

const int motorPin1 = 8;

const int motorPin2 = 9;

const int motorPin3 = 10;

const int motorPin4 = 11;

const int birturadimsayisi = 540;

int bekleme =3;

//-------------------------------------------------------

//------------------Oled Ekran Global Kodları------------------

U8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_NONE);

//-------------------------------------------------------

//------------------Ses Çalma Kodu---------------------------

// Use pins 2 and 3 to communicate with DFPlayer Mini

static const uint8_t PIN_MP3_TX = 2; // Connects to module's RX

static const uint8_t PIN_MP3_RX = 3; // Connects to module's TX

SoftwareSerial softwareSerial(PIN_MP3_RX, PIN_MP3_TX);


// Create the Player object

DFRobotDFPlayerMini player;

//-------------------------------------------------------------

int hangikat=0;

int atilacakadimsayisi=120;

int geriatilacakadimsayisi=100;

bool katikisoyle=false;

bool katikitetik=false;

void setup() {

pinMode(buton1,INPUT);

pinMode(buton2,INPUT);

pinMode(buton3,INPUT);

pinMode(motorPin1, OUTPUT);

pinMode(motorPin2, OUTPUT);

pinMode(motorPin3, OUTPUT);

pinMode(motorPin4, OUTPUT);

pinMode(kat1led,OUTPUT);

pinMode(kat2led,OUTPUT);

pinMode(kat3led,OUTPUT);

Serial.begin(9600);

softwareSerial.begin(9600);

//--------------Ses Çalma Kodu----------------------

// Start communication with DFPlayer Mini

if (player.begin(softwareSerial)) {

Serial.println("OK");

// Set volume to maximum (0 to 30).


player.volume(25);

// Play the first MP3 file on the SD card

player.play(1);

} else {

Serial.println("Connecting to DFPlayer Mini failed!");

//-----------------------------------------------------

void loop() {

int buton1kontrol=digitalRead(buton1);

int buton2kontrol=digitalRead(buton2);

int buton3kontrol=digitalRead(buton3);

if(buton1kontrol==HIGH){

birincikatagit();

}else if(buton2kontrol==HIGH){

ikincikatagit();

}else if(buton3kontrol==HIGH){

ucuncukatagit();

}else{

Serial.println("Beklenmeyen problem var.");

void birincikatagit(){

int kat1mi=analogRead(kat1);

int kat2mi=analogRead(kat2);

int kat3mi=analogRead(kat3);

if(kat1mi<100){

digitalWrite(kat1led,HIGH);
digitalWrite(kat2led,LOW);

digitalWrite(kat3led,LOW);

player.play(2);

if(kat2mi<100){

digitalWrite(kat2led,HIGH);

player.play(3);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat1);

if(hangikat<100){

player.play(2);

break;

}else{

Serial.println("1. kata iniyor...");

yaz("Mert-Kaan","1. kata iniyor");

geriadimat(atilacakadimsayisi);

digitalWrite(kat1led,HIGH);

digitalWrite(kat2led,LOW);

digitalWrite(kat3led,LOW);

yaz("Mert-Kaan","1. kata indi.");

Serial.println("1. kata indi.");

if(kat3mi<100){

digitalWrite(kat3led,HIGH);

player.play(4);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat1);

kat2mi=analogRead(kat2);

if(hangikat<100){
break;

}else{

if(kat2mi<100 && katikisoyle==false){

digitalWrite(kat3led,LOW);

digitalWrite(kat2led,HIGH);

player.play(3);

katikisoyle=true;

Serial.println("1. kata iniyor...");

yaz("Mert-Kaan","1. kata iniyor");

geriadimat(atilacakadimsayisi);

player.play(2);

digitalWrite(kat1led,HIGH);

digitalWrite(kat2led,LOW);

digitalWrite(kat3led,LOW);

yaz("Mert-Kaan","1. kata indi.");

Serial.println("1. kata indi.");

katikisoyle=false;

void ikincikatagit(){

int kat1mi=analogRead(kat1);

int kat2mi=analogRead(kat2);

int kat3mi=analogRead(kat3);

if(kat1mi<100){

digitalWrite(kat1led,HIGH);

player.play(2);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat3);
if(hangikat<100){

break;

}else{

Serial.println("2. kata cikiyor...");

yaz("Mert-Kaan","2. kata cikiyor");

ileriadimat(atilacakadimsayisi);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat2);

if(hangikat<100){

break;

}else{

Serial.println("2. kata cikiyor...");

yaz("Mert-Kaan","2. kata cikiyor");

geriadimat(atilacakadimsayisi);

player.play(3);

digitalWrite(kat1led,LOW);

digitalWrite(kat2led,HIGH);

digitalWrite(kat3led,LOW);

yaz("Mert-Kaan","2. kata cikildi.");

Serial.println("2. kata cikildi.");

if(kat2mi<100){

digitalWrite(kat1led,LOW);

digitalWrite(kat2led,HIGH);

digitalWrite(kat3led,LOW);

player.play(3);

}
if(kat3mi<100){

digitalWrite(kat3led,HIGH);

player.play(4);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat2);

if(hangikat<100){

break;

}else{

Serial.println("2. kata iniyor...");

yaz("Mert-Kaan","2. kata iniyor");

geriadimat(atilacakadimsayisi);

player.play(3);

digitalWrite(kat1led,LOW);

digitalWrite(kat2led,HIGH);

digitalWrite(kat3led,LOW);

yaz("Mert-Kaan","2. kata indi.");

Serial.println("2. kata indi.");

void ucuncukatagit(){

int kat1mi=analogRead(kat1);

int kat2mi=analogRead(kat2);

int kat3mi=analogRead(kat3);

if(kat1mi<100){

digitalWrite(kat1led,HIGH);

player.play(2);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat3);

kat2mi=analogRead(kat2);
if(hangikat<100){

break;

}else{

if(kat2mi<100){

katikitetik=true;

if(kat2mi>100 && katikisoyle==false && katikitetik==true){

digitalWrite(kat1led,LOW);

digitalWrite(kat2led,HIGH);

player.play(3);

katikisoyle=true;

Serial.println("3. kata cikiyor...");

yaz("Mert-Kaan","3. kata cikiyor");

ileriadimat(atilacakadimsayisi);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat3);

if(hangikat>100){

break;

}else{

Serial.println("3. kata cikiyor...");

yaz("Mert-Kaan","3. kata cikiyor");

ileriadimat(atilacakadimsayisi);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat3);

if(hangikat<100){

break;
}else{

Serial.println("3. kata cikiyor...");

yaz("Mert-Kaan","3. kata cikiyor");

geriadimat(atilacakadimsayisi);

katikisoyle=false;

katikitetik=false;

player.play(4);

digitalWrite(kat1led,LOW);

digitalWrite(kat2led,LOW);

digitalWrite(kat3led,HIGH);

yaz("Mert-Kaan","3. kata cikildi.");

Serial.println("3. kata cikildi.");

if(kat2mi<100){

digitalWrite(kat2led,HIGH);

player.play(3);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat3);

if(hangikat<100){

break;

}else{

Serial.println("3. kata cikiyor...");

yaz("Mert-Kaan","3. kata cikiyor");

ileriadimat(atilacakadimsayisi);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat3);

if(hangikat>100){
break;

}else{

Serial.println("3. kata cikiyor...");

yaz("Mert-Kaan","3. kata cikiyor");

ileriadimat(atilacakadimsayisi);

for(int i=0;i<10000;i++){

hangikat=analogRead(kat3);

if(hangikat<100){

break;

}else{

Serial.println("3. kata cikiyor...");

yaz("Mert-Kaan","3. kata cikiyor");

geriadimat(atilacakadimsayisi);

player.play(4);

digitalWrite(kat1led,LOW);

digitalWrite(kat2led,LOW);

digitalWrite(kat3led,HIGH);

yaz("Mert-Kaan","3. kata cikildi.");

Serial.println("3. kata cikildi.");

if(kat3mi<100){

digitalWrite(kat1led,LOW);

digitalWrite(kat2led,LOW);

digitalWrite(kat3led,HIGH);

player.play(4);

}
void draw(String mesaj,String mesaj2) { // Ekran görsel yerleşimini ve
yazdırılacak metnin düzenlendiği bölüm.

u8g.setFont(u8g_font_profont12); // Yazının Fontu belirlendi.

u8g.setPrintPos(0, 28); // Yazının ekrandaki yeri belirlendi.

u8g.print(mesaj);

u8g.setFont(u8g_font_profont12);

u8g.setPrintPos(0, 56);

u8g.print(mesaj2);

void yaz(String mesaj1, String mesaj2){

u8g.firstPage();

do {

draw(mesaj1,mesaj2);

} while (u8g.nextPage());

delay(25);

void adim1() {

digitalWrite(motorPin1, HIGH);

digitalWrite(motorPin2, LOW);

digitalWrite(motorPin3, LOW);

digitalWrite(motorPin4, LOW);

delay(bekleme);

void adim2() {

digitalWrite(motorPin1, LOW);

digitalWrite(motorPin2, HIGH);

digitalWrite(motorPin3, LOW);

digitalWrite(motorPin4, LOW);

delay(bekleme);

}
void adim3() {

digitalWrite(motorPin1, LOW);

digitalWrite(motorPin2, LOW);

digitalWrite(motorPin3, HIGH);

digitalWrite(motorPin4, LOW);

delay(bekleme);

void adim4() {

digitalWrite(motorPin1, LOW);

digitalWrite(motorPin2, LOW);

digitalWrite(motorPin3, LOW);

digitalWrite(motorPin4, HIGH);

delay(bekleme);

void ileriadimat(int adim){

for (int i = 0; i < adim ; i++){

adim1();

adim2();

adim3();

adim4();

void geriadimat(int adim){

for (int i = 0; i < adim ; i++){

adim4();

adim3();

adim2();

adim1();

You might also like