스위치로 청색 / 적색 맞추기 - 바로 실행해보면서 배우는 아두이노
Learn
Practice
Learn
스위치로 청색 / 적색 맞추기

이번 강의를 끝으로 청기 / 적기 게임의 첫 번째 완성형을 만들게 됩니다. 전 강의에서는 사용하지 않았던 두 개의 버튼 스위치를 위한 세팅을 하고, 정답을 맞히는 코드를 작성합니다. loop 속의 코드는 한 번의 게임입니다. 실제로는 무한 반복하기 때문에 계속해서 게임을 하게 되겠죠.

주어진 코드의 동작 과정은 다음과 같습니다.

  • 먼저 두 개의 변수를 추가합니다. 이는 스위치의 핀 번호를 담을 변수입니다.
  • 적기 때 누를 버튼을 7번, 청기 때 누를 버튼을 6번으로 할당합니다.
  • setup 에 두 버튼을 INPUT_PULLUP 으로 설정합니다.
  • 먼저 rand, clicked, right 변수 세 가지를 정하고 초기화시킵니다. loop 함수 안의 코드는 한 게임이 기준이기 때문입니다.
  • rand 변수에는 홀수(1), 짝수(0)가 담기게 되며 이번 게임이 청기, 적기인지 상태를 저장하기 위함입니다. 이 변수는 청기 / 적기를 켤 때와 정답을 맞힐 때 사용됩니다.
  • clicked 는 버튼이 눌렸는지 눌리지 않았는지는 확인하는 변수로 0은 눌리지 않음. 1을 눌림으로 정했습니다.
  • right 는 정답을 맞혔는지를 확인하는 것으로 마지막까지 right 변수의 값이 0이라면 오답. 1이라면 정답이 됩니다.
  • 버튼이 클릭 되기 전까지 while 문이 무한 반복됩니다. 
  • 청기 버튼, 적기 버튼을 누르면 clicked 변수의 값이 1로 바뀌며 while 문을 빠져나오게 되며, 난수의 값과 비교하여 정답을 맞췄는지, 틀렸는지를 판별합니다. 맞췄을 경우 right 변수의 값은 1로 변하게 됩니다.
  • 이제 사용자가 정답을 맞혔는지 알 수 있으므로. 정답 여부에 따라 녹색 LED를 통해 정답 또는 오답을 표현한 후, 한 게임이 종료되게 됩니다.
  • loop 함수는 무한 반복되기 때문에 다시 새로운 게임이 시작되게 됩니다.
Practice

기본적인 청기 / 적기 게임을 구현했습니다.

지금까지 배운 아두이노와 C 언어에서 배운 내용을 응용하여 다양하게 게임을 발전시켜 보세요.

정답 표현 방식을 개선 할 수도 있고 새로운 LED를 추가하여 정답 여부를 다르게 표시할 수도 있을 거에요.

Learn
Practice
Q & A
Ask questions or difficult parts of the lesson.
Registered Questions(0)