W5100S-EVB-PICO / RP2040 + W5100S
W5100S-EVB-PICO 에 아두이노 이더넷 예제를 넣어 동작시켜보고자 한다.
먼저 아두이노 사이트에서 아두이노를 깔았다.
따끈따끈한 2.0.0 버전이라 조금 많이 다른 느낌이다. 전 버전들은 진행방법이 조금 다르니 참고하길 바란다.
먼저 W5100S-EVB-PICO 를 Arduino 로 돌리려면 간단한 환경셋팅이 필요하다.
해당 깃에 Earlephillhower 가 만들어놓은 보드매니저에 대한 설명이 있다.
들어가보면
<Earlephillhower 의 셋팅화면설명>
이렇게 설정하라고 명시해놨다. 해당 URL 을 아두이노 Board Manager URL 에 추가하면 된다.
<내 아두이노 셋팅화면>
File -> Preferences 에서 해당 URL 을 넣어주도록 하자.
그리고나서 Tools -> Boards Manager 에서 Pico 를 검색한다.
그럼 위와같이 Earlephillhower의 보드매니터 파일이 나온다. 이를 Install 하도록 하자.
그리고 보드/포트매뉴 -> Select other board and port 에서 WIZnet W5100S-EVB-Pico 를 선택하고 포트는 현재 포팅된 포트를 선택한다.
그리고 Blink 예제를 업로딩하여 보드가 정상적으로 동작하는지 확인한다.
이제 본격적으로 Ethernet 예제를 돌려보려고 한다. 다른 아두이노 버전에도 이랬는지 모르겠지만, 내가 다운받은 2.0.0버전에는 예제에 Ethernet 이 포함되어 있지 않았다.
Tool -> Manage Libraries
Type을 Arduino 로 설정하고 Ethernet 을 검색하니 Ethernet 기본예제 라이브러리가 있어서 이를 인스톨하였다.
(Ethernet by Various (see AUTHORS files for details)
인스톨을 다하니
해당 경로에 예제파일이 생겼다.
그러면 이제 이 예제파일을 우리 보드에 맞게 바꿔주어야 한다.
위의 경로가 바꿔줘야 하는 파일이고,
바꿔주는 방법은 아래의 경로이다.
내 경우는 경로가 조금 다르지만 여기 나와있는대로 예제파일을 바꿔치기 해줬다.
그리고 아두이노를 다시 켰다. (예제인식이 안되서...)
작업이 완료되고 이렇게 라이브러리가 형성되었다면 정상이다.
간단하게 ChatServer 예제를 돌려보도록 하겠다.
ChatServer 예제를 실행시키고,
<필자의 상황에 맞게 변경한 코드>
해당 Address 들은 자신의 상황에 맞게 변경시켜주도록 한다.
명령 프롬프트에서 ipconfig /all 로 알 수 있다.
나는 192.168.0.8 이라 같은 망으로 그냥 192.168.1.177 ---> 192.168.0.177로 변경시켜줬다.
그리고 setup 부분에서 해당 칩에대한 주석을 풀어준다.
그리고 컴파일, 업로딩 하면 완료 (보드/포트설정 다시해야함)
업로드가 완료되고 시리얼 포트를 확인해보면 아래 이미지처럼 Chat server address : xxx.xxx.x.xxx 가 출력되는 것을 확인할 수 있다.
해당 Address가 우리가 만든 Char Server 의 Address 이다. 이제 채팅을 해봐야 하는데, 이를 위해 설치할 툴이 있다.
여러가지 툴이 있지만 간단하게 Hercules 라는 툴을 이용해보도록 하겠다.
해당 링크에서 다운받을 수 있다.
실행해보면 이런모습이다.
여기서 TCP Client 를 선택한다.
그리고 Module IP 에 서버 Address 를 넣고 Port 에는 23 을 기입한다. (Port 는 소스안에 설정되어있는 값)
그리고 Connect 를 누르면 아래 이미지처럼 Connected to xxx.xxx.x.xxx 라고 출력되며, Send 클릭버튼이 활성화된다.
그리고 I'm Alan 을 입력해보았다. 해당 예제는 서버에 들어오는 모든 클라이언트 메시지를 모든 클라이언트에게 다시 뿌리는 예제이다. I'm Alan 을 총 3번 입력했고, 첫번째는 Hello, client 라고 처음 메시지를 썼을 때 출력되는 메시지가 나오고 그 뒤론 자신이 보낸 메시지를 모든 연결된 클라이언트에게 뿌리기때문에 자기 자신도 받게 되면서 이런 구성이 되는 것이다.
시리얼 모니터(서버) 에서는 받은 메시지만 뜬다.
다른 예제는 다음 글에서 다뤄보도록 하겠다.
'Wiznet' 카테고리의 다른 글
Seeed Studio - Xiao RP2040 보드 호환 Ethernet 보드 제작기 (0) | 2023.06.20 |
---|---|
WIZnet 미국지사 방문기 - Day 5, 6 (0) | 2023.05.22 |
WIZnet 미국지사 방문기 - Day 3, 4 (0) | 2023.05.17 |
WIZnet 미국지사 방문기 - Day 1, 2 (4) | 2023.05.16 |
실시간 Youtube 댓글, 날씨 OLED에 뿌리기 (feat. Chat GPT, Pico, W5100S, PoE) (0) | 2023.03.16 |