Don't think! Just do it!

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

임베디드 소프트웨어/Zephyr 22

[nRF52840 + Zephyr] #4. 디바이스 트리 2

2023.05.09 - [임베디드 소프트웨어/Zephyr] - [nRF52840 + Zephyr] #3. 디바이스 트리 1 [nRF52840 + Zephyr] #3. 디바이스 트리 12023.05.03 - [임베디드 소프트웨어/Zephyr] - [nRF52840 + Zephyr] #2. 뭘 공부해야 하나? [nRF52840 + Zephyr] #2. 뭘 공부해야 하나? 2023.05.01 - [임베디드 소프트웨어/Zephyr] - Nordic NRF52840 + Zephyr 개발 환경 구축 Nordicengschool.tistory.com지난 번에는 blinky 앱에서 디바이스 트리의 노드를 어떻게 사용했는지 간단하게 살펴봤어. 이 번에는 조금더 들어가서 unit address하고 chosen에 대해 알아..

[nRF52840 + Zephyr] #3. 디바이스 트리 1

2023.05.03 - [임베디드 소프트웨어/Zephyr] - [nRF52840 + Zephyr] #2. 뭘 공부해야 하나? [nRF52840 + Zephyr] #2. 뭘 공부해야 하나? 2023.05.01 - [임베디드 소프트웨어/Zephyr] - Nordic NRF52840 + Zephyr 개발 환경 구축 Nordic NRF52840 + Zephyr 개발 환경 구축nrf52840을 위한 zephyr 개발 환경은 vscode에 nrf extension을 설치하는 방식으로 구축해. 공 engschool.tistory.com 저번 글에서 적어도 3가지는 공부해야 한다고 그랬어. Device tree, Kconfig, zephyr kernel api. 이 중에 하드웨어 설정과 관련이 있는 Device tre..

[nRF52840 + Zephyr] #2. 뭘 공부해야 하나?

2023.05.01 - [임베디드 소프트웨어/Zephyr] - Nordic NRF52840 + Zephyr 개발 환경 구축 Nordic NRF52840 + Zephyr 개발 환경 구축 nrf52840을 위한 zephyr 개발 환경은 vscode에 nrf extension을 설치하는 방식으로 구축해. 공식 가이드에도 이렇게 나와있으니까 고민하지 말고 따라왓! 우선 아래 링크에서 nrf connect for desktop을 설치!👇 engschool.tistory.com 아래는 저번 시간에 보드에 올리고 테스트 했던 blinky app의 main.c 파일 내용이야. 👇👇 적당히 주석을 달아놨으니 당장 모르겠어도 한 번 주~욱 살펴보라굿. #include #include #define SLEEP_TIME_MS..

[nRF52840 + Zephyr] #1. 개발 환경 구축

nrf52840을 위한 zephyr 개발 환경은 vscode에 nrf extension을 설치하는 방식으로 구축해. 공식 가이드에도 이렇게 나와있으니까 고민하지 말고 따라왓! 우선 아래 링크에서 nrf connect for desktop을 설치! 👇 https://www.nordicsemi.com/Products/Development-tools/nRF-Connect-for-Desktop/Download#infotabs nRF connect for desktop을 통해서 SDK 등 여러가지 nrf 개발용 소프트웨어를 설치할 수 있어. 그리고 아래 링크에서 nrf command line tool 설치! 👇👇 이건 segger debugger 디바이스 드라이버가 들어 있는 놈이지! 플래시에 프로그램하거나 디버..

[nRF52840 + Zephyr] #0. nRF and Zephyr

NRF52 시리즈 중 하나를 아주 잠깐 사용해본 적이 있었어. 어렴풋한 기억으로는 RTOS에 블루투스 스택이 돌아가고 있었고 유저는 유저 테스크에서만 한정적으로 코드를 만졌던 것 같아 -_-;;; 스쳐지나가는 프로젝트라 깊게도 안팠지만 그 때 뭐랄까.. 좀 나쁜 이미지가 있었는데 이제와서 다시 보니~ 제퍼 OS를 사용하고 있네? 오~ 👇👇👇 사용자 환경도 매우 잘 구축되어 있고 예제도 충실해! 이것 저것 테스트해보고 나니 이건 뭐 신세계! 개인적으로 느끼기에 지금까지 경험해본 임베디드 개발 환경 중 단연 으뜸이라 말할 수 있었어. 블루투스 쪽 스택이나 프로파일도 알아야 하고 제퍼 RTOS도 해야 한다는 압박감이 있는 걸 알지만 nordic에서 제공하는 vscode extension을 설치하고 예제를 몇개..

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 새 보드 만들기 #3

2022.09.23 - [임베디드 소프트웨어/Zephyr] - Zephyr 새 보드 만들기 #2 Zephyr 새 보드 만들기 #2 2022.09.22 - [임베디드 소프트웨어/Zephyr] - Zephyr 새 보드 만들기 Zephyr 새 보드 만들기 2022.08.01 - [임베디드 소프트웨어/Zephyr] - Zephyr 새 프로젝트 만들기 Zephyr 새 프로젝트 만들기 2022.07.30 - [.. engschool.tistory.com 제퍼 새 보드를 만들긴 했는데 w5500코드로는 w5100s가 동작하지 않아. 드라이버를 새로 만들어야 하는 것 같아. 그래서 w5100s_evb_pico는 그대로 두고 새로 w5500_evb_pico 보드를 추가했고 제퍼 CONFIG도 조금 더 수정했어. 우선 w..

Zephyr 새 보드 만들기 #2

2022.09.22 - [임베디드 소프트웨어/Zephyr] - Zephyr 새 보드 만들기 Zephyr 새 보드 만들기 2022.08.01 - [임베디드 소프트웨어/Zephyr] - Zephyr 새 프로젝트 만들기 Zephyr 새 프로젝트 만들기 2022.07.30 - [임베디드 소프트웨어/Zephyr] - Zephyr RTOS 시작하기 - 설치 및 기본 예제 Zephyr RTOS 시작.. engschool.tistory.com 오늘은 디바이스 트리를 만져보자고. 디바이스 트리는 리눅스에서 하드웨어를 설명해놓은 구조? 정도라고 보면 돼. 우리는 완전 새로운 디바이스 드라이버를 개발하는 게 아니니까 디바이스 트리만 적절하게 만져주면 동작이 가능하지 않을까? 나도 몰라 해봐야 알지 ㅋ 우선 새로 만들어놓은 ..

Zephyr 새 보드 만들기

2022.08.01 - [임베디드 소프트웨어/Zephyr] - Zephyr 새 프로젝트 만들기 Zephyr 새 프로젝트 만들기 2022.07.30 - [임베디드 소프트웨어/Zephyr] - Zephyr RTOS 시작하기 - 설치 및 기본 예제 Zephyr RTOS 시작하기 - 설치 및 기본 예제 사실 제퍼 공홈 getting started 문서 보면 다 있는 내용들인데.. 다만 영어.. engschool.tistory.com 저번에 W5100S-EVB-PICO 보드에서 동작하는 새 프로젝트를 만들어 봤어. 요약하자면 getting started에 나와 있는데로 zephyr랑 zephyr sdk 그리고 python dependency를 모두 설치. zephyr 경로를 환경 변수에 추가하는 것으로 설치는 끝..

Zephyr 새 프로젝트 만들기

2022.07.30 - [임베디드 소프트웨어/Zephyr] - Zephyr RTOS 시작하기 - 설치 및 기본 예제 Zephyr RTOS 시작하기 - 설치 및 기본 예제 사실 제퍼 공홈 getting started 문서 보면 다 있는 내용들인데.. 다만 영어일 뿐이지. 그래도 조금씩 애매한 부분들이 있는데 그런 거 위주로 설명하도록 할게. 아래는 Zephyr getting started👇👇 https://d engschool.tistory.com 제퍼 기본 예제(Blinky)를 해봤어. 그런데 그런데 이 예제는 zephyrproject 폴더 안에 프로젝트를 생성하는 방식이라서 여러가지 새로운 프로젝트가 추가되면 뭐.. 복잡해서 보겠나? 그래서 깔끔하게 새로운 폴더 위치에 새로운 프로젝트를 생성해보자구. ..

반응형