코코아팹은 누구나 창의적 아이디어를 현실로 만들어 낼 수 있도록
만들고, 공유하고, 배울 수 있는 터전이
되고자 합니다.
아이디와 비밀번호를 잊으셨나요?아이디 / 비밀번호 찾기
코코아팹 회원이 아니신가요? 회원가입
TCS230 컬러센서 모니터플로우 오류좀 봐주세요~~ㅠㅠ
이재환 | 2016-03-17
|
|
---|---|
프로그램은 예제로 돌렸습니다 우노를 사용하였구요 int s0=6,s1=5,s2=4,s3=3; int out=2; int flag=0; byte counter=0; byte countR=0,countG=0,countB=0;
void setup() { Serial.begin(115200); pinMode(s0,OUTPUT); pinMode(s1,OUTPUT); pinMode(s2,OUTPUT); pinMode(s3,OUTPUT);
} void TCS() { flag=0; digitalWrite(s1,HIGH); digitalWrite(s0,HIGH); digitalWrite(s2,LOW); digitalWrite(s3,LOW); attachInterrupt(0, ISR_INTO, CHANGE); timer0_init();
} void ISR_INTO() { counter++; } void timer0_init(void) { TCCR2A=0x00; TCCR2B=0x07; //the clock frequency source 1024 points TCNT2= 100; //10 ms overflow again TIMSK2 = 0x01; //allow interrupt } int i=0; ISR(TIMER2_OVF_vect)//the timer 2, 10ms interrupt overflow again. Internal overflow interrupt executive function { TCNT2=100; flag++; if(flag==1) { countR=counter; Serial.print("red="); Serial.println(countR,DEC); digitalWrite(s2,HIGH); digitalWrite(s3,HIGH); } else if(flag==2) { countG=counter; Serial.print("green="); Serial.println(countG,DEC); digitalWrite(s2,LOW); digitalWrite(s3,HIGH); } else if(flag==3) { countB=counter; Serial.print("blue="); Serial.println(countB,DEC); Serial.println("\n"); digitalWrite(s2,LOW); digitalWrite(s3,LOW);
} else if(flag==4) { flag=0; } counter=0; } void loop() { TCS(); while(1); }
그리고 네모칸이 무한반복됩니다. ed=1
|
|
이전글 | 아두이노 gps 질문 | 2016-03-17 |
다음글 | Dot Matrix 소스 방법 질문이요!! | 2016-03-17 |