LoRa 모듈 E22-900T22S Breakout Board 설계 2

Image
지난번 설계 에서 두 가지 업데이트 사항이 있다. 첫 번째로 3.3V 로 로직 컨버터를 거치지 않고 직접 통신할수 있는 포트를 구성하였다.  이 포트를 통해 3.3V 동작의 MCU를 사용할때 좀 더 빠르게 회로를 구성  할수 있을것으로 기대한다. 두 번째로 동작 전압 레벨이 서로 다른 MCU 와 Lora 모듈이 통신할때 사용할 기준전압을 직접 인가 할 수 있도록 하였다. 보드에는 위 와같은 점퍼가 주어지는데 3.3V 나 5V 로 점프 시키지 않을 경우 VREF 핀에 사용할 소스전압을 직접 인가해 주어야한다. 특수한 경우가 아니라면 Vref를 사용하는일은 없을것 같다. 위사 진들은 이번에 제작한 테스트 모듈이다.  왼쪽은 E22-900T22S 모듈이고 오른쪽은 ATmega328P/PB 3.3V 8Mhz 보드를 준비했다. 오른쪽의 보드는 ATmega328P/PB 를 모두 장착하여 사용할 수 있도록 설계했다. E22-900T22S 보드의 전체 회로는 다음과 같다. 동작 전압 레벨이 서로 다른 장치와 통신 할 수 있도록 레벨 컨버터를 추가 하였고, 핀 헤더를 장착하여 다른 MCU 보드와 통신하거나 점퍼를 수정해서 USB 시리얼 통신을 할수 있도록 했다. 모듈의 테스트는 mischianti의 E22 라이브러리 를 사용했다. 정리가 아주 잘 되어있는 라이브러리로 생각된다. 아래 코드는 라이브러리에 포함된 시리얼 입력을 LoRa 통신으로 전송하는 예제이다. Lora ATmega328p AUX D3 RX D4 TX D5 M1 D6/GND M0 D7/GND 송신측 코드 #include "Arduino.h" #include "LoRa_E22.h" LoRa_E22 e22ttl(4, 5, 3, 7, 6); void setup() { Serial.begin(9600); delay(500); // Startup all pins and UART e22ttl.begin(); Serial.println(&q

ATmega 시리즈를 위한 Standalone AVR Programmer


예전에 제품 설계에 ATmega328PB 를 사용해야 했었는데 아쉽게도 사용하던 펌웨어 다운로드 장비에서 PB 제품군을 지원하지 않았다. 업체에 문의도 넣었지만 업무가 많은지 업데이트는 없었다. 이미 스탠드얼론 프로그래머에 익숙해졌기 때문에 일반적인 AVR ISP 프로그래머는 불편해서 사용할 수 없는 노릇이었다.

사실 AVR 에 적용 가능한 스탠드얼론 프로그래머 프로젝트는 많기 때문에 만드는 건 어렵지 않다. 문제는 성능인데 기존에 사용하던 제품은 MCU에 매우 빠른 속도로 펌웨어를 다운 받을 수 있었기 때문이다. 지금 소개하는 장치는 그렇게 빠른 속도는 낼 수 없지만 저렴하게 만들 수 있다는 것에 감사한다.



IC 는 ATmega328P 를 사용하였고 microSD 통신에 로직 컨버터로 74HC4050 을 사용하였다.
ATmega328P 의 D2 에 연결된 택트 버튼을 누르면 프로그래밍이 시작되고 SD 카드로 부터 데이터를 읽어올 때 택트 버튼에 있는 LED 로 표시하도록 하였다.



타겟 장치로 연결되는 ISP 포트의 경우 리산테크의 10 to 6 케이블을 사용할 것 이기 때문에 그대로 만들어준다. 타겟 장치로의 ISP 연결은 D5~D8을 사용하도록 했다. 

그리고 칩셋의 ISP 를 다른 기능으로 사용하는 설계는 ISP 프로그래머 기기에서 에러를 출력하는 경우가 있기 때문에 가능하다면 임시로 회로를 비활성 할 수 있는 기능을 넣거나 사전에 프로그램을 다운받는 것이 좋다.



자! 40mm x 50mm 라는 매우 컴팩트한 사이즈의 AVR 프로그래머 가 만들어졌다. SD 카드에 저장된 데이터를 원 버튼으로 타겟 장치의 전원이나 USB 로 입력된 전원 소스로 펌웨어를 쓸 수 있다.


위 영상은 간단한 동작 시연 영상으로 디지털 핀의 LED를 하나씩 깜빡이는 간단한 예제를 업로드 하는 영상이다. 펌웨어 기록 프로세스에서 검증 단계를 제외하면 다운로드 프로세스 시간을 단축 할 수 있다.

Comments

Popular posts from this blog

[POE] - 패스 오브 엑자일 획득키 F 의 사용법 (Path of Exile)

[Arduino] - HC-06를 이용해 PC 와 Arduino 블루투스 연결

[Python] - 블루투스 모듈 HC-06의 MAC 주소를 이용하여 통신 포트 찾기