[아두이노#173] 열전사 영수증 프린터(QR-701/Thermal Printer)으로 모스부호(morse code) 해독해서 프린트해보기!(녹칸다/포로리야공대가자)
프로그래밍/아두이노 호작질 2020. 12. 9. 21:40
열전사 영수증 프린터(QR-701/Thermal Printer)으로 모스부호(morse code) 해독해서 프린트해보기!
-열전사 영수증 프린터(QR-701/Thermal Printer) 선명하지 않은 문제 해결해보기
-열전사 영수증에 5V 2A를 입력해줘도 선명하게 출력되지 않은 문제가 있었다!
-녹칸다가 큰맘먹고 7.5V 1A짜리 아답터를 구입했다!!(중요)
-새로운 아답터를 연결했을때 어떻게 동작하는지 살펴보도록 해보자!
-그냥 단순히 출력테스트만 해보면 큰 의미가 없기에 기존에 있던 예제중에 활용할만한 것중 모스부호가 가장 의미있어 보였다!
-레이저빔으로 모스부호를 표현하는 송신기 아두이노가 있고 광센서로 레이저빔의 모스부호를 해독하는 수신기 아두이노가 있다!
-송신기는 PC에 연결해서 시리얼모니터로 TEXT를 입력하면 모스부호로 변환해서 레이저빔을 쏘게 된다!
-수신기는 레이저빔을 해독해서 한단어씩 구분하게 구현이 되어있는데 한단어를 입력받은 시점에서 써멀프린터(QR-701)로 출력하는 것이다!
-이것은 마치 전쟁영화를 보면 한번씩 나오는 장면을 한번 재미있게 시뮬레이션 해보는 것이다!
-모스부호가 띠딕띠딕 날라오면 짬이 낮아보이는 군인이 영수증 용지를 찢어서 상급자에게 보고하는 장면이 나온다!
예제 173-1 레이저송신기코드
* 레이저를 D2에 연결하고
* 시리얼통신으로 입력되는 문자를 그대로
* 모스부호로 표현하라
* 단위시간을 200ms에서 100ms로 2배 빠르게함!
예제173-2(수신기코드)(예제51-1를 참조하는 코드)
* CDS에 1k옴 저항을 사용해서 디지털 적으로 사용했다.
* 아래와 같이 연결해야 풀업방식의 디지털 신호가 나온다!
* 5V----1K옴저항-----%%%%-----CDS-----GND
* (예시) 레이저빔이 검출되면 0(LOW) 아니면 1(HIGH)
* 왜냐면 기본 코드가... 풀업버튼으로 구현이 되었기 때문..(버튼을 CDS로 치환)
* 열전사프린터(THERMAL PRINTER)는 TX를 D5에 RX를 D6에 연결했다!
* uart통신의 보레이트가 9600인지 19200인지 확인해보고 연결할것!
* 모두 구성이 정확하다면 하나의 word가 전송된 시점에서 영수증 프린터의 1line에 text가 출력된다!
관련라이브러리(Adafuit Themal Printer Library)
https://github.com/adafruit/Adafruit-Thermal-Printer-Library
레퍼런스강의(예제77-1, 77-2)