Getting Started with the W6100-EVB


최근 WIZnet에서는 W6100라는 칩이 출시 되었다. 그리고 W6100-EVB(이하 보드 칭함)도 같이 출시 되었다. 그래서 보드를 간단하게 설명하고 사용하는 방법을 알아보려고 한다.



외관

보드는 위와 같이 생겼다. PCB의 색이 보라색이고 실크는 하얀색이고 색감이 아주 이쁘게 잘 나온것 같다.


W6100

 W6100은 WIZnet에서 2019년 2월 말에 출시 된 IC로 Software Stack인 TCP/IP 프로토콜을 Hardware 적으로 처리해주는 IC이다. W6100은 기존의 WIZnet에서 출시된 IC와는 다르게 IPv6를 지원한다는게 큰 차이점이다. 그렇다고 IPv4를 지원하지 않는 것은 아니고, IPv4/IPv6를 지원하는 Daul stack 이다. 아직 한국에서는 IPv6에 대한 수요가 거의 없지만, 유럽이나 중국, 인도 같은 곳에서는 거의 대중화 된것으로 알고 있다.

"IPv6(Internet Protocol version 6)는 인터넷 프로토콜 스택 중 네트워크 계층의 프로토콜로서 버전 6 인터넷 프로토콜(version 6 Internet Protocol)로 제정된 차세대 인터넷 프로토콜을 말한다. 인터넷(Internet)은 IPv4 프로토콜로 구축되어 왔으나 IPv4 프로토콜의 주소가 32비트라는 제한된 주소 공간 및 국가별로 할당된 주소가 거의 소진되고 있다는 한계점으로 인해 지속적인 인터넷 발전에 문제가 예상되어, 이에 대한 대안으로서 IPv6 프로토콜이 제안되었으며, 국제 표준이 RFC 를 통해서 확정되었고, 실제로 IPv6 주소는 휴대폰 및 컴퓨터에 할당되어 적용되고 있다."  -위키백과 발췌-

 W6100은 2018년 5월에 출시된 W5100S와 Pin to Pin 호환이 되는 IC이다. 만약 W5100S를 사용중이던 사람은 W5100S 대신 W6100을 납땜해 사용 할 수도 있을 것이다. MCU쪽 인터페이스는 W5100S와 동일하게 SPI와 8bit bus를 지원한다. Ethernet 속도는 10Mbps, 100Mbps를 지원한다. 아직 1Gbps Ethernet은 지원하지 않는다.

보드에는 LQFP48 패키지가 납땜이 되어 있고, QFN48 패키지도 있다.

자세한 정보는 https://wizwiki.net/wiki/doku.php?id=products:w6100:w6100_evb:start 여기서 확인해 볼수 있다.


STM32F103VCT6

STM32F103VCT6은 STMicro의 Arm Cortex-M3 기반의 MCU이다. LQFP100 패키지이고, 256Kbytes Flash Memory, 48Kbytes SRAM를 가지고 있다. GPIO의 갯수는 80개이고 CPU의 최대 주파수는 72Mhz이다. 

보드에는 MCU외부에 12Mhz 크리스탈이 부착되어 있어 외부 크리스탈도 사용이 가능하다.

STM32F103VCT6은 SPI2와 FSMC 방식으로 W6100과 연결되어 있고, 사용자가 선택해서 사용할 수 있다.


핀헤더

 보드는 아두이노 핀헤더가 나와있고, MCU의 다른 GPIO 핀들도 나와있는 것을 볼수 있다. 아두이노 쉴드를 사용해 다양한 응용을 사용할 수 있다. 그리고 추후에 GPIO핀을 확장해서 사용할수 있을 것 같아서 MCU 활용하기가 아주 좋은 것 같다. 핀헤더로 연결된 모든 핀들은 ST의 Nucleo 보드와 동일한 핀들이다. W6100만을 사용하기 위한 EVB가 아닌 MCU를 다양하게 사용할 수 있을 것 같다. 모든 핀헤더에는 MCU의 어떤핀이 연결되어 있는지 표시가 되어 있어서 편하게 사용 할 수 있을 것 같다. SWD 핀도 핀헤더 형태로 조립할수 있도록 되어 있어 추후에 STLINK를 통해 개발이 가능하다. 


