Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Arduino UNO + LCD + 二軸アナログジョイスティックでワンコインMP3プレイヤーめいた画面送りをやる

昔は秋葉原で良くみかけた、ワンコインMP3プレイヤーめいたUIを実現する奴です。


shuzo-kino.hateblo.jp

shuzo-kino.hateblo.jp
の続き。

実際のところ

#include <LiquidCrystal.h>

#define axis_x A0
#define axis_y A1
#define wordsize 16
#define minregister 0
#define maxregister 1023

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

String lcdMsg = "";

void setup() {
  lcd.begin(wordsize,  1);

  lcdMsg += "Hello,World     ";
  lcdMsg += "This is Next Msg";
  lcdMsg += "Final Msg Coming";
  lcd.print(lcdMsg);
  delay(1000);
  pinMode(axis_x, INPUT);
  pinMode(axis_x, INPUT);
}
 
void loop() {
  
  if (analogRead(axis_x) == maxregister) {
    leftShift();
  } else if (analogRead(axis_x) == minregister) {
    rightShift();
  }
}

void leftShift() {
    for (int positionCounter = 0; positionCounter < wordsize; positionCounter++) {
    lcd.scrollDisplayLeft();
    delay(150);
    }
}

void rightShift() {
    for (int positionCounter = 0; positionCounter < wordsize; positionCounter++) {
    lcd.scrollDisplayRight();
    delay(150);
  }  
}