BASIC4MCU | 질문게시판 | 아두이노 LCD 글자 출력질문입니다.
페이지 정보
작성자 Tell 작성일2023-06-10 17:35 조회478회 댓글0건본문
초기상태는 글자들이 움직이다가 스위치를 한번 누르면 글자들을 그 즉시 움직임을 멈추고 스위치를 한번더 누르면 다시 글자들이 움직이게 할려고합니다. 글자들의 움직임을 멈추는 부분부터 막혔는데 위와같은 동작을 수행하기 위해서는 코드를 어떻게 수정해야하나요? 아래와 같이 코드를 작성하였을때 즉시 움직임을 멈추지 않고 글자가 특정위치에 가야지만 멈췄습니다
#include <LiquidCrystal.h>
#include <avr/io.h>
LiquidCrystal lcd(22, 23, 24, 25, 26, 27); // RS - 22, E - 23, D4 - 24, D5 - 25, D6 - 26, D7 - 27
bool stopped = false; // 글자들의 움직임 멈춤 상태 변수
void setup() {
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("Mecha!");
lcd.setCursor(10, 1);
lcd.print("Induk!");
PORTC = 0x0F;
}
void loop() {
if(PINC & 0x10){
stopped = !stopped;
delay(100);
}
else{
for (int i = 0; i < 10; i++) {
lcd.clear();
lcd.setCursor(i, 0);
lcd.print("HELLO!");
lcd.setCursor(10-i, 1);
lcd.print("BYEBE!");
delay(200);
}
for (int i = 0; i < 10; i++) {
lcd.clear();
lcd.setCursor(10-i, 0);
lcd.print("HELLO!");
lcd.setCursor(i, 1);
lcd.print("BYEBE!");
delay(200);
}
}
}
댓글 0
조회수 478등록된 댓글이 없습니다.