์๋ฒ ๋๋๊ธฐ๋ฅ์ฌ ์ค๊ธฐ ํ๊ธฐ (26๋ 2ํ์ฐจ)
์๋ฒ ๋๋๊ธฐ๋ฅ์ฌ ์ค๊ธฐ ํ๊ธฐ (26๋ 2ํ์ฐจ)
์๋ฒ ๋๋๊ธฐ๋ฅ์ฌ (๊ธฐ์ฌ ๋ง๊ณ ) ํ๊ธฐ๊ฐ ๋ง์ด ์๊ธธ๋ ์จ๋ด
์๋ ์ ์๊ณ์ฐ๊ธฐ๊ธฐ๋ฅ์ฌ ์๊ณ 2026๋
์๋ฒ ๋๋๊ธฐ๋ฅ์ฌ๋ก ์ด๋ฆ ๋ฐ๋๊ณ ๋ด์ฉ๋ ๋ฐ๋
ํ๊ธฐ๋ ์ ์๊ณ์ฐ๊ธฐ์ผ๋ ๋ด์ ์๋ฒ ๋๋ ํ๊ธฐ๊ฐ ์ด๋ป๊ฒ ๋์ค๋์ง๋ ๋ชจ๋ฅด๊ฒ ๊ณ , ์ค๊ธฐ ์์ฃผ๋ก ์จ๋ด
์ค๊ธฐ๋ ์๋์ด๋
ธ ํ๋ก๊ตฌํ + ํ๋ก๊ทธ๋๋ฐ์ (๊ธฐ๋ฅ์ฌ ๊ธฐ์ค์ด๊ณ , ๊ธฐ์ฌ๋ ์๋์ด๋
ธ ์์ฐ๊ณ ํ๋ตํ์)
์๊ฐ์ 2์๊ฐ ๋ฐ์ธ๋ฐ, ๋๋ 2์๊ฐ ์ ๋ ๊ฑธ๋ ธ๊ณ ๋น ๋ฅธ ์ฌ๋์ 30๋ถ๋ง์ ํ๊ณ ๋๊ฐ๋ ์ฌ๋๋ ์์์
30๋ถ๋ง์ ํ๋ ค๋ฉด ์ฐ์ต ์ง์ง ๋ง์ด ํด๋ณด๊ณ , ์ฝ๋๋ ์ ๋ถ ์ธ์์ ์ค๋ฉด ๊ฐ๋ฅํ ๋ฏ (๋๋ ์ฐ์ต ์ํจ)
ํ๋ท์ ๋ฌธ์ ๊ณต๊ฐ๋์๊ณ , ์ค์ ๋ฌธ์ ๋ ์์ ๋์ผํ์ง๋ ์์๋๋ฐ ๊ฑฐ์ ๋น์ทํ๊ฒ ๋์์
๋ธ๋ ๋๋ณด๋, ์ ํผ์ , ์๋์ด๋
ธ(์ฐ๋
ธ), ์ผ์ด๋ธ ๋ฑ์ ์ํ์ ์ง์ฐธ์ด๊ณ
FND, BCD ๋์ฝ๋(7447), RGB LED, ๋ฒํผ, ์ ํญ์ ์ง๊ธํด์ค (์ํ ๋๋๊ณ ํ์ํด๊ฐ)
ํ๋ท์ ๊ณต๊ฐ๋ฌธ์ 2๊ฐ ์๋๋ฐ ์ฐ์ต ๋ง์ด ํด๋ณด๋๊ฒ ์ข์๋ฏ
์ํ ์์ ์ ์ ๋ณธ์ธ ์๋์ด๋
ธ๋ฅผ ์ปดํจํฐ์ ์ฐ๊ฒฐํด์ Blink ์์ ์ ๋์๊ฐ๋์ง ํ์ธํ๊ณ
์ง๊ธ๋ RGB LED๋ฑ ๋ถ ์ ๋ค์ด์ค๋ ํ์ธํ๋ ๊ณผ์ ์ด ์์
์๋์ด๋
ธ๋ ์ฐ๋
ธ R3 ์ ํ์ด ์์น์ธ๋ฐ, ํธํํ ์จ๋ ์ค์๋์ ๋ณธ์ธ์ฑ
์ ์ธ์ ๋ถ์ด์ต(๊ฐ์ )์ ๋ฐ๋ก ์์์
๊ทผ๋ฐ ํธํํ ์ค์ ์๋ฆฌ์ผ ์ปจ๋ฒํฐ CH340 ๊ฐ์๊ฑฐ ๋ฌ๋ ธ๊ฑฐ๋, ๋ฉ์ธ์ด ESP32์ธ ์น๊ตฌ๋ค์ ์ํ์ฅ ์ปดํจํฐ์ ๋๋ผ์ด๋ฒ๊ฐ ์์ด์
์ธ์์ด ์๋ ๊ฑฐ ๊ฐ์ผ๋ ๊ฑ ์ ํ ์ฌ๋๊ฒ ์ ์ ๊ฑด๊ฐ์ ์ข์ (์ํ์ฅ ์ธํฐ๋ท ์๋์ ๋๋ผ์ด๋ฒ ์ค์น ๋ถ๊ฐ)
์ฐธ๊ณ ๋ก ์ํ์ฅ ์ปดํจํฐ์ USB-C ๋จ์๊ฐ ์์ผ๋ ์ผ์ด๋ธ์ ๋ฐ๋์ USB-A๋ก ๋๊ฑฐ ๊ฐ์ ธ์์ผ ํจ
(๋น์ฐํ์ง๋ง ๋ณธ์ธ ๋
ธํธ๋ถ๋ฑ์ ๋ชป ์)
ํ๋ท ๊ณต๊ฐ๋ฌธ์ ๋ณด๋ฉด ํ๋ก๋ ๋์์๋๊ฒ ๊ทธ๊ฑด ์ ๋ฐ๊พธ๊ณ ๊ทธ๋๋ก ๋ด๋๊ฑฐ ๊ฐ์ (์ฝ๋ฉ๋ง ๋ฐ๊พธ๋๋ฏ)
ํ๋ก๋์ ์๋์ด๋
ธ ์ฐ๊ฒฐ ๋ถ๋ถ์ด P0 ~ P11๋ก ๋์์๋๋ฐ, ํ๋ฒํธ๋ ๋ณธ์ธ์ด ์์์ ๋ฐ๊ฟ๋ ๋จ
์๋์ด๋
ธ ์ฐ๋
ธ(R3) ๊ธฐ์ค ๋์งํธ ํ์ด 0 ~ 13์ผ๋ก 14๊ฐ ์๋๋ฐ, 0/1๋ฒ์ ์๋ฆฌ์ผ์ด๋ ์ ์ธํ๋ฉด
12๊ฐ ์๊ณ , ํ๋ก๋์๋ ์ฐ๊ฒฐํ๋ ํ ๊ฐ์๊ฐ 12๊ฐ๋ผ์ ๋์งํธํ ์ ๋ถ ์ฌ์ฉํ๋ฉด ๋ฑ ๋ง์
ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ์ฌํญ์ ๊ณต๊ฐ๋ฌธ์ ์๋๊ฑฐ ๊ฑฐ์ ๋น์ทํ ํํ๋ก ๋์ด
์ด๊ธฐํ ๋์ -> ์ด๊ธฐํ ์ํ
๋์ 1, ๋์ 2, ๋์ 3
๋ด์ฉ์ ๊ณต๊ฐ๋ฌธ์ ์ฝ์ด๋ณด๋ฉด ๋๊ณ , ๊ณต๊ฐ๋ฌธ์ ๋ ๊ธ๋ก ์ค๋ช
ํ ๋ถ๋ถ์ด ์ข ๋ชจํธํด์
์ค์ ์ํ์ง์๋ ํ๋ก ์ถ๊ฐ์ค๋ช
์ด ๋์ด์์. ์๋ ํ๊ฐ ์ํ์ง์ ๋์จ๊ฑฐ ๊ทธ๋๋ก
[์ด๊ธฐํ ๋์]
| ๋์ ์์ | 1 | 2 | 3 | 4 | ์ดํ |
| FND | 88 | ์๋ฑ | 88 | ์๋ฑ | 55 |
| LED ๋ชจ๋ | G | B | G | B | R |
| ๋์ ์๊ฐ | 1์ด | 1์ด | 1์ด | 1์ด | ์ ์ง |
์ด๊ธฐํ ๋์ ๋ณด๋ฉด FND ์ซ์ ์ ๋ฑ -> ์๋ฑ ๋ฐ๋ณต์, RGB LED ์๊น ๋ณ๊ฒฝํ๋๊ฒ ๊ฐ๊ฐ ์ค๋ช
๋์๋๋ฐ
์ด๊ฒ ๋ฐ๋ก๋ฐ๋ก๊ฐ ์๋๋ผ ๋์์ ๋๋๊ฑฐ์
๊ตฌํ์ pinMode, digitalRead, digitalWrite, delay, millis ๋ด์ฅํจ์ 5๊ฐ๋ก ๋ค ์ปค๋ฒ๊ฐ๋ฅ
์ธํฐ๋ฝํธ ์ฌ์ฉํ ํ์ ์๊ณ , ์ ์ด์ ๋ชป์ (์ฐ๋
ธ R3 ์ธํฐ๋ฝํธ 2๊ฐ ์๋๋ฐ ๋ฒํผ์ด 3๊ฐ ์ฃผ์ด์ง)
๋ด๊ฐ ํ๊ต/ํ์ ๋ค๋๊ฒ ์๋๋ผ ๋ชจ๋ฒ๋ต์์ ๋ชจ๋ฅด๋๋ฐ ๋๋ delayWatch ํจ์๋ฅผ ๋ง๋ค์ด ์ผ์
1000ms ๋๊ธฐ์ด๋ฉด ์ด๊ฑธ 2ms๋ก ์ชผ๊ฐ์ delay(2)ํ๋ฉด์ FND ์ซ์ ํ์ + ๋ฒํผ ์ฝ๊ธฐ๋ฅผ ๊ฐ์ด ํ๋๋ก ํจ
๋ฒํผ์ ๋น์ฐํ ๋๋ฐ์ด์ฑ ์ฒ๋ฆฌํด์ค์ผ ํจ (์๊ตฌ์ฌํญ์๋ ์๋๋ฐ, ๋ธ๋ ๋๋ณด๋+์ ํผ์ ์ด ๋ถ์์ ํด์ ์ค์๋ํ ์ ์์)
์ ์ญ๋ณ์๋ก g_fndOn, g_fndNum, g_swVal, g_swTime ๋ฑ ๋ง๋ค์๊ณ delayWatch(time, swMask, swTime) ์ฒ๋ผ ์ผ์
์๊ตฌ์ฌํญ์ "์ค์์น๋ฅผ 1์ด ์ด์ ๋๋ฅด๊ณ ์๋ ๋์" ์ฒ๋ผ ๋์์ ์ค์์น ๋๋ฆฐ ์๊ฐ(millis)๋ฅผ ๊ธฐ๋กํด์ผ ํจ
delayWatch์์๋ while (ํ์ฌ์๊ฐ - ์์์๊ฐ < ๋๊ธฐ์๊ฐ) { } ์ฒ๋ผ ๋ฐ๋ณตํ๋ฉด์
FND ์ฒซ๋ฒ์งธ ์๋ฆฌ ํ์, delay(2), FND ๋๋ฒ์งธ ์๋ฆฌ ํ์, delay(2), ์ค์์น 3๊ฐ ์ฝ๊ธฐ ๋ฐ๋ณต
์ค์์น ์ฝ์ผ๋ฉด์ ๊ธฐ์กด๊ฐ๊ณผ ํ์ฌ๊ฐ์ด ๋ค๋ฅด๋ฉด, ๊ฐฑ์ + ๋๋ฆฐ์๊ฐ ์
ํ
๊ธฐ์กด๊ฐ๊ณผ ํ์ฌ๊ฐ์ด ์ผ์นํ๋ฉด (ํ์ฌ์๊ฐ - ๋๋ฆฐ์๊ฐ > ํน์ ์๊ฐ(1์ด)) ์ฒ๋ผ ์ฒดํฌํ๊ณ 1์ด์ด์ ๋๋ฆฐ๊ฒฝ์ฐ while ์ค๊ฐ์ ๋ฆฌํด
์๋ง ์๋์ด๋
ธ ์ข ํด๋ณธ ์ฌ๋์ด๋ผ๋ฉด ๊ธ๋ฐฉ ์ดํดํ ๊ฑฐ์, ์๋๋ฉด ๊ณต๊ฐ๋ฌธ์ ๋ณต์ฌํด์ GPTํํ
๋ฌผ์ด๋ณด์
ํ๋ก + ์ฝ๋ฉ ๊ตฌํ ์๋ฃํ๋ฉด ๊ฐ๋
๊ด์๊ฒ ๊ฐ์ธ๋ณ ๋์ํ์ธ ๋ฐ๊ณ (๋๋ต ์ธ๋น 1๋ถ์ ๋), ์์ค์ฝ๋ ์ ์ถํ๊ณ ๊ฐ๋ฉด ๋จ
์ ์๊ณ์ฐ๊ธฐ๊ธฐ๋ฅ์ฌ ์ผ๋๋ ๋ฉ๋์ด ์์๋๋ฐ ์๋ฒ ๋๋ ๋ฐ๋๊ณ ๋ฉ๋๋์ ๋ธ๋ ๋๋ณด๋๋ก ๋ฐ๊ปด์ ๋๋ ์ข์์
ํ๋ก๋ ๊ฑฐ์ ์๋ฐ๋๊ฑฐ ๊ฐ๊ณ , ์ฝ๋๋ง ๋ชจ๋ฒ๋ต์ ์ ์ธ์์ค๋ฉด ๋น์ ๊ณต์๋ ํ ๋ฒ์ ๋ถ์ ์ ์์๊ฑฐ ๊ฐ์๋ฐ
์ฝ๋๋ฅผ ์ฐธ๊ณ ์ํ๊ณ ์ฒ์๋ถํฐ ์ค์ค๋ก ์ง ๋ค๊ณ ํ๋ฉด ๋์ด๋๊ฐ ๊ฝค ์ด๋ ต๊ธด ํ๋ฏ
์๊ฒฉ์ฆ ์ธ๋ชจ๋ ์ ๋ชจ๋ฅด๊ฒ ๊ณ ... ๋๋ 5๋
๋ง์ ์๋์์ ๋ฌตํ๋๋ ์๋์ด๋
ธ ๊บผ๋ด์ ์ฝ๋ฉํด๋ณด๋๊น ์ฌ๋ฏธ์์์ ใ
ใ
์ง๋ฌธ ์์ผ๋ฉด ๋๊ธ๋ก ๋ฌ๋ฉด ๋ตํด๋๋ฆผ
์์ ) 26๋ 1ํ์ฐจ, 2ํ์ฐจ ์ค๊ธฐ๋ฌธ์ ๋์ผํ๋ฏ. ๊ณต๊ฐ๋ฌธ์ 2๋ฒ ๋ณํ์ (FND ์ซ์๋ง ๋ฐ๋)
ํ๋ท ๊ณต๊ฐ๋ฌธ์ : https://www.q-net.or.kr/crf005.do?id=crf00503&gSite=Q&gId=&tabGbn=1&jmCd=6801
๐ฅ ์ค์๊ฐ ๋คํฐ์ฆ ๋ฒ ์คํธ ๋ฐ์
- ใ ใ https://n9k.run/e7HVx
๐ฌ ๋๊ธ 0๊ฐ