Show Posts
Pages: [1]
1  International / Portugues / Re: Meu projeto nao esta dando certo, é simples on: January 05, 2013, 09:10:31 pm
Pois é, voce tinha razão quanto a readbutton... ja corrigi ja, FUNCIONOU!
Problema resolvido, brigadao
2  Using Arduino / Programming Questions / Re: My project isnt working, its simple.. Help plz on: January 05, 2013, 08:31:20 am
So... Tobyb121 is absolutly right, i think this solve the problem, and sorry guys, i didnt specified my problem....

The code i made didnt turn the light on when it needs to, and when lcd shows the menu and i try to press the button, doesnt happen anything ... (I think Tobyb121 solved this problems)...

Anyways, i will make the changes Tobyb121 adviced and see what happens, soon i post here again!


EDIT::: So, i wrote the code and.. my problem is solved xD

 thank you Tobyb121 u helped me alot
3  International / Portugues / Re: Meu projeto nao esta dando certo, é simples on: January 05, 2013, 08:20:53 am
Então... o led não acende quando eu apago a luz...( e a função que acende ou nao o led esta em um loop até o botao ser pressionado) e o buzzer também nao toca... e quando mostra o menu no lcd e eu pressiono o botão, nada acontece
4  Using Arduino / Programming Questions / My project isnt working, its simple.. Help plz on: January 04, 2013, 09:53:30 pm
Good evening, my idea is, first verify if there is enough luminosity in the room (or, if the luminosity sensor returns a low number), then i just turn a led ON and a BUZZER to advice that light is missing! then, i show a menu, and depending on the time i hold the button, i turn another LED on or OFF. See the code! Help me, cause there is something wrong smiley-sad

Code:
#include<LiquidCrystal.h>
const int BUTTON=1;
const int LEDL=8;
const int LEDH=13;
const int SENSOR=0;
const int BUZZER=7;
int statelight,statebutton=0,option,cont=0,untilhere,time;
LiquidCrystal lcd(12,11,5,4,3,2);
void turnBuzzer()
{
  digitalWrite(BUZZER,HIGH);
  delay(800);
  digitalWrite(BUZZER,LOW);
}
void showMenu()
{
  lcd.setCursor(0,0);
  lcd.print("1s para acender");
  lcd.setCursor(0,1);
  lcd.print("5s para apagar");
}
void modifyLights()
{
  statelight=analogRead(SENSOR);
  if(statelight<=250)
  {
    turnBuzzer();
    digitalWrite(LEDH,HIGH);
    lcd.setCursor(0,0);
    lcd.print("Luz de emergencia ativado");
    lcd.setCursor(0,1);
    lcd.print("Problema de luz resolvido");
    delay(2000);
    showMenu();
  }
  else{
    digitalWrite(LEDH,LOW);}
}
int readButton()
{
  while(statebutton!=HIGH)
  {
  modifyLights();
  statebutton=digitalRead(BUTTON);
  if(statebutton==HIGH)
  {
    untilhere=millis();
    while(statebutton==HIGH)
    {
       statebutton=digitalRead(BUTTON);
    }
    time=millis()-untilhere;
  }
  }
  if(time>=800 && time <=1200)
  {
    return 1;}
  else if(time>=4000 && time<=6000){
    return 2;}
  else if(time>8000){
    return 3;}
}
void setup ()
{
  lcd.begin(16,2);
  lcd.setCursor(0,0);
  lcd.print("INICIO PROJETO VENTO DE CORES ");
  delay(5000);
  pinMode(BUTTON,INPUT);
  pinMode(LEDL,OUTPUT);
  pinMode(LEDH,OUTPUT);
  pinMode(BUZZER,OUTPUT);
}  
void loop()
{
  showMenu();
  option=readButton();
  if(option==1)
  {
     turnBuzzer();
     lcd.setCursor(0,0);
     lcd.print("Led aceso");
     digitalWrite(LEDL,HIGH);
  }
  else if(option==2)
  {
     turnBuzzer();
     lcd.setCursor(0,0);
     lcd.print("Led apagado");
     digitalWrite(LEDL,LOW);
  }
  else if(option==3)
  {
     turnBuzzer();
     lcd.setCursor(0,0);
     lcd.print("xxx");  // ignore the option 3 plz, it is just a joke i made haha
  }
}
5  International / Portugues / Meu projeto nao esta dando certo, é simples on: January 04, 2013, 09:48:11 pm
Boa noite, vou mandar o codigo do meu projeto, nao esta funcionando, a ideia é, primeiro verificar se presica de mais luz e avisar caso precise (no led), além de um buzzer tocar, após isso, exibir um menu no lcd, e calculando o tempo que eu fiquei apertando o botao, eu devo ou nao acender um outro led nao usado ainda

Quote
#include<LiquidCrystal.h>
const int BUTTON=1;
const int LEDL=8;
const int LEDH=13;
const int SENSOR=0;
const int BUZZER=7;
int statelight,statebutton=0,option,cont=0,untilhere,time;
LiquidCrystal lcd(12,11,5,4,3,2);
void turnBuzzer()
{
  digitalWrite(BUZZER,HIGH);
  delay(800);
  digitalWrite(BUZZER,LOW);
}
void showMenu()
{
  lcd.setCursor(0,0);
  lcd.print("1s para acender");
  lcd.setCursor(0,1);
  lcd.print("5s para apagar");
}
void modifyLights()
{
  statelight=analogRead(SENSOR);
  if(statelight<=250)
  {
    turnBuzzer();
    digitalWrite(LEDH,HIGH);
    lcd.setCursor(0,0);
    lcd.print("Luz de emergencia ativado");
    lcd.setCursor(0,1);
    lcd.print("Problema de luz resolvido");
    delay(2000);
    showMenu();
  }
  else{
    digitalWrite(LEDH,LOW);}
}
int readButton()
{
  while(statebutton!=HIGH)
  {
  modifyLights();
  statebutton=digitalRead(BUTTON);
  if(statebutton==HIGH)
  {
    untilhere=millis();
    while(statebutton==HIGH)
    {
       statebutton=digitalRead(BUTTON);
    }
    time=millis()-untilhere;
  }
  }
  if(time>=800 && time <=1200)
  {
    return 1;}
  else if(time>=4000 && time<=6000){
    return 2;}
  else if(time>8000){
    return 3;}
}
void setup ()
{
  lcd.begin(16,2);
  lcd.setCursor(0,0);
  lcd.print("INICIO PROJETO VENTO DE CORES ");
  delay(5000);
  pinMode(BUTTON,INPUT);
  pinMode(LEDL,OUTPUT);
  pinMode(LEDH,OUTPUT);
  pinMode(BUZZER,OUTPUT);

void loop()
{
  showMenu();
  option=readButton();
  if(option==1)
  {
     turnBuzzer();
     lcd.setCursor(0,0);
     lcd.print("Led aceso");
     digitalWrite(LEDL,HIGH);
  }
  else if(option==2)
  {
     turnBuzzer();
     lcd.setCursor(0,0);
     lcd.print("Led apagado");
     digitalWrite(LEDL,LOW);
  }
  else if(option==3)
  {
     turnBuzzer();
     lcd.setCursor(0,0);
     lcd.print("xxx"); // aqui é só uma brincadeira que eu fiz, ignorem a opção 3
  }
}
Pages: [1]