프로젝트

아두이노 LCD 키패드 쉴드와 파이썬 함께 사용하기 python , 시간 표시 , 계정 정보 표시

페이지 정보

작성자 드래곤사우르스 작성일17-02-06 21:05 조회2,237회 댓글0건

본문

안녕하세요 메카솔루션입니다.

 

이번에는 아두이노 LCD 키패드 쉴드와 파이썬을 함께 사용하는 기초 강좌를 알아보고자 합니다.

 

 

무엇을 만드나?

 

 

 

아두이노로는 컴퓨터에서 보낸 시리얼 데이터를 화면에 표시하는 단말장치를 만들게 됩니다.

 

파이썬으로는 현재 시간정보와 로그인한 계정정보 를 출력해 보도록 하겠습니다.

 

 

 

부품 알아보기

 

 

LCD 키패드 모듈 

 

키패드와 LCD가 하나의 쉴드에 내장되어있어 간단한 컨트롤 패널을 만들어 볼 수 있습니다.

 

 

 

http://mechasolution.com/shop/goods/cart_share.php?share=1&mode=addItem&goodsno[]=505&ea[]=1&goodsno[]=71796&ea[]=1&goodsno[]=9&ea[]=1

 

회로도 알아보기


쉴드 제품이기에 따로배선 및 회로도 작성할 필요는 없습니다.

 

코드 다운로드 바로가기


https://github.com/mechasolution/aurduino-LCD-python

 

소스코드 알아보기 - 아두이노

 

#include <LiquidCrystal.h>

LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

 

String str1 = "";

String str2 = "Serial monitor";

 

void setup() {

  Serial.begin(9600);

  lcd.begin(16, 2);

  lcd.setCursor(0, 0);

  lcd.print("Serial monitor");

  Serial.print("O");

}

void loop() 

{  

  if(Serial.available() > 0){

    str1 = str2;

    str2 = "";

    do{

      if(Serial.available() > 0){

        str2 +=  String((char) Serial.read());

      }

    }while(!str2.endsWith("\r\n"));

    str2 = str2.substring(0,str2.length()-2);

    if(str2.length() > 16){

      str2 = str2.substring(0,16);

    }

    lcd.clear();

    lcd.setCursor(0, 0);

    lcd.print(str1);

    lcd.setCursor(0, 1);

    lcd.print(str2);

  }

}

 

 

 

소스코드 알아보기 - 파이썬

 

import serial

import time

import datetime

import os

 

ser = serial.Serial()

ser.port = 'COM3' #사용하는 포트번호를 입력합니다.

ser.baudrate = 9600

ser.open()

 

count = 0

 

while (True) : #아두이노보드의 첫 출력 이후 데이터 전송을 시작합니다.

    if(ser.inWaiting() > 0):

        break;

 

while (True) :

    #전송하는 줄의 끝마다 \r\n 이 붙어야 합니다.

    now = datetime.datetime.now()

    ser.write(str.encode("{:%Y%b%d %H:%M}\r\n".format(now)))

    ser.write(str.encode(os.environ.get('USERNAME') + "\r\n"))

    time.sleep(1);#1초 간격으로 화면을 갱신합니다.

 

 

동작 영상 확인하기

 

 

 


읽어주셔서 감사합니다.

pick_manager-10 

출처 : mechasolution.com





  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글목록

등록된 댓글이 없습니다.


모바일 버전으로 보기