Podría ayudarme para decirme como puedo integrar códigos?
Me pueden ayudar, como integrar 10 codes. les explico mas a detalle, estoy tratando de realizar una configuración para un proyecto SMART HOME, tengo realizado y probado con éxito cada uno de los códigos individualmente y funcionan perfecto, solo que no puedo mandaros a un solo Arduino para que me controle todos los sensores. estos son los códigos que realice.
//fan fuego
int flame;
void fan_motor_pwm(int speedpin, int speed)
{
if (speed <= 0)
{
analogWrite(speedpin, 0);
}
else if (speed > 255)
{
analogWrite(speedpin, 255);
}
else
{
analogWrite(speedpin,speed);
}
}
void setup(){
flame = 0;
pinMode(8, INPUT);
pinMode(6, OUTPUT);
digitalWrite(6, LOW);
}
void loop()
{
flame = digitalRead(8);
if (1 == flame)
{
fan_motor_pwm(6, 120);
}
else
{
fan_motor_pwm(6, 0);
}
}
//acceso puerta con code
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Servo.h>
int Button_Red;
int Button_Green;
int Red_num_time;
String password;
int door_flag;
boolean key_door_flag;
LiquidCrystal_I2C mylcd(0x27,16,2);
Servo servo_9;
void key_voice() {
tone(3,349);
delay(125);
delay(100);
noTone(3);
delay(100);
}
void Password_Confirmation() {
if (0 == Button_Green && 0 != Button_Red) {
delay(100);
Button_Red = digitalRead(5);
if (0 == Button_Green && 0 != Button_Red) {
if (false == key_door_flag) {
if (password == ".--.") {
mylcd.clear();
mylcd.setCursor(1-1, 1-1);
mylcd.print(" CASA DE ELIU");
mylcd.setCursor(1-1, 2-1);
mylcd.print("clabe:");
mylcd.setCursor(11-1, 2-1);
mylcd.print("pase");
servo_9.write(180);
delay(0);
door_flag = 0;
key_door_flag = true;
}else{
mylcd.clear();
mylcd.setCursor(1-1, 1-1);
mylcd.print("CASA DE ELIU");
mylcd.setCursor(1-1, 2-1);
mylcd.print("clabe:");
mylcd.setCursor(11-1, 2-1);
mylcd.print("NOP");
tone(3,165);
delay(125);
delay(500);
noTone(3);
delay(200);
mylcd.clear();
mylcd.setCursor(1-1, 1-1);
mylcd.print(" CASA DE ELIU");
mylcd.setCursor(11-1, 2-1);
mylcd.print("otra");
mylcd.setCursor(1-1, 2-1);
mylcd.print("clabe:");
key_voice();
}
} else if (true == key_door_flag) {
key_door_flag = false;
mylcd.clear();
mylcd.setCursor(1-1, 1-1);
mylcd.print(" CASA DE ELIU");
servo_9.write(90);
delay(0);
}
password = "";
}
}
}
void setup(){
pinMode(3, OUTPUT);
Button_Red = 1;
Button_Green = 1;
Red_num_time = 0;
password = "";
door_flag = 0;
key_door_flag = false;
mylcd.init();
mylcd.backlight();
servo_9.attach(9);
mylcd.setCursor(1-1, 1-1);
mylcd.print("CASA DE ELIU");
servo_9.write(90);
delay(0);
pinMode(5, INPUT);
pinMode(4, INPUT);
}
void loop(){
Button_Green = digitalRead(4);
Button_Red = digitalRead(5);
if (0 != Button_Green && 0 == Button_Red) {
delay(100);
Button_Green = digitalRead(4);
while (0 != Button_Green && 0 == Button_Red) {
Button_Red = digitalRead(5);
Red_num_time = Red_num_time + 1;
delay(100);
}
}
if (1 < Red_num_time && 5 > Red_num_time) {
key_voice();
password = String(password) + String(".");
mylcd.clear();
mylcd.setCursor(1-1, 1-1);
mylcd.print(" CASA DE ELIU");
mylcd.setCursor(1-1, 2-1);
mylcd.print("clabe:");
mylcd.setCursor(11-1, 2-1);
mylcd.print(password);
}
if (5 < Red_num_time) {
key_voice();
password = String(password) + String("-");
mylcd.clear();
mylcd.setCursor(1-1, 1-1);
mylcd.print(" CASA DE ELIU");
mylcd.setCursor(1-1, 2-1);
mylcd.print("Password:");
mylcd.setCursor(11-1, 2-1);
mylcd.print(password);
}
Password_Confirmation();
Red_num_time = 0;
}
//DETECTOR DE LLUVIA CON VENTANA
#include <Servo.h>
int water_level;
Servo servo_10;
void setup()
{
water_level = 0;
pinMode(A2, INPUT);
servo_10.attach(10);
}
void loop()
{
water_level = analogRead(A2);
if (100 < water_level)
{
servo_10.write(90);
}
else
{
servo_10.write(0);
}
}
// FOTOCELDA LUZ CON DETECCION DE RUIDO
volatile int Brightness;
volatile int Environmental_sound;
void setup(){
Brightness = 0;
Environmental_sound = 0;
Serial.begin(9600);
pinMode(A1, INPUT);
pinMode(2, INPUT);
pinMode(7, OUTPUT);
}
void loop()
{
Brightness = analogRead(A1);
Environmental_sound = digitalRead(2);
Serial.println(Brightness);
if (Brightness > 500)
{
if (Environmental_sound == 1)
{
digitalWrite(7,HIGH);
delay(4000);
digitalWrite(7,LOW);
}
}
else
{
digitalWrite(7,LOW);
}
}
//ESTACIONAMIENTO CON SENSOR INTERRUP
#include <Servo.h>
int pass;
Servo servo_11;
void setup()
{
pass = 0;
pinMode(A0, INPUT);
servo_11.attach(11);
}
void loop()
{
pass = digitalRead(A0);
if (pass == 0)
{
servo_11.write(180);
delay(0);
}
else if (pass == 1)
{
servo_11.write(90);
delay(0);
}
}
//RIEGO DE PLANTAS SENSOR
int Soil_moisture;
void Watering_warning()
{
digitalWrite(13,HIGH);
tone(3,532);
delay(125);
delay(200);
digitalWrite(13,LOW);
noTone(3);
delay(200);
}
void setup(){
Soil_moisture = 0;
pinMode(13, OUTPUT);
pinMode(3, OUTPUT);
pinMode(A3, INPUT);
}
void loop()
{
Soil_moisture = analogRead(A3);
if (50 > Soil_moisture) {
Watering_warning();
}
else
{
digitalWrite(13,LOW);
noTone(3);
}
}
//AC CON VENTILADOR Y SWITCH
#include <Servo.h>
int pass;
Servo servo_11;
void setup()
{
pass = 0;
pinMode(A4, INPUT);
servo_11.attach(6);
}
void loop()
{
pass = digitalRead(A4);
if (pass == 0)
{
servo_11.write(180);
delay(0);
}
else if (pass == 1)
{
servo_11.write(90);
delay(0);
}
}