커넥터

 보드에서 보이는 커넥터는 3개이다. Ethernet 커넥터, Micro USB 커넥터, DC 커넥터이다. 전격 전압은 5V이고 DC 커넥터와 Micro USB 커넥터를 통해서 전원 입력이 가능하다. DC 커넥터는 일반적으로 사용되는 내경 2pi DC 아답터를 연결하면 된다. 

 그리고 Micro USB 커넥터는 CP2104라는 USB to UART IC와 연결되어 MCU의 UART1과 연결되어 있다. 별도의 UART 컨버터 없이 USB 케이블로 PC와 연결해서 UART message를 송수신 할 수 있어서 좋다. 또한 RJ45는 높이가 낮은 타입이라 아두이노 쉴드를 꽂아도 간섭이 없는 점이 훌륭하다.


딥스위치

 모드를 설정할 수 있는 스위치이다. 스위치의 2번핀을 OFF 하면 W6100은 SPI 모드로 동작하고, 2번핀을 ON하면 W6100은 8bit BUS 모드로 동작한다.


사용하기 편한 몇몇 연결 정보

  • W6100 to STM32F103VCT6
    • System
      • RESET : PD8
      • INTn : PD9
    • SPI2
      • MOSI : PB15
      • MISO : PB14
      • SCK : PB13
      • CS : PD7
    • FSMC 
      • DA0...DA7 : PD14, PD15, PD0, PD1, PE7, PE8. PE9, PE10
      • NE : PD7
      • NOE : PD4
      • NWE : PD5
      • NADV : PB7 
  • STM32F103VCT6 to CP2104(USB IC)
    • UART1
      • TXD : PA9
      • RXD : PA10
  • STM32F103VCT6 to LED
    • GPIO Output
      • RED : PC6
      • GREEN : PC8
      • BLUE : PC9
  • STM32F103VCT6 to Switch
    • GPIO Input
      • USER0 : PB1
      • USER1: PB8


처음 동작 확인

  • USB 케이블을 이용해 PC와  보드를 연결하고, 전원 스위치를 ON 
    • 전원 LED(Red)가 켜지는 확인
  • Ethernet 케이블을 이용해 PC(PC 연결된 hub)와 보드를 연결
    • LINK LED(Green)가 켜지고 ACT LED(Yellow)가 점등 하는지 확인
  • PC에서 Serial Terminal 프로그램을 이용해 보드와 연결
    • Serial 설정 값 : 115200,8,N,1
  • 보드의 Reset 스위치를 누르면 Serial Terminal 프로그램에 아래와 같은 메시지 출력 확인

  • PC에서 TCP Client Terminal 프로그램(Hercules 에서 가능)을 이용해 보드에 접속
    • IP : 192.168.11.16
    • Port : 5001

  • TCP Client Terminal 프로그램에서 메시지를 송신하면, 보낸 메시지가 다시 수신 됨


진행이 안될 시 체크 사항


USB 드라이버 설치

  • PC에서 보드가 인식이 되지 않은 경우 USB 드라이버를 설치해야 함
  • 아래 URL에 접속해 PC의 OS에 맞게 파일을 다운 
  • 압축 해제후 파일 설치
    • 64bit : CP210xVCPInstaller_x64.exe
    • 32bit : CP210xVCPInstaller_x86.exe


IP 설정

  • TCP Client Terminal 프로그램에서 연결이 되지 않을 때, IP를 확인해야 함.
  • "제어판\모든 제어판 항목\네트워크 및 공유 센터" 에 진입, 어댑터 설정 변경 클릭

  • "이더넷" 어댑터 우클릭 후 속성 클릭

  • "인터넷 프로토콜 버전 4" 선택 후 속성 클릭

  • IP 변경
    • 같은 대역대의 IP 여야만 통신이 되기 때문에 192.168.11.xxx 로 변경 (xxx 부분은 사용자 임의로 지정)
    • 또 다른 방법은 여기서 고급버튼을 눌러 IP를 추가해도 됨



+ Recent posts