[BUZZ] LCD Keypad Shield for Arduino Duemilanove & Freeduino

#eletrônica

LCD Keypad Shield for Arduino Duemilanove & Freeduino (60g)
https://www.goodluckbuy.com/lcd-keypad-shield-for-arduino-duemilanove-and-freeduino.html
$17.42

Comprei 19/03
Recebi 27/04

Se você quer realmente ter uma boa experiência inicial com o Arduino, não deve deixar de comprar este shield. É barato para o que oferece e permite brincar com a programação sem fazer uma única soldagem.

Porém o programa exemplo dado na página da GLB não funciona. Eu coloquei o shield para funcionar depois de uma meia hora procurando alternativas, mas agora não me lembro do que eu fiz. Depois eu coloco o meu programa corrigido aqui.

     

VN:R_U [1.9.13_1145]
Rating: 0.0/5 (0 votes cast)
5 comentários
  • Jefferson - 6.106 Comentários

    O programa é este (algumas adaptações minhas):

    //
    #include <LCD4Bit_mod.h>
    //create object to control an LCD.
    //number of lines in display=1
    LCD4Bit_mod lcd = LCD4Bit_mod(2);
    //Key message
    char msgs[5][16] = {"Tecla Right OK ",
    "Tecla Up OK ",
    "Tecla Down OK ",
    "Tecla Left OK ",
    "Tecla Select OK" };
    int adc_key_val[5] ={30, 150, 360, 535, 760 };
    int NUM_KEYS = 5;
    int adc_key_in;
    int key=-1;
    int oldkey=-1;
    void setup() {
    pinMode(13, OUTPUT); //we'll use the debug LED to output a heartbeat

    lcd.init();
    //optionally, now set up our application-specific display settings, overriding whatever the lcd did in lcd.init()
    //lcd.commandWrite(0x0F);//cursor on, display on, blink on. (nasty!)
    lcd.clear();
    lcd.printIn("Testando teclado…");
    }
    void loop()
    {
    adc_key_in = analogRead(0); // read the value from the sensor
    digitalWrite(13, HIGH);
    key = get_key(adc_key_in); // convert into key press
    if (key != oldkey) // if keypress is detected
    {
    delay(50); // wait for debounce time
    adc_key_in = analogRead(0); // read the value from the sensor
    key = get_key(adc_key_in); // convert into key press
    if (key != oldkey)
    {
    oldkey = key;
    if (key >=0){
    lcd.cursorTo(2, 0); //line=2, x=0
    lcd.printIn(msgs[key]);
    }
    }
    }
    digitalWrite(13, LOW);
    }
    // Convert ADC value to key number
    int get_key(unsigned int input)
    { int k;
    for (k = 0; k < NUM_KEYS; k++)
    {
    if (input < adc_key_val[k])
    { return k; }
    }
    if (k >= NUM_KEYS)
    k = -1; // No valid key pressed
    return k;
    }

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Jefferson - 6.106 Comentários

    Existe mais um detalhe. A library LCD4Bit_mod não vem no pacote Arduino. Eu tive que baixá-la aqui:
    http://www.dfrobot.com/image/data/DFR0009/LCD4Bit_mod.zip

    Descompacte no diretório libraries, de modo que fique assim:

    librariesLCD4Bit_mod*.*

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Jefferson - 6.106 Comentários

    Este shield não funciona em conjunto com o shield ethernet. Mais informações, incluindo um modo de contornar o problema (não testado), aqui:
    http://arduino.cc/forum/index.php?PHPSESSID=8bacc3bb4bcf20e07b4809c88d785381&topic=51272.0

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Jefferson, seu shield do LCD veio com o "right" escrito errado igual na foto? (reparei isso agora quando estava pesquisando no eBay, lá também está errado, o da GLB parece ser o mesmo shield, mas apagaram a marca DFROBOT, olha a imagem do eBay: http://i.ebayimg.com/00/$%28KGrHqMOKjsE24SU2mcJBN123yIbWw~~_3.JPG )

    VA:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)
  • Jefferson - 6.106 Comentários

    Eu comprei dois, em datas diferentes. E os dois tem o mesmo "rigth".

    VN:R_U [1.9.13_1145]
    Rating: 0.0/5 (0 votes cast)

Deixe um comentário para Julião F Cancelar resposta

Siga as Regras de Participação, ou seu comentário será ignorado.

Não faça comentários sem relação com os posts. Comente neste post para assuntos genéricos

Você pode usar estas tags HTML

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

  

  

  

:) :( ;) O_o B) :lol: :huh: :S :D :-P 8-O :yahoo: :rtfm: :dashhead1: :clapping: more »