THIS IS SPARTAAAAAA, I mean Dicamarques blog :)

  • dicamarques

    This is just to remove a error from my arduino code

    Stray "\342" in program
    Code:
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
    
    LiquidCrystal_I2C lcd(0x27, 16, 2); // Definir o endereço do LCD para 0x27 com 16 caracteres e 2 linhas
    
    int greenled = 10; //Traffic light Led's and pins
    int yellowled = 9;
    int redled = 8;
    int pedgreenled = 2;//Pedestrian crossing Led's and pins
    int pedredled = 3;
    int botaoPed = 5;
    const int buzzer = 6;
    
    
    #define estadoVermelhoCarrosVerdePeoes 0
    #define estadoBotaoPremido 1
    #define estadoAmarelo 2
    #define estadoVerdeCarrosVermelhoPeoes 3
    #define estadoTransicaoVerdePeoes 4
    
    int estado = 0;
    int buzState = LOW; //se o buzzer esta apitar ou nao
    unsigned long previousMillisBuz = 0; 
    unsigned long intervalBuzLiga = 1000;    // intervalo ate ligar o buzzer (milliseconds)
    unsigned long intervalBuzDesLiga = 1000; // intervalo ate desligar o buzzer (milliseconds)
    
    int ciclos = 0;
    bool blink1 = false;
    int lastBlink1 = 0;
    bool primeiroCiclo = true;
    int lastPress = 0; //quando foi premido o botao
    
    const int tempoEmVerde = 10000; //millis
    const int tempoEmPeoes = 15000; //millis
    const int tempoEmBotao = 1000; //millis
    const int tempoEmAmarelo = 3000; //millis
    
    void setup()
    {
        Serial.begin(9600); // Starts the serial communication
        Serial.println("Acordei!");
        pinMode(greenled, OUTPUT); //Pinmodes of the leds
        pinMode(yellowled, OUTPUT);
        pinMode(redled, OUTPUT);
        pinMode(pedredled, OUTPUT);
        pinMode(pedgreenled, OUTPUT);
        pinMode(botaoPed,INPUT);
    
        lcd.init(); // initialize the lcd 
        lcd.backlight();
        lcd.setCursor(0, 0);
        lcd.print("PRJ. MICROSIST."); 
    }
    
    bool ACTIVO = false;
    //Funcao para controlar o buzzer
    //dependendo se o buzzer estiver ligado ou nao, tem tempos de espera diferentes
    void apita()
    {
        unsigned long currentMillis = millis();
        if (ACTIVO)
        {
            if (buzState == LOW)
            {
                if (currentMillis - previousMillisBuz >= intervalBuzLiga)
                {
                    previousMillisBuz = currentMillis; 
                    buzState = HIGH; 
                    digitalWrite(buzzer, buzState);
                }
            }
            else
            {
                if (currentMillis - previousMillisBuz >= intervalBuzDesLiga)
                { 
                    previousMillisBuz = currentMillis; 
                    buzState = LOW;
                    digitalWrite(buzzer, buzState);
                }
            }
        }
    }
    
    int valorLcd = -1;
    void actualizaLCD(int ciclos,int estado){
            int tempo = ciclos/1000;
            
            int val;
            switch (estado)
            {
                case estadoVermelhoCarrosVerdePeoes:
                    val = tempoEmPeoes;
                    break;
                
                case estadoBotaoPremido:
                    val = tempoEmBotao;
                    break;
                    
                case estadoAmarelo:
                    val = tempoEmAmarelo;
                    break;
    
                case estadoVerdeCarrosVermelhoPeoes:
                    val = tempoEmVerde;
                    break;
            }
    
            if(val - tempo != valorLcd){
                valorLcd = tempo;
                lcd.clear();
                lcd.setCursor(0, 0);
                lcd.print("PRJ. MICROSIST.");
                lcd.setCursor(2, 3);
                lcd.print("Tempo para mudar: ");
                lcd.print(""+valorLcd);
                lcd.print("s");    
                Serial.print("Tempo:"); 
                Serial.println(""+valorLcd); 
            }
            
    }
    
    
    
    void loop()
    {
    
        switch (estado)
        {
            case estadoVermelhoCarrosVerdePeoes:   
                if(primeiroCiclo){
                    digitalWrite(greenled, LOW); //Green  
                    digitalWrite(yellowled, LOW);
                    digitalWrite(redled, HIGH); // red 
                    
                    digitalWrite(pedgreenled, HIGH); // ped green 
                    digitalWrite(pedredled, LOW); // ped red 
                    primeiroCiclo = false;
                    ciclos = 0;
                    lastBlink1 = 0;
                    blink1 = false;
                    Serial.print("Estado:"); 
                    Serial.println("estadoVermelhoCarrosVerdePeoes"); 
                }
    
    
                if(ciclos == tempoEmPeoes){//muda de estado
                    estado = estadoVerdeCarrosVermelhoPeoes;
                    primeiroCiclo = true;
                }else if(ciclos == tempoEmPeoes - 2000){//Fecha a passadeira
    
                    digitalWrite(pedgreenled, LOW); // ped green 
                    digitalWrite(pedredled, HIGH); // ped red 
    
                }else if(ciclos >= tempoEmPeoes - 5000){//comeca a piscar
                    if(ciclos - lastBlink1 >= 250){
                        digitalWrite(pedgreenled, blink1); // ped green 
                        blink1 = !blink1;
                        lastBlink1 = ciclos;
                    }
                }
                
            break;
    
            case estadoBotaoPremido:
                if(primeiroCiclo){
                    primeiroCiclo = false;
                    ciclos = 0;
                    lastBlink1 = 0;
                    blink1 = false;
                    Serial.print("Estado:"); 
                    Serial.println("estadoBotaoPremido"); 
                }
                if(ciclos == tempoEmBotao){//passa para amarelo
                    estado = estadoAmarelo;
                    primeiroCiclo = true;
                }
            break;
    
            case estadoAmarelo:
                if(primeiroCiclo){                
                    digitalWrite(greenled, LOW); //Green  
                    digitalWrite(yellowled, HIGH); // yellow
                    digitalWrite(redled, LOW); // red 
                    
                    digitalWrite(pedgreenled, LOW); // ped green 
                    digitalWrite(pedredled, HIGH); // ped red 
                    primeiroCiclo = false;
                    ciclos = 0;
                    lastBlink1 = 0;
                    blink1 = false;
                    Serial.print("Estado:"); 
                    Serial.println("estadoAmarelo"); 
                }
    
                if(ciclos == tempoEmAmarelo){//muda de estado
                    estado = estadoVermelhoCarrosVerdePeoes;
                    primeiroCiclo = true;
                }else if(ciclos == tempoEmAmarelo - 500){//mete vermelho
                    digitalWrite(yellowled, LOW); // yellow
                    digitalWrite(redled, HIGH); // red 
                }
    
    
            break;
    
            case estadoVerdeCarrosVermelhoPeoes:
                if(primeiroCiclo){
                    digitalWrite(greenled, HIGH); //Green  
                    digitalWrite(yellowled, LOW); // yellow
                    digitalWrite(redled, LOW); // red 
                    
                    digitalWrite(pedgreenled, LOW); // ped green 
                    digitalWrite(pedredled, HIGH); // ped red 
    
                    primeiroCiclo = false;
                    ciclos = 0;
                    lastBlink1 = 0;
                    blink1 = false;
                    Serial.print("Estado:"); 
                    Serial.println("estadoVerdeCarrosVermelhoPeoes"); 
                } 
                
                if(ciclos == tempoEmVerde){//muda de estado
                    estado = estadoAmarelo;
                    primeiroCiclo = true;
                }
    
            break;
        }
        
        // check if the pushbutton is pressed
        if (digitalRead(botaoPed) == HIGH){
            //mudar o modo de funcionamento
            if( millis() - lastPress > 3000 
                && estado != estadoBotaoPremido 
                && estado != estadoAmarelo 
                && estado != estadoVermelhoCarrosVerdePeoes){
                lastPress = millis();
                estado = estadoBotaoPremido;
            }
        }
    
        ciclos++;
        delay(1);
    }
    
    
  • dicamarques

    My homepass adventures :D

    So I decided to make a list of the people that I have met through HomePass

    * 11/08/2013:
    15:17 Veggy from Japan: Pink Mii with a flower hat.

    * 12/08/2013:
    12:21 hgage2003 from Russia: Luigi hat with luigi suit (he likes sleeping xD)
    21:09 Robin from USA: Blue mii with 2D mario hat


    * 13/08/2013:
    10:22 Link (how original) from USA: Falcon hat, Pinoy-n deli boi to you to (whatever that means :P)
    12:19 Adam from USA: Luigi suit and hat
    17:30 Adam from Canada: (WTF? you just went to Canada Adam?) Fox hat, red mii


    * 14/08/2013:
    12:15 (Japanese Name) from Japan: Kirby hat, from Fukuoka ( @tmafan ) It was my 100th streetpass :D
    12:38 (Japanese Name) from Japan: has a hat, from Yamagata, Female blue mii
    12:48 (Japanese Name) from Japan: Yoshi hat, from Osaka

    * 15/08/2013:
    17:08 JT from USA: blue mii with Kirby hat, Hi!