질문게시판 > 질문드립니다

인기검색어 > 아두이노 센서 ATMEGA128

최신글 질문게시판 동영상강좌 가입하기

▼ BASIC4MCU 후원업체 신제품 정보 ▼

▲ BASIC4MCU 후원업체 신제품 정보 ▲

BASIC4MCU > 질문게시판

질문드립니다

페이지 정보

작성자 아두이놐 작성일18-12-03 12:50 조회4,441회 댓글1건

본문

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
//
int  s0=3,s1=4,s2=5,s3=6;
int  out=2;
int  led_r=9,led_g=10,led_b=11;
int  flag=0;
int  s8=8;
byte counter=0;
byte countR=0,countG=0,countB=0;
char okflag=0;
//
void TCS(){
  flag=0;
  digitalWrite(s1,HIGH); digitalWrite(s0,HIGH);
  digitalWrite(s2,LOW);  digitalWrite(s3,LOW);
  digitalWrite(s8,HIGH);
  attachInterrupt(0,ISR_INTO,CHANGE);
  timer0_init();
}
//
void ISR_INTO(){ counter++; }
//
void timer0_init(void){
  TCCR2A=0x00;
  TCCR2B=0x07;
  TCNT2=100;
  TIMSK2=0x01;
}
//
ISR(TIMER2_OVF_vect){ // 10ms
  TCNT2=100;
  flag++;
  if(flag==1){
    countR=counter;
    if(countR>120){ digitalWrite(led_r,HIGH); }
    else          { digitalWrite(led_r,LOW); }
    digitalWrite(s2,HIGH); digitalWrite(s3,HIGH);
  }
  else if(flag==2){
    countG=counter;
    if(countG>110){ digitalWrite(led_g,HIGH); }
    else          { digitalWrite(led_g,LOW); }
    digitalWrite(s2,LOW); digitalWrite(s3,HIGH);
  }
  else if(flag==3){
    countB=counter;
    if(countB>115){ digitalWrite(led_b,HIGH); }
    else          { digitalWrite(led_b,LOW); }
    digitalWrite(s2,LOW); digitalWrite(s3,LOW);
    flag=0; okflag=1;
  }
  counter=0;
}
//
void setup(){
  pinMode(s0,OUTPUT); pinMode(s1,OUTPUT);
  pinMode(s2,OUTPUT); pinMode(s3,OUTPUT);
  pinMode(led_r,OUTPUT); pinMode(led_g,OUTPUT); pinMode(led_b,OUTPUT);
  lcd.init();
  lcd.backlight();
  TCS();
}
//
void loop(){
  if(okflag){ okflag=0;
    lcd.setCursor(0,0);
    if(countR>120){ lcd.print("R"); }
    else          { lcd.print(" "); }
    //
    lcd.setCursor(1,0);
    if(countG>110){ lcd.print("G"); }
    else          { lcd.print(" "); }
    //
    lcd.setCursor(2,0);
    if(countB>115){ lcd.print("B"); }
    else          { lcd.print(" "); }
  }
}


이렇게 했는데 업로딩은 되고 초록색과 파란색의 색깔은 인지해서 LCD에 제대로 출력이 되는데 빨간색은 LCD에 R만 출력이 되어야하는데 RGB 모두 출력이 됩니다 ㅜㅜ
  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

댓글 : 1

조회수 : 4,441

master님의 댓글

master 작성일

R일 때는 G와 B까지 검출되나봅니다.

게시물 검색

BASIC4MCU > 질문게시판 목록

제목 날짜
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은… 스태프  19-01-15
공지 사이트 이용 안내 댓글[25] master  17-10-29
질문 PIC 블루투스 연결 댓글[17] 픽공부 새글 10:28
질문 PIC18F452 블루투스 연결 댓글[4] 마이컴 새글 22-08-08
질문 아두이노 코드 해석을 못하겠습니다... 댓글[2] 김가헌 새글 22-08-08
질문 아두이노 코드를 avr로 변환해 주세요 ...ㅠ 댓글[3] 옹냥냥 새글 22-08-08
질문 아두이노 녹음-스피커모듈 관련 질문있습니다 ㅠㅠ 댓글[2] 방귀뿡뿡 새글 22-08-08
질문 Serial EEPROM 실수값 저장.. 댓글[2] 첨부파일광이 새글 22-08-07
질문 STM32 Live Expression 값들이 깜빡이는… 댓글[3] 둠둠  22-08-05
질문 아두이노 ESP32 wifi module 댓글[1] Yoon  22-08-03
질문 atmega128과 dht11, lcd를 연결했는데 0… 댓글[1] 고양이33  22-08-02
질문 ATMEGA 128 코드를 합치려고 하는데 어렵네요 댓글[2] 고양이33  22-08-02
질문 서보모터 제어에 대해 질문있습니다. 댓글[2] 첨부파일뉴비에오  22-07-30
질문 적외선 통신 알려주실분있나요 ㅠㅠ 댓글[1] hkjsj10  22-07-30
질문 아두이노 관련 궁금합니다. 댓글[1] 뱝뱝  22-07-28
질문 아두이노 우노 MCP4725 댓글[3] opqr  22-07-27
질문 레오나르도 인체감지센서 알림 안옴 면지지  22-07-24
답변 답변 : 레오나르도 인체감지센서 알림 안옴 master  22-07-25
질문 Uno에서 엔코더값 놓치는 이유가 뭘까요... 댓글[3] MAKTUB  22-07-24
질문 아두이노 압력센서 연동 질문 댓글[4] dbice  22-07-23
질문 아두이노 버튼 누르기 문의 댓글[1] 김형근  22-07-23
질문 HM10 다중페어링 댓글[1] ㅎㅋㅎㅋㅎ  22-07-22
질문 모터드라이브 선정 댓글[6] 조숩인  22-07-22
질문 ad9850 sin파 2 댓글[6] 첨부파일opqr  22-07-21
질문 ad9850 sin파 합성 댓글[7] 첨부파일opqr  22-07-20
질문 특정값이 n초이상,n번 이상 연속될경우를 감지하는 함수… 댓글[4] 우수  22-07-17
질문 delay를 millis함수로 바꾸는데 질문있습니다. 댓글[12] 첨부파일뉴비에오  22-07-16
질문 피에조 부저로 맬로디 만들기인대 코딩 까지 했는데 아두… 댓글[2] 첨부파일mingu123  22-07-15
질문 블루투스와 안드로이드 연동관련 질문입니다! ㅎㅇㅎㅇ  22-07-14
질문 아두이노간 블루투스 통신에 대해서 질문있습니다 첨부파일뉴비에오  22-07-13
게시물 검색


Privacy Policy
MCU BASIC ⓒ 2017
PC버전