이번 포스팅에서는 testX Flasher와 1개의 인터페이스 보드를 이용해서 WIZnet의 WIZ750SR 모듈 다섯 대에 대한 일괄 펌웨어 다운로드 및 동작 시험을 하는 예제를 설명한다.
먼저 WIZ750SR 모듈의 Pinout을 알아야 testX Flasher와 연결을 구성할 수 있다.
WIZ750SR 모듈 Pinout
(source: https://docs.wiznet.io/Product/S2E-Module/WIZ750SR/datasheet)
위 그림과 같이 많은 핀이 제공되는 데 이중에서 펌웨어 다운로드와 관련한 핀은 전원(VCC, GND), BOOT, RSTN, U_RXD2, U_TXD2 등 6개 핀이다. 여기에 펌웨어 다운로드 후, 펌웨어 동작이 제대로 되는 지를 확인하지 위해서 데이터 통신용 포트인 RXD, TXD 핀을 추가로 사용한다.
testX Flasher Interface board Pinout
testX Flasher TWF-100과 사용자의 Target 보드 사이를 손쉽게 연결하기 위해서 티웨어랩에서는 testX Flasher Interface 보드를 옵션으로 제공한다.
이에 대한 자세한 사양은 별도의 문서를 참조하기 바란다.
Interface 보드는 5개의 타겟 보드 연결 커넥터를 제공하는데, 타겟 보드 연결 커넥터는 다음과 같은 Pinout을 가지고 있다.
Pin No. | Pin Name | Direction | Remarks |
1 | POUT(3.3V) | PWR | |
2 | U2_TXD | OUT | |
3 | U2_RXD | IN | |
4 | NC | NA | |
5 | GPIO2 | IN/OUT | |
6 | GPIO3 | IN/OUT | |
7 | GPIO4 | IN/OUT | |
8 | GPIO5 | IN/OUT | |
9 | GPIO6 | IN/OUT | |
10 | U1_TXD | OUT | |
11 | U1_RXD | IN | |
12 | U1_CTS | IN | |
13 | U1_RTS | OUT | |
14 | SWDIO | NA | |
15 | SWCLK | NA | |
16 | GND | PWR | |
17 | GPIO7 | IN/OUT | |
18 | GPIO8 | IN/OUT | |
19 | NC | NA | |
20 | NC | NA |
Interface board와 Target 보드의 Pin 연결
- WIZ750SR에 사용된 W7500(P) MCU의 ISP 포트는 U2_RXD, U2_TXD에 연결되어 있다. Interface 보드의 UART port 중 하나와 연결한다.
- WIZ750SR의 BOOT 핀, RSTN 핀은 Interface 보드의 GPIO 핀과 연결한다.
- 데이터 송수신용 RXD, TXD 핀은 Interface 보드의 또 다른 UART port와 연결한다.
위 기준에 따른 Pin 연결은 다음과 같다.
Interface board | WIZ750SR |
POUT(3.3V) | VCC |
GPIO5 | BOOT |
U2_TXD | U_RXD2 |
U2_RXD | U_TXD2 |
GPIO6 | RSTN |
GND | GND |
U1_TXD | RXD |
U1_RXD | TXD |
아래 사진은 WIZ750SR과 인터페이스 보드를 jumper cable과 wrapping cable로 연결한 실제 모습이다.
테스트 절차(테스트세트)
- 인터페이스 보드의 eFuse 모듈 제어를 통해서 WIZ750SR에 전원 인가
- RSTN 핀 제어를 통해서 WIZ750SR Reset
- BOOT 핀과 RSTN 핀 제어를 통해서 W7500 Boot Mode 진입
- Flash 내 기존 데이터 Erase
- 지정된 펌웨어 Download
- RSTN 핀 제어로 재부팅
- U2_RXD로 WIZ750SR U_TXD2 핀에서 나오는 메시지 확인. 정상 부팅인지 확인
- U1_TXD로 WIZ750SR에 AT command 전송
- U1_RXD로 WIZ750SR에서 나온 응답 확인.
위 절차 중 임의의 단계에서 응답 타임아웃이나 원하는 값이 아니면 실패로 처리한다.
동작 영상
위와 같은 절차에 대한 동작 영상은 다음과 같다.
0개의 댓글