Una de las muchas plataformas que provee Nordic, que tiene excelentes cualidades es el nRF7002-DK el cuál tiene las siguientes características,
- Key Features
- nRF7002 Wi-Fi Companion IC
- nRF5340 SoC as host processor
- Arduino connectors
- Two programmable buttons
- Antennas for 2.4 and 5 GHz
- Current measurement pins
- Board support and samples in nRF Connect SDK
- nRF7002 Wi-Fi Companion IC
- 2.4 GHz and 5 GHz dual-band
- Low-power and secure Wi-Fi for the IoT
- Ideal coexistence with Bluetooth LE
- Supported in nRF Connect SDK
- Target Wake Time (TWT)
- SPI / QSPI
- Wi-Fi 6 Certified Station (STA)
- Complies with 802.11a/b/g/n/ac/ax
- 1 Spatial Stream (SS)
- 20 MHz channel bandwidth
- 64 QAM (MCS7), 86 Mbps PHY throughput
- OFDMA (Downlink and Uplink)
- BSS coloring
- Co-existence interfaces
- nRF5340 SoC
- High performance 128 MHz Arm
- Cortex-M33 application core
- Ultra-low power 64 MHz Arm Cortex-M33 network core
- Multi-protocol radio supporting:
- Bluetooth LE
- Bluetooth mesh
- Thread and Zigbee
Aqui se describe como se contruye la aplicación con el sistema operativo Zephyr de tiempo real (RTOS), el cual enciende y apaga un LED en la plataforma Nordic nRF7002-DK. Antes de continuar, por favor complete los pasos aqui. Uno vez completado los pasos anteriores, puede construir la aplicación así,
/zephyrproject/zephyr$ west build -p always -b nrf7002dk/nrf5340/cpuapp samples/basic/blinky
luego de terminar el proceso de compilación, entonces se puede programar el artefacto,
west flash
Una vez se completa está proceso deberá observar el LED que prende y apaga como en se muestra en este video,
El código que realiza esta función esta localizado aquí,
samples/basic/blinky/src/main.c
Hemos demonstrado como construir y programar la aplicación del LED que prende y apaga dentro del sistema operativo Zephyr RTOS en el Nordic nRF7002-DK kit.
Tambien podemos construir y compilar el demo de dos ¨threads" dentro del sistema operativo Zephyr (RTOS),
zephyrproject/zephyr$ west build -p always -b nrf7002dk/nrf5340/cpuapp samples/synchronization/
la aplicación es programada de esta forma,
west flash
luego, se si abre un terminal minicom via USB, mientras la plataforma que se programo está conectada a la computadora se podra observar lo siguiente,
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!
....
Este demo de sincronización tiene 2 ¨threads" que usan semáforos y duermen tomando turnos para imprimir el mensaje a un tiempo definido. El thread_a es de carácter dinámico que se crea en el programa principal main. El otro thread_b es estático y se produce inmediatamente. Este demo demuestra ambos tipos de ¨threads" (método estático y método dinámico).; una aplicación en la vida real, de tiempo real, utiliza el método estático para ambos ¨threads".
El código se encuentra aquí en esta directorio,
samples/synchronization/src/main.c
Este sistema es una de las pocas plataformas que ya viene certificadas para operar el protocolo de radio frequencia WiFi-6, de doble banda y que provee un despertador (Target Wake Time).
Estamos para serviles, que tenga un buen día.
Este artículo esta disponible en inglés aqui.
This article is available in english here.
Este artículo esta disponible en Alemán aqui.
Dieser Artikel ist hier verfügbar.
Este artículo esta disponible en idioma japones aquí.