BASIC4MCU | 질문게시판 | [질문] LCD화면에 조건문값 표시 방법
페이지 정보
작성자 하늘소사랑 작성일2018-06-17 01:06 조회7,713회 댓글1건본문
#include <Wire.h>
#include <LiquidCrystal_I2C.h>LiquidCrystal_I2C lcd(0x27, 20, 4);
#include <Keypad.h>
const byte ROWS = 4;
const byte COLS = 3;
int state = 1;
char keys[ROWS][COLS] = {
{ '1', '2', '3'},
{ '4', '5', '6'},
{ '7', '8', '9'},
{ '*', '0', '#'} };byte rowPins[ROWS] = {5, 4, 3, 2};
byte colPins[COLS] = {8, 7, 6};
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
char k[] = " "; // 문자열의 끝인 널문자까지 5바이트
void setup() {
lcd.init();
lcd.backlight();pinMode(9,OUTPUT);
pinMode(10,OUTPUT); }
void loop() {
char key = keypad.getKey();if (key == '*') {
for (int i = 0; i < 4; i++)k[i] = ' ';
lcd.setCursor(0, 0);
lcd.print(k); }
if (key == '#') {
for (int i = 0; i < 4; i++)k[i] = '?';
lcd.setCursor(0, 0);
lcd.print(k); }
if ((key >= '0') && (key <= '9')) {
for (int i = 0; i < 3; i++)k[i] = k[i + 1]; k[3] = key;
lcd.setCursor(0, 0);
lcd.print(k); }
[아래 추가 하고 싶은 소스 입니다.]
--> 키패드 입력값이 0078 이라면
lcd.setCursor(8, 0);
lcd.print("43-21");digitalWrite(9,HIGH);
-> 키패드 입력값이 1248 이라면
lcd.setCursor(8, 0);
lcd.print("12-81");digitalWrite(10,HIGH);
댓글 1
조회수 7,713master님의 댓글
master 작성일c언어 예제 서적을 공부해서 직접 만들어보세요