[아두이노#172] 바코드리더기(GM65)의 인식결과를 2.4인치 LCD쉴드(SPDF5408)에 한글로 띄워보자!(녹칸다/포로리야공대가자)
프로그래밍/아두이노 호작질 2020. 12. 8. 22:01
*중간에 그만둘까 고민했는데 완성했습니다~~~~~!
바코드리더기(GM65)의 인식결과를 2.4인치 LCD쉴드(SPDF5408)에 한글로 띄워보자!
-우리말 좋은말 한글로 인식결과를 디스플레이 해보자!
-물론 이번 예제는 녹칸다가 LCD에 한글을 표현하는 기본 예제를 구현한 이후에 성공했다면 진행하는 에제이다~~!
- 2.4인치 LCD쉴드(SPDF5408)를 아두이노와 1:1로 연결한다!
-LCD쉴드에 SD카드 모듈이 내장이 되어있기 때문에 따로 SD카드 모듈을 연결할 필요는 없다!
-그러나 바코드리더기(GM65)의 통신핀을 연결할만한 각이 안나오기 때문에 H/W Serial포트에 바코드 리더를 연결한다!
-바코드를 인식했을때 필요한 정보가 담긴 txt파일을 sd카드에서 읽은다음 해당 내용을 LCD에 한글로 출력해보자!
녹칸다의 폰트 database
녹칸다의 바코드데이터 database
예제172-1 2.4인치 LCD쉴드(SPFD5408)에 바코드 리더기(GM65)의 결과를 한글로 띄워보자!
* 먼저 바코드에 해당하는 상품정보를 SD카드에 저장해놓았다!(171편강의 참조)
* EAN13바코드의 13자리를 파일명으로 커버할 수 없기에 디렉토리 구조로 저장했다!
* SD카드는 H/W SPI핀에 연결하고 CS핀을 D10에 연결했다!
* 바코드리더(GM65)는 비어있는 핀이 없어서 TX핀을 D0에 RX핀을 D1에 연결했다!
* hardware serial통신핀에 GM65가 연결되어 있다는 소리~~!
* 여기서 문제가 생기는데 프로그램 업로드 하는 동안은 바코드리더에 연결된 점퍼케이블을 분리해야한다!
* 그리고 녹칸다만의 문제인지 모르겠는데 SD카드 모듈을 사용할때 5v혹은 3.3v를 직접 연결해주지 않으면 작동하지 않는다!
* LCD의 메인전원은 3.3v이므로 비어있는 5V를 SD카드에 연결했고,
* GM65의 전원은 부득이하게 외부에서 5V를 입력받아서 사용했다!(그러나 회로도는 정상적으로 그릴것임!)
* 2개의 uart통신을 하는 디바이스가 입력전원이 다르면 GND를 서로 연결해줘야한다(주의)
* LCD에 한글을 표현하는 부분은 미리 구현된 함수를 사용해서 어려운게 없다(169편 참조)
* 대신 바코드리더의 데이터베이스도 SD카드이고, 한글표현을 위한 데이터베이스도 SD카드이기 때문에
* 2개가 동시에 작동하게 되면 안될 수 있다!
* 바코드 리더로 호출된 파일을 읽고 있는 중간에 한글을 프린트 하려고 하면 문제가 생길 여지가 있다는 뜻!
SPFD5408 LCD 쉴드에 한글 뛰우기 예제(에제169)