Don't think! Just do it!

종합 IT 기술 정체성 카오스 블로그! 이... 이곳은 어디지?

W5500-EVB-PICO 3

Zephyr tcp echo 서버

w5500_evb_pico 보드에서 tcp echo를 돌려보자구. tcp echo 예제는 zephyr/samples/net/sockets/echo 에 있어. main.c에 있는 내용을 전부 다 복사해서 기존에 blink 프로젝트 만들어 놓은 곳에 붙여넣어 보자구. 그리고 이건 tcp 서버니까 prj.conf에 CONFIG_NET_TCP=y 옵션을 추가해 줘야 해. 이 옵션을 안 넣으면 당연하겠지만 socket error가 출력될거야. 그러니까 아래처럼 CONFIG_NET_TCP=y를 추가해줘잉~ 이제 빌드하고 바이너리 복사. 그러면 터미널을 통해서 아래와 같은 메세지를 볼 수 있어. "4242번 포트로 tcp server가 기다리고 있다~" 자 그럼 접속해주자고. 뭐 윈도우 쓰는 사람들은 hercules..

Zephyr RTOS 시작하기 - 설치 및 기본 예제

사실 제퍼 공홈 getting started 문서 보면 다 있는 내용들인데.. 다만 영어일 뿐이지. 그래도 조금씩 애매한 부분들이 있는데 그런 거 위주로 설명하도록 할게. 아래는 Zephyr getting started👇👇 https://docs.zephyrproject.org/latest/develop/getting_started/index.html Getting Started Guide — Zephyr Project Documentation This is the documentation for the latest (main) development branch of Zephyr. If you are looking for the documentation of previous releases, use th..

Zephyr RTOS

난 임베디드 펌웨어를 작성할 때 RTOS를 선호해. 왜냐면.. 좋으니까!!! 예전에는 믿지 못하겠다며 안쓰는 사람들도 많았어. 물론 AC전압이 흐르고 모터를 돌리고 히터를 가열시키고 하는 임베디드 펌웨어 특성상 안정성이 최우선이겠지만.. 그런데 그건 -_-;; RTOS의 안정성에 문제가 있다기 보다... 내 손가락과 두뇌 안정성에 문제가 있지 않을까? ㅋㅋㅋㅋㅋ 그리고 나는 무엇보다 전체 코드를 while(1)에다가 폴링으로 때려 박는 방식이 너무 끔찍했어. 폴링으로 펌웨어를 개발을 하다보면 디버깅하거나 기능을 수정할 때 해당 기능과 관련이 없는 부분에서 새로운 오류가 발생하는 경우가 많고(특히 타이밍이 중요한 어플리케이션) memory overflow가 무서워서 malloc이나 free 사용을 못하기도..

반응형