아두이노로 6채널+논스톱 스톱워치 만들기

2026. 5. 13. 22:36카테고리 없음

4월 말에 중간고사 끝났는데 그때 풀어진게 5월 초중반까지 이어지고 있다.

이렇게 공부시간이 확 줄은 문제를 해결하기 위해 어떻게 해야할까 고민을 해보았다.

이미 이전부터 열품타라는 공부시간 측정앱을 써왔는데, 딱히 잘 맞는 것 같진 않았다.

 

그러다 머릿속에 스쳐간 논-스톱-스톱-워치. 

 

우선 열품타는 휴대폰 앱이기 때문에 스톱워치를 볼 때마다 자꾸 폰의 유혹이 끊이질 않는 문제가 있었다.

그래서 다채널 스톱워치를 만들어 열품타 느낌을 내보는게 어떨까 하는 생각을 하였다.

그런데 만약 여기서 정지기능을 없애면 어떨까.

 

정지기능을 없애면 공부를 안하는 상태 = 휴식시간으로, 휴식시간의 시간이 측정되게 하는 것이다.

노는 시간을 같이 측정하면, 하루 24시간을 어떻게 분배해서 쓰고있는지 정확하게 드러나기 때문이다.


 

우선 구글링을 간단히 해보았다.

아두이노로 스톱워치를 만든 것은 많았지만, 예상대로 다채널 스톱워치와 논스톱 스톱워치는 찾아보기가 어려웠다.

심지어 완제품으로도 최대 3채널밖에 없고, 논 스톱워치는 개념 자체가 없었다.

 

그래서 바로 머릿속으로 구성을 때리고, 바로 재료들을 구매했다.

시간을 나타내는 패널은 2.42inch OLED에 128x64픽셀 스펙을 가진 SSD1309 디스플레이로 정했다.

찾아보니 이 바닥에선 SSD시리즈가 유명한 것 같았다.(아님 규격명일수도)

버튼은 4개가 같이 딸려있는 푸시버튼모듈으로 정했다.

6채널인데 왜 4개짜리를 샀냐하면, 처음엔 4채널로 구성을 했었기 때문이다.

이 외에 필요한 부품은 아두이노와 점퍼선 정도인데, 아두이노는 버스 하차벨 구현(글 업로드 예정)때 썼던 우노를 재활용했고, 점퍼선은 집에 워낙 많아서 그것을 이용했다.


배송이 온 버튼과 OLED모듈. 아쉽게도 새 제품 상태로는 사진을 못 찍었고, 만들던 중 찍은 사진밖에 없다.

우선 OLED패널과 아두이노 우노를 연결시켜준다. 

 

7핀 SPI 버전의 OLED를 구매했고, 핀 배열은 아래와 같다.

 

VSS - GND

VDD - 5V

SCLK - D13

SDA - D11

RES - D8

DC - D9

CS - D10

 

버튼을 장착한 모습입니다.

 

버튼의 핀배열은

KCOM - GND

P/V- - D2

N/V+ - D3

PLAY - D4

MODE - D5

 

당장 집에 납땜기가 없어서, 점퍼선을 글루건으로 붙이는 테토남식 납땜을 했다 ㅋㅋ

근데 납땜기 있으신분은 납땜하시는 것을 적극! 권장드린다.

코드 짜는 중 찍은 사진. 구글의 잼민이가 코드를 짜준 덕에 코딩은 금방 끝났다.

LED화면은 잘 나온다.

위에서 바라본 모습. 제작은 거의 마무리가 되었다.

그런데 시간을 표시할 공간이 안나오는 탓에, 행/열 배열을 다시 해줘야했다.

행열 배열을 다시하고, 아두이노와 OLED를 글루건으로 붙여서 합쳤다. 

 

동작방식은

1번(제일 왼쪽버튼)을 누르면 기존 스톱워치가 정지함과 동시에 ch1 시간이 측정된다.

2번은 ch2

그렇게 ch4까지 조작할 수 있고, 

ch5부터는 길게누르기를 적용해서

1번을 길게누르면 ch5

2번을 길게누르면 ch6

4번을 길게누르면 전체 시간 초기화

이렇게 기능한다.

원래 1+2번 동시입력은 ch5 이렇게 짜려고 했는데,

동시입력을 잘 인식하지 못해서 길게누르기로 바꾸었다.

 

이제 이 타이머는 24/7 멈추지 않고 시간을 재며,

매일 자기전 시간 기록 후 초기화될 것이다.

그런데 OLED패널의 문제인지, 글루건 납땜의 문제인지, 고주파음이 많이 거슬렸다.

그래서 비널과 아크릴판으로 차폐를 해버렸다. 

저렇게 해놨음에도 여전히 고주파음이 들리고, 열 배출이 잘 안된다는 문제가 있지만,

열이 많이 오르지 않고, 차폐를 하지 않을때보단 훨씬 조용하기 때문에 당분간은 저렇게 쓸 예정이다. 

물론 버튼들은 전원선과 함께 밖으로 빼놓아야한다.

이상 6채널 논-스톱-스톱-워치 만들기 프로젝트 였다.

 

아직은 임시로 만들었기 때문에, 정식으로 리뉴얼 하면 코드와 함께 후기를 올려보겠다.