아두이노 디지털 명령어 및 아날로그 명령어

1일차

<디지털 명령어 1>

----------------------------------------------------------------

void setup()

{

}

void loop()

{

DigitalWrite(13, HIGH)

Delay(1000)

DigitalWrite(13, LOW)

Delay(1000)

}

----------------------------------------------------------------

<디지털 명령어 2>

----------------------------------------------------------------

//delay 주기를 짧게 변경하기

void loop()

{

DigitalWrite(13, HIGH)

Delay(100)

DigitalWrite(13, LOW)

Delay(100)

}

----------------------------------------------------------------

<디지털 명령어 3>

----------------------------------------------------------------

//반복문으로 delay 주기 조절하기

i = 10

void loop()

{

i = i * 2

DigitalWrite(13, HIGH)

Delay(i)

DigitalWrite(13, LOW)

Delay(i)

}

----------------------------------------------------------------

<아날로그 명령어 1>

----------------------------------------------------------------

//조도 센선의 값 읽어오기.

void loop()

{

a0 = AnalogRead(0)

PrintLine(a0)

Delay(100)

}

----------------------------------------------------------------

<아날로그 명령어 2>

----------------------------------------------------------------

//어두워지면 LED가 자동으로 켜지도록 함.

void loop()

{

a0 = AnalogRead(0)

if (a0 < 600)

DigitalWrite(13, HIGH)

else

DigitalWrite(13, LOW)

Delay(100)

}

----------------------------------------------------------------

<디지털 버튼 1>

----------------------------------------------------------------

//디지털 버튼의 값을 출력합니다.

void loop()

{

d4 = DigitalRead(4)

PrintLine(d4)

Delay(100)

}

----------------------------------------------------------------

<디지털 버튼 2>

----------------------------------------------------------------

//디지털 버튼으로 LED를 제어합니다.

void loop()

{

d4 = DigitalRead(4)

if (d4 == HIGH)

DigitalWrite(13, HIGH)

else

DigitalWrite(13, LOW)

Delay(100)

}

----------------------------------------------------------------

<디지털 버튼 3>

----------------------------------------------------------------

//토글 기능을 구현합니다.

//문제점을 찾아봅니다.

led_on = false

void loop()

{

d4 = DigitalRead(4)

if (d4 == HIGH)

{

if (led_on == true)

led_on = false

else

led_on = true

}

if (led_on)

DigitalWrite(13, HIGH)

else

DigitalWrite(13, LOW)

Delay(200)

}

----------------------------------------------------------------

<디지털 버튼 4>

----------------------------------------------------------------

//토글 기능을 구현합니다.

//중복눌림 문제를 해결합니다.

led_on = false

pressed = false

void loop()

{

d4 = DigitalRead(4)

if (d4 == HIGH)

pressed = true

else

{

if (pressed == true)

{

if (led_on == true)

led_on = false

else

led_on = true

}

pressed = false

}

if (led_on)

DigitalWrite(13, HIGH)

else

DigitalWrite(13, LOW)

Delay(200)

}

----------------------------------------------------------------

<디지털 버튼 5>

----------------------------------------------------------------

//토글 기능을 구현합니다.

//중복눌림 문제를 해결합니다.

//버튼을 누르는 순간에 토글 상태가 변경됩니다.

led_on = false

pressed = false

void loop()

{

d4 = DigitalRead(4)

if (d4 == HIGH)

{

if	(pressed == false)

{

if (led_on == true)

led_on = false

else

led_on = true

}

pressed = true

}

else

{

pressed = false

}

if (led_on)

DigitalWrite(13, HIGH)

else

DigitalWrite(13, LOW)

Delay(200)

}

----------------------------------------------------------------

<톤 명령어 1>

----------------------------------------------------------------

//Tone 명령어로 소리를 발생시킵니다.

void loop()

{

Tone(2, 1000, 1000)

Delay(1000)

}

----------------------------------------------------------------

<톤 명령어 2>

----------------------------------------------------------------

//진동수를 변경해 가면서 소리를 발생시킵니다.

void loop()

{

Tone(2, 200, 1000)

Delay(1000)

Tone(2, 500, 1000)

Delay(1000)

Tone(2, 1000, 1000)

Delay(1000)

}

----------------------------------------------------------------

<톤 명령어 3>

----------------------------------------------------------------

//반복문으로 소리를 증가시켜 봅니다.

//가청주파수의 범위를 테스트해 봅니다.

f  = 0

void loop()

{

f = f + 100

PrintLine(f)

Tone(2, f, 1000)

Delay(100)

}

----------------------------------------------------------------

<톤 명령어 4> 싸이렌 소리

----------------------------------------------------------------

//짧은 반복문으로 싸이렌 소리를 발생시켜 봅니다.

void loop()

{

for (i = 0; i < 100; i++)

{

f = i * 100

Tone(2, f, 1000)

Delay(10)

}

}

----------------------------------------------------------------

<톤 명령어 5> 싸이렌 소리

----------------------------------------------------------------

//짧은 반복문으로 싸이렌 소리를 발생시켜 봅니다.

//진동수를 증가했다가 감소시켜 봅니다.

void loop()

{

for (i = 0; i < 100; i++)

{

f = i * 100

Tone(2, f, 1000)

Delay(10)

}

for (j = 100; j > 0; j--)

{

f = j * 100

Tone(2, f, 1000)

Delay(10)

}

}

----------------------------------------------------------------

<톤 명령어 6> 싸이렌 소리

----------------------------------------------------------------

//짧은 반복문으로 싸이렌 소리를 발생시켜 봅니다.

//진동수를 제곱으로 증가시켜 봅니다.

void loop()

{

for (i = 10; i < 100; i++)

{

f = i * i

Tone(2, f, 1000)

Delay(3)

}

}

----------------------------------------------------------------

<Print & PrintLine 명령어 1>

----------------------------------------------------------------

//1씩 증가하는 값을 누적시켜 합을 구해 봅니다.

i = 0

s = 0

void loop()

{

i = i + 1

s = s + i

Print(i)

Print(" -> ")

PrintLine(s)

delay(100)

}

----------------------------------------------------------------

<Print & PrintLine 명령어 2>

----------------------------------------------------------------

//구구단을 출력해 봅니다.

void loop()

{

for (i = 1; i <= 9; i++)

{

for (j = 1; j <= 9; j++)

{

Print(i)

Print(" x ")

Print(j)

Print(" = ")

PrintLine(i * j)

delay(100)

}

}

}

----------------------------------------------------------------