Nordic에는 nRF7002-DK라는 또 하나의 훌륭한 플랫폼이 있으며, 다음과 같은 기능을 제공합니다:
-
특징
- nRF7002 와이파이 컴패니언 IC
- 호스트 프로세서는 nRF5340 SoC
- 아두이노 커넥터
- 프로그래밍 가능한 버튼 두 개
- 2.4GHz 및 5GHz용 안테나
- 전류 측정용 핀
- nRF Connect SDK에 보드 지원과 예제 포함
-
nRF7002 와이파이 컴패니언 IC
- 2.4GHz 및 5GHz 듀얼 밴드
- IoT에 적합한 저전력 및 보안 와이파이
- 저전력 블루투스와의 우수한 공존 성능
- nRF Connect SDK에서 지원
- TWT (Target Wake Time, 타겟 웨이크 시간)
- SPI / QSPI
- Wi-Fi 6 스테이션 (Station, STA)
- 802.11a/b/g/n/ac/ax 준수
- 1 공간 스트림 (Spatial Stream, SS)
- 20MHz 채널 대역폭
- 64 QAM (MCS7), 최대 86 Mbps PHY 처리량
- OFDMA (다운링크 및 업링크)
- BSS (Basic Service Set, 기본 서비스 세트) 컬러링
- 공존 인터페이스
-
nRF5340 SoC
- 고성능 128 MHz Arm Cortex-M33 애플리케이션 프로세서
- 초저전력 64 MHz Arm Cortex-M33 네트워크 프로세서
- 여러 무선 프로토콜 지원:
- 저전력 블루투스
- 블루투스 메시 (Mesh)
- 스레드 (Thread) 및 지그비 (Zigbee)
이 nRF7002-DK에서 Zephyr RTOS를 사용하여 빌드하기 위해서는, 이 글에서 설명한 설치 단계를 먼저 완료해야 합니다. 해당 단계가 모두 완료되면, 보드의 LED를 점멸시키는 애플리케이션을 다음 명령어를 사용하여 빌드 할 수 있습니다.
/zephyrproject/zephyr$ west build -p always -b nrf7002dk/nrf5340/cpuapp samples/basic/blinky
빌드가 완료되면, 다음 명령을 사용하여 개발 키트에 플래시 할 수 있습니다.
west flash
다음은 개발 키트에서 LED가 점멸하는 모습을 보여주는 영상입니다.
이 LED 점멸 데모의 소스 코드는 다음 위치에 있습니다.
samples/basic/blinky/src/main.c
위 과정을 통해 Zephyr RTOS를 사용하여 Nordic 개발 키트에서 기본 LED 점멸 애플리케이션을 빌드하고 플래시 하는 방법을 시연하였습니다. 그리고 Zephyr RTOS에서 두 개의 스레드를 보여주는 데모도 다음과 같이 빌드 및 컴파일하고,
zephyrproject/zephyr$ west build -p always -b nrf7002dk/nrf5340/cpuapp samples/synchronization/
개발 키트에 플래시 할 수 있습니다.
west flash
아래는 USB minicom 터미널에서 실행 중인 데모를 보여줍니다.
Welcome to minicom 2.9
OPTIONS: I18n
Port /dev/ttyACM1, 15:36:42
Press CTRL-A Z for help on special keys
thread_b: Hello World from cpu 0 on nrf7002dk!
thread_a: Hello World from cpu 0 on nrf7002dk!
thread_b: Hello World from cpu 0 on nrf7002dk!
thread_a: Hello World from cpu 0 on nrf7002dk!
thread_b: Hello World from cpu 0 on nrf7002dk!
thread_a: Hello World from cpu 0 on nrf7002dk!
thread_b: Hello World from cpu 0 on nrf7002dk!
thread_a: Hello World from cpu 0 on nrf7002dk!
thread_b: Hello World from cpu 0 on nrf7002dk!
thread_a: Hello World from cpu 0 on nrf7002dk!
thread_b: Hello World from cpu 0 on nrf7002dk!
thread_a: Hello World from cpu 0 on nrf7002dk!
thread_b: Hello World from cpu 0 on nrf7002dk!
....
이 동기화 데모는 두 개의 스레드로 구성되어 있으며, 세마포어와 슬립을 사용해 서로 번갈아 가며 USB를 통해 메시지를 지정된 속도로 출력합니다. thread_a는 main 함수에서 생성되는 동적 스레드이며, thread_b는 시스템 시작 즉시 생성되는 정적 스레드입니다. 이 데모는 스레드를 생성하는 정적 방식과 동적 방식을 모두 코드에서 보여주지만, 실제 애플리케이션에서는 두 스레드 모두 정적 방식으로 생성하는 것이 일반적입니다.
소스 코드는 다음 위치에 있습니다.
samples/synchronization/src/main.c
Nordic nRF7002-DK는 현재 시장에서 드물게 Wi-Fi 6 인증을 획득한 임베디드 레퍼런스 디자인 중 하나로, 듀얼 밴드 및 TWT를 지원하기에 앞서 언급한 무선 응용 분야에 매우 적합한 제품입니다.
좋은 하루 되세요!