Skip to content

Instantly share code, notes, and snippets.

@HectorTorres
Last active July 3, 2018 22:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save HectorTorres/ef2e1228d8cd6100761d21e965fad93d to your computer and use it in GitHub Desktop.
Save HectorTorres/ef2e1228d8cd6100761d21e965fad93d to your computer and use it in GitHub Desktop.
//Código sensor pH esclavo//
#include <Wire.h>//Libreria usada para la transmision de datos
#include <LiquidCrystal.h>//Libreria LCD
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);//pines LCD
//Asignacion pines (RS, E, DB4, DB5, DB6, DB7)
int recepcion_valorph=0;
////pines activacion leds////
const int agua= 8; //LED 1
const int cloro= 9; //LED 2
///////////////////////////////////////////////////////////////////
void setup()
{
Wire.begin(8); // se inicializa en el bus I2C como esclavo con el #8
Wire.onReceive(recepcionEvento); // registra la función de recepción
Serial.begin(9600); // inicializa el puerto serial
////salidas tipos de acidez////
pinMode(agua,OUTPUT);//salida LED 1
pinMode(cloro,OUTPUT);//salida LED 2
/*
-ph aproximado del agua=7.0
-ph aproximado del cloro=13.0
*/
/////////////////////////////////////////////////////////////////////
}
void loop()
{
}
void recepcionEvento(int cuantos)//define la función de recepción
{
int recepcion_valorph= Wire.read();
if(recepcion_valorph==6 || recepcion_valorph==7)
{
digitalWrite(agua,HIGH);
digitalWrite(cloro,LOW);
Serial.print("PH Agua:");
Serial.println(recepcion_valorph);
lcd.clear();
lcd.print("PH Agua:");
lcd.println(recepcion_valorph);
lcd.setCursor(9,0);
lcd.print(" ");
lcd.setCursor(10,0);
lcd.print(" ");
}
else if (recepcion_valorph==12 || recepcion_valorph==13)
{
digitalWrite(cloro,HIGH);
digitalWrite(agua,LOW);
Serial.print("PHcloro:");
Serial.println(recepcion_valorph);
lcd.print("PHcloro:");
lcd.println(recepcion_valorph);
}
else
{
Serial.print("PH:");
Serial.println(recepcion_valorph);
lcd.begin(16, 2);
lcd.home();
lcd.clear();
lcd.print("PH:");
lcd.println(recepcion_valorph);
lcd.setCursor(4,0);
lcd.print(" ");
lcd.setCursor(5,0);
lcd.print(" ");
digitalWrite(cloro,LOW);
digitalWrite(agua,LOW);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment