2022년 1월 29일 토요일

아두이노를 이용하여 LCD 창에 표시되는 시계를 만들어 보다

아두이노를 이용한 첫 프로젝트를 마쳤다. DS1302 RTC 모듈을 사용하여 시간을 기록한 뒤 불러내는 방법을 알아내고, 1602 LCD에 이를 표시하는 방법까지를 시도하였다. DS1302 RTC 모듈을 이용하게 만드는 라이브러리가 너무나 많아서 적절한 것을 찾기가 어려웠다. 내가 고른 것은 Rinky-Dink Electronics라는 곳에서 배포하는 DS1302.zip인데, 요일을 약자로 표시한다거나 날짜를 yyyy-mm-dd의 방식으로 나타내는 것이 원활하게 되지 않았다. 이 라이브러리의 최종 버전(v2.2)은 무려 10년 전에 배포된 것으로 Arduino 1.0 IDE에 맞추져 있다. 내기 설치한 Arduino IDE는 1.8.19. 어쩌면 현재의 아두이노 우노 버전과 잘 맞지 않는 것일지도 모른다.

라이브러리를 직접 구해서 압축을 푼 뒤 IDE에 적용하려면 어느 위치에 두어야 하나? 이렇게 수작업으로 설치한 경우 왜 IDE에서 단번에 인식되지 않는가? 헤더 파일을 인클루드하려면 어떻게 해야 하나? 이런 중요한 기본 개념을 이번 프로젝트를 통해 이해하게 되었다.

요일과 날짜 표시 방식이 마음에 들지 않는다.
다른 종류의 RTC 모듈 라이브러리를 섭렵해 보고, 아울러서 아두이노 환경에서 날짜 및 시간 관련 자료를 다루는 것도 연습을 해 봐야 되겠다. 손가락 두 마디 만한 칩에서 돌릴 C++ 언어에 대한 기본도 익히는 좋은 계기가 될 것이다. 늘 Perl만 쓰다가 객체지향 언어를 맛보게 된 셈이다. 어쩌면 나에게 아두이노란 뭔가를 만드는 것이 아니라 프로그래밍 언어의 새로운 측면을 공부하는 를 제공하는 의미가 더 클지도 모른다.

아두이노 공식 웹사이트(또는 아두이노 IDE 메뉴의 라이브러리 매니저)에서 검색이 되는 라이브러리 위주로 활용하는 것이 바람직할 것이다. 오늘 소개한 DS1302.zip는 그렇지 못하다.



댓글 없음: