Clolent

==========================================================

LED 깜빡깜빡


void setup( ) {

// 13번 디지털 핀을 출력으로 초기화

pinMode( 13, OUTPUT );

}


void loop( ) {

digitalWrite( 13, HIGH ); // LED를 켠다, 13번 핀에서 5V 가 출력

delay(1000) ;     //1초간 대기

digitalWirte( 13, LOW ); // LED 끔, 13번 ㅣㄴ에서 0V가 출력

delay( 1000 ) ;

}

 



==========================================================

버튼으로 LED 켜기


void setup( ) {

pinMode( 13, OUTPUT );     // LED

pintMode( 7 , INPUT );        // BUTTON

Serial.begin ( 9600 ) ;

}


void loop( ) {

int val = digitalRead( 7 ) ;

Serial.println( val ) ;

if ( val == HIGH ){

digitalWrite( 13, HIGH ) ;    // LED ON

}

else {

digitalWrite( 13, LOW ) ; // LED OFF 

}

}


==========================================================

LED 밝기 밝아졌다 어두워졌다


void loop( ) { 

for ( int i = 0 ; i < 100; i++ ) {  // 점점 밝아졌다

analogWrite( 5 , i ) ;

delay(20);

}

for( int i = 100 ; i > 0 ; i-- ){  // 점점 어두워짐

analogWrite( 5, i );

delay(20);

}

}

==========================================================

조도 센서를 이용한 밝기 모니터링

int potpin = 0 ; // 조도센서에서 나오는 노란색 점퍼선은 A0 로 연결

int val = 0 ;  // 조도센서로부터 나오는 아날로그 값 저장 변수


void setup( ) {

Serial.begin( 9600 ) ;

}


void loop( ) { 

val = analogRead( potpin ); // 아날로그 값을 읽어서 val 에 저장

Serial.println(val) ; // 저장된값을 시리얼로 출력

delay( 10 ) ; // 0.01 초 대기

}


==========================================================

조도 센서

※ 빛이 세면 셀수록 저항이 약해지고 빛이 없으면 저항 세짐

    빛이 셈 -> 읽어오는 값이 높음    빛이 약함 -> 읽어오는값 낮음


int cds = A1;

ind led = A0;


void setup(){    // 조도센서의 동작상태를 확인하기 위하여 시리얼 통신을 설정

Serial.begin(9600);     // 전송속도 9600bps 

pinMode( led, OUPUT );

}


// 블록안의 코드를 무한 반복

void loop ( ) {

int cdsValue = analogRead ( cds ) ; 

// 조도센서로부터 측정된 밝기 값을 입력 전압의 크기 ( 0~ 5V ) 에 따라 0~1023 범위의 값으로

// 변환되어 반환


Serial.print(" cds = " ) ;

Serial.println ( cdsValue ) ; // 시리얼 모니터에 출력


// 조도센서로 부터 측정된 밝기 값이 500 보다 크다면, 아래의 블록을 실행,

if ( cdsValue > 500 ) { 

// LED 가 연결된 핀의 로직레벨을 HIGH로 설정하여 LED ON

digitalWrite( led, HIGH );

// LED 상태 시리얼 모니터에 출력 ,

Serial.println("LED ON (cds > 50 )");

}

else{

digitalWrite( led, LOW );

Serial.println( "LED OFF ( cds < 500 ) " ) ;

}

delay(200); // 대기

}


==========================================================

모터 양방향 제어 ( 5초마다 방향 바꿈 )


int enablePin = 11;

int in1Pin = 10 ;

int in2Pin = 9 ;

boolean dir = false;

int speed  = 255 ;


void setup( ) {

pinMode( in1Pin, OUTPUT );

pinMode( in2Pin, OUTPUT ) ;

pinMode( enablePin, OUTPUT );

}


void loop( ) {

dir = ! dir ;

setMotor ( speed, dir ) ;

delay ( 5000 ) ;

}


void setMotor ( int speed, bollean direct ) {

analogWrite( enablePin, speed );

digitalWrite( in1Pin, ! directt );

digitalWrite( in2Pin, direct ) ;

}


==========================================================

초음파


int trigPin = 9 ;

int echoPin = 8 ;  // 출력핀과 입력핀 연결 설정, 다른핀을 연결해도됨


// 시리얼 속도설정, trigPin 을 출력, echoPin 을 입력으로 설정

void setup( ){

Serial.begin( 9600 );

pinMode( trigPin, OUTPUT );

pinMode( echoPin, INPUT );

}


// 초음파를 보낸다. 다 보내면 echo 가 HIGH (신호받기) 상태로 대기

void loop ( ) {

float duration, distance;

digitalWrite( trigPin, HIGH );

delay (10 ) ;

digitalWrite( trigPin, LOW );


duration = pulseIn ( echoPin, HIGH ); // echoPin 이 HIGH를 유지한 시간을 저장


// HIGH 였을때 시간( 초음파가 보냈다가 다시들어온 시간) 을 가지고 거리를 계싼

// 소리의 속도 340 

// 1000 밀리세컨드 = 1초 


distance = ( (float) ( 340 * duration ) / 1000 ) / 2 ;


}

댓글 로드 중…

블로그 정보

Clolent - 커피물조절달인

최근에 게시된 글