아두이노 > 답변 2: 아두이노 FND 디스플레이

TODAY946 TOTAL273,893
사이트 이용안내
Login▼/회원가입
포럼 동영상강좌 회원가입


▼ BASIC4MCU 후원업체 최신 정보 ▼

▲ BASIC4MCU 후원업체 최신 정보 ▲

BASIC4MCU | 아두이노 | 아두이노 | 답변 2: 아두이노 FND 디스플레이

페이지 정보

작성자 master 작성일2018-09-10 11:54 조회194회 댓글0건

본문

	

 

// DateTime : 2018-09-10 오전 11:58:22
// by Ok-Hyun Park
//
#include <SoftwareSerial.h>
#include "SevenSegmentExtended.h"
//
const byte PIN_CLK=A4// define CLK pin
const byte PIN_DIO=A5// define DIO pin
//
char Buffer[50];
int hour,min,second,ip,id;
int     vol,      dim,      info;
int old_vol=0,old_dim=0,old_info=0;
SevenSegmentExtended display(PIN_CLK,PIN_DIO);
const unsigned int clockSpeed=1;
//
int cnt=0;
unsigned long start;
//
void setup(){
  Serial.begin(115200);
  display.begin(); display.setBacklight(25);
  start=millis();
}
//
void loop(){
  if(Serial.available()){
    char data=Serial.read();
    if(data=='\n'){
      Buffer[cnt]=0;
      //
      // 02,58,38,IP093,ID123,V0,D0,I0->라즈베리 파이를 아두이노 시리얼로 넘어오는 프로토콜입니다.
      // IP와 ID는 임의로 줬습니다.V0,D0,I0는 각각의 버튼을 누를 때 0~3까지 변합니다.
      sscanf(Buffer,"%d,%d,%d,IP%d,ID%d,V%d,D%d,I%d",&hour,&min,&second,&ip,&id,&vol,&dim,&info); // 파싱
      //
      if(hour  <10)Serial.print("0"); Serial.print(hour); Serial.print(",");
      if(min   <10)Serial.print("0"); Serial.print(min ); Serial.print(",");
      if(second<10)Serial.print("0"); Serial.print(second);
      //
      Serial.print(",IP"); if(ip<10)Serial.print("00"); if(ip<100)Serial.print("0"); Serial.print(ip);
      Serial.print(",ID"); if(id<10)Serial.print("00"); if(id<100)Serial.print("0"); Serial.print(id);
      //
      Serial.print(",V"); Serial.print(vol);    // Print Vol value
      Serial.print(",D"); Serial.print(dim);    // Print Dim value
      Serial.print(",I"); Serial.println(info); // Print Info value
      //--------------------------------------------------------------------------------------------
      if((millis()-start)>1000){ // start 후 1초가 지난 시점부터 표시
        if(old_vol!=vol){ old_vol=volstart=millis();
        }
        //--------------------------------------------------------------------------------------------
        else if(old_dim!=dim){ old_dim=dimstart=millis();
          switch(dim%4){ // Dimmer 표시
            case 0display.setBacklight35); break;
            case 1display.setBacklight(100); break;
            case 2display.setBacklight(  0); break;
            case 3display.setBacklight25); break;
          }
        }
        //--------------------------------------------------------------------------------------------
        else if(old_info!=info){ old_info=infostart=millis();
        }
        //--------------------------------------------------------------------------------------------
        else{
          display.printTime(hour,min,true);         // FND 시간 표시
        }
      }
      //--------------------------------------------------------------------------------------------
      cnt=0;
    }
    elseBuffer[cnt++]=data; }
  }
}

 

댓글 0

조회수 194

등록된 댓글이 없습니다.

아두이노HOME > 아두이노 > 전체 목록

아두이노 목록
제목 작성자 작성일 조회
315 아두이노 master님 도와주세요! 새글첨부파일 누멍쓰 18-10-21 12
답변 답변글 답변 : master님 도와주세요! 새글 master 18-10-21 11
313 아두이노 아두이노 드론에 카메라 기능을 추가하고싶어요 새글 호이히우 18-10-20 6
312 아두이노 밑에 두더지잡기 수정 부탁 드린것에 질문 있습니다. 새글 냉냉냥성냥 18-10-20 10
답변 답변글 답변 : 밑에 두더지잡기 수정 부탁 드린것에 질문 있습니다. 댓글[1] 새글 master 18-10-20 12
310 아두이노 아두이노 두더지 잡기 인데 문제가 있어서 수정좀 부탁 드립니다. 댓글[1] 냉냉냥성냥 18-10-20 15
답변 답변글 답변 : 아두이노 두더지 잡기 인데 문제가 있어서 수정좀 부탁 드립니다. master 18-10-20 8
답변 답변글 답변 : 아두이노 두더지 잡기 인데 문제가 있어서 수정좀 부탁 드립니다. 첨부파일 냉냉냥성냥 18-10-20 8
답변 답변글 답변 : 답변 : 아두이노 두더지 잡기 인데 문제가 있어서 수정좀 부탁 드립니다. 댓글[1] master 18-10-20 12
306 아두이노 작동 중인 팬모터를 블루투스와 연결된 앱으로 RPM 조절하는 코드를 추가해야하는데요. RobustWalKeR 18-10-19 11
답변 답변글 답변 : 작동 중인 팬모터를 블루투스와 연결된 앱으로 RPM 조절하는 코드를 추가해야하는데요. master 18-10-19 9
304 아두이노 master님 rc카 적외선센서 추가 질문 해도될까요? ㅠㅠ 윤재 18-10-19 13
답변 답변글 답변 : master님 rc카 적외선센서 추가 질문 해도될까요? ㅠㅠ 댓글[2] master 18-10-19 17
답변 답변글 답변 : 답변 : master님 rc카 적외선센서 추가 질문 해도될까요? ㅠㅠ 댓글[6] 새글 master 10:40 5
301 아두이노 앱인벤터 스크린마다 블루투스 댓글[1] intoo07 18-10-19 18
게시물 검색

Privacy Policy
MCU BASIC ⓒ 2017