Part 1
요약·해설
AT86RF230 제외 조건부터 RZ600·REB233-XPRO·Arduino·MikroBus의 65개 signal row, 6개 variation, network interface 충돌 방지와 네 가지 build 조합을 설명합니다.
AT86RF2xx · 2.4GHz
IEEE 802.15.4 · Thread
Xplained · Arduino · MikroBus
SPI + IRQ + GPIO × 2
Part 2
접을 수 있는 영어 원문 전체
영어 원문 전체 펼치기
178041C2E3144C468EBAAFF81E3E9B68EBA5508C66C771E802E22555D4872780
.. _atmel_at86rf2xx_transceivers:
Atmel AT86RF2XX Transceivers
############################
Overview
********
The Atmel AT86RF2xx is a high performance radio transceiver targeted for IEEE
802.15.4, ZigBee, RF4CE, 6LoWPAN, and ISM applications. The AT86RF2xx is a
true SPI-to-antenna solution and can be operated by any external
microcontroller.
The current IEEE 802.15.4 AT86RF2xx Zephyr driver currently works with any
2.4 Ghz transceiver, except AT86RF230. The RF2xx driver allows use of
:ref:`ieee802154_interface` and :ref:`thread_protocol_interface` network
stacks.
This is a generic shield focused not only on Atmel Development Boards Kits.
There are compatible designations for `AT AVR-RZ600`_ and `AT REB233-XPRO`_.
This means, any Atmel board with 10-pin Xplained or 20-pin Xplained Pro
extension headers can be used. You can check
`Atmel Xplained Pro Hardware Development Kit User Guide`_ for more information.
Besides that, Arduino and MikroBus standard headers are available to complement
the shield module configurations. For any other project that doesn't fit on
the current available variations an overlay can be created. However, the
overlay is the last resource and is recommended use standard header always
possible.
RZ600 Module
============
The RZ600 Development Kit needs Atmel Xplained or Xplained-Pro header
connector. The modules from this kit are available without any transceiver
advanced features. For Xplained headers the `atmel_rf2xx_xplained`_ must be
selected. For Xplained-Pro header the `atmel_rf2xx_legacy`_ must be enabled.
.. image:: ../../../../../../../boards/shields/atmel_rf2xx/doc/ATAVRRZ600.jpg
:align: center
:alt: AVR-RZ600
Pins Assignment of the RZ600 Module
===================================
+---------+--------+-------------------------------------+
| Pin | Name | Function |
+=========+========+=====================================+
| 1 | RST | GPIO - Reset |
+---------+--------+-------------------------------------+
| 2 | MISC | DNU - Do Not Use |
+---------+--------+-------------------------------------+
| 3 | IRQ | GPIO - Interrupt |
+---------+--------+-------------------------------------+
| 4 | SLP_TR | GPIO - Multi purpose control signal |
+---------+--------+-------------------------------------+
| 5 | CS | SPI Chip Select |
+---------+--------+-------------------------------------+
| 6 | MOSI | SPI Master Out / Slave In |
+---------+--------+-------------------------------------+
| 7 | MISO | SPI Master In / Slave Out |
+---------+--------+-------------------------------------+
| 8 | SCLK | SPI Clock |
+---------+--------+-------------------------------------+
| 9 | GND | |
+---------+--------+-------------------------------------+
| 10 | VDD | POWER +3.3V |
+---------+--------+-------------------------------------+
REB233-XPRO Module
==================
The REB233-XPRO development kit uses Atmel Xplained Pro header. It is enabled
selecting `atmel_rf2xx_xpro`_ option.
.. image:: ../../../../../../../boards/shields/atmel_rf2xx/doc/atreb233-xpro-top.jpg
:align: center
:alt: REB233-XPRO Top
Pins Assignment of the REB233-XPRO Module
=========================================
+---------+--------+-------------------------------------+
| Pin | Name | Function |
+=========+========+=====================================+
| 1 | ID | DNU - Do Not Use |
+---------+--------+-------------------------------------+
| 2 | GND | |
+---------+--------+-------------------------------------+
| 3 | DIG1 | DNU - Do Not Use |
+---------+--------+-------------------------------------+
| 4 | DIG3 | DNU - Do Not Use |
+---------+--------+-------------------------------------+
| 5 | DIG2 | GPIO - RX Frame Time Stamping |
+---------+--------+-------------------------------------+
| 6 | CLKM | DNU - Do Not Use |
+---------+--------+-------------------------------------+
| 7 | RST | GPIO - Reset |
+---------+--------+-------------------------------------+
| 8 | | |
+---------+--------+-------------------------------------+
| 9 | IRQ | GPIO - Interrupt |
+---------+--------+-------------------------------------+
| 10 | SLP_TR | GPIO - Multi purpose control signal |
+---------+--------+-------------------------------------+
| 11 | SDA | EEPROM - AT24MAC602 |
+---------+--------+-------------------------------------+
| 12 | SCL | EEPROM - AT24MAC602 |
+---------+--------+-------------------------------------+
| 13 | | |
+---------+--------+-------------------------------------+
| 14 | | |
+---------+--------+-------------------------------------+
| 15 | CS | SPI Chip Select |
+---------+--------+-------------------------------------+
| 16 | MOSI | SPI Master Out / Slave In |
+---------+--------+-------------------------------------+
| 17 | MISO | SPI Master In / Slave Out |
+---------+--------+-------------------------------------+
| 18 | SCLK | SPI Clock |
+---------+--------+-------------------------------------+
| 19 | GND | |
+---------+--------+-------------------------------------+
| 20 | VDD | POWER +3.3V |
+---------+--------+-------------------------------------+
.. note:: DIG2 is not current implemented on RF2xx driver.
Arduino Shields
===============
Arduino Uno R3 header is available without advanced features. It is enabled
selecting `atmel_rf2xx_arduino`_ variant option.
Pins Assignment of the Arduino Shield Modules
=============================================
+---------+--------+-------------------------------------+
| Pin | Name | Function |
+=========+========+=====================================+
| D0 | | |
+---------+--------+-------------------------------------+
| D1 | | |
+---------+--------+-------------------------------------+
| D2 | IRQ | GPIO - Interrupt |
+---------+--------+-------------------------------------+
| D3 | | |
+---------+--------+-------------------------------------+
| D4 | | |
+---------+--------+-------------------------------------+
| D5 | | |
+---------+--------+-------------------------------------+
| D6 | | |
+---------+--------+-------------------------------------+
| D7 | | |
+---------+--------+-------------------------------------+
| D8 | RST | GPIO - Reset |
+---------+--------+-------------------------------------+
| D9 | SLP_TR | GPIO - Multi purpose control signal |
+---------+--------+-------------------------------------+
| D10 | CS | SPI Chip Select |
+---------+--------+-------------------------------------+
| D11 | MOSI | SPI Master Out / Slave In |
+---------+--------+-------------------------------------+
| D12 | MISO | SPI Master In / Slave Out |
+---------+--------+-------------------------------------+
| D13 | SCLK | SPI Clock |
+---------+--------+-------------------------------------+
| D14 | | |
+---------+--------+-------------------------------------+
| D15 | | |
+---------+--------+-------------------------------------+
| | GND | |
+---------+--------+-------------------------------------+
| | VDD | POWER +3.3V |
+---------+--------+-------------------------------------+
| | VCC | POWER +5.0V |
+---------+--------+-------------------------------------+
MikroBus Shields
================
MikroBus header is available without advanced features. It is
enabled selecting `atmel_rf2xx_mikrobus`_ variant option.
Pins Assignment of the MikroBus Shield Modules
==============================================
+---------+--------+-------------------------------------+
| Pin | Name | Function |
+=========+========+=====================================+
| AN | RST | GPIO - Reset |
+---------+--------+-------------------------------------+
| RST | | |
+---------+--------+-------------------------------------+
| CS | CS | SPI Chip Select |
+---------+--------+-------------------------------------+
| SCK | SCLK | SPI Clock |
+---------+--------+-------------------------------------+
| MISO | MISO | SPI Master In / Slave Out |
+---------+--------+-------------------------------------+
| MOSI | MOSI | SPI Master Out / Slave In |
+---------+--------+-------------------------------------+
| VCC-3.3 | VDD | POWER +3.3V |
+---------+--------+-------------------------------------+
| GND | GND | |
+---------+--------+-------------------------------------+
| GND | GND | |
+---------+--------+-------------------------------------+
| VCC-5.0 | VCC | POWER +5.0V |
+---------+--------+-------------------------------------+
| SDA | | |
+---------+--------+-------------------------------------+
| SCL | | |
+---------+--------+-------------------------------------+
| TX | | |
+---------+--------+-------------------------------------+
| RX | | |
+---------+--------+-------------------------------------+
| INT | IRQ | GPIO - Interrupt |
+---------+--------+-------------------------------------+
| PWM | SLP_TR | GPIO - Multi purpose control signal |
+---------+--------+-------------------------------------+
Supported variations
====================
The below table suggests shield variation accordingly with end user
application. When a standard connector (arduino, mikrobus, xplained,
xplained-pro) is available on board, user should select the matching shield
configuration. When atmel_rf2xx shield is used with a board that doesn't
feature a standard connector, a dedicated <board>.overlay file should be
provided. The remaining configurations should be used based on the board
standard headers available.
+-----------------------------+------------------------------+-----------+
| Connector Standard | Shield Designation | Variation |
+=============================+==============================+===========+
| Without standard (overlay) | `atmel_rf2xx`_ | 1 |
+-----------------------------+------------------------------+-----------+
| Atmel Xplained header | `atmel_rf2xx_xplained`_ | 2 |
+-----------------------------+------------------------------+-----------+
| Atmel Xplained Pro header | `atmel_rf2xx_xpro`_ | 3 |
+-----------------------------+------------------------------+-----------+
| Atmel Xplained Pro header | `atmel_rf2xx_legacy`_ | 4 |
+-----------------------------+------------------------------+-----------+
| Arduino | `atmel_rf2xx_arduino`_ | 5 |
+-----------------------------+------------------------------+-----------+
| MikroBus | `atmel_rf2xx_mikrobus`_ | 6 |
+-----------------------------+------------------------------+-----------+
Requirements
************
This shield requires a board which provides a configuration that allows an
SPI interface, an interrupt signal and two GPIO. (see :ref:`shields` for more
details).
.. note::
Boards that already have a network interface: Check network
documentation to understand how properly configure both interfaces.
To keep simple, make sure IEEE 802.15.4 is the only interface enabled
at Networking -> Link Layer Options. This will avoid problems running
Zephyr samples.
Tested Boards
=============
+------------------------------+------------------------------+-----------+
| Board | Disabled Interface | Variation |
+==============================+==============================+===========+
| ATMEL sam4s_xplained | | 2 |
+------------------------------+------------------------------+-----------+
| ATMEL sam4e_xpro | Ethernet | 3 , 4 |
+------------------------------+------------------------------+-----------+
| ATMEL sam_v71_xult/samv71q21 | Ethernet | 3 , 4 , 5 |
+------------------------------+------------------------------+-----------+
Sample usage
************
You can try use IEEE 802.15.4 and/or OpenThread with the Zephyr Echo server
and Echo client samples, which provide out-of-the-box configuration for
both IEEE 802.15.4 and OpenThread. To enable IEEE 802.15.4 support in the
samples, build them with ``overlay-802154.conf`` overlay config file. Same
way, to enable OpenThread support, build them with ``overlay-ot.conf`` overlay
config file. See :zephyr:code-sample:`sockets-echo-server` and
:zephyr:code-sample:`sockets-echo-client` samples for details.
Build and Programming
*********************
Set ``--shield <shield designator>`` when you invoke ``west build``.
.. zephyr-app-commands::
:zephyr-app: samples/net/sockets/echo_server
:host-os: unix
:board: sam4s_xplained
:gen-args: -DOVERLAY_CONFIG=overlay-802154.conf
:shield: atmel_rf2xx_xplained
:goals: build flash
:compact:
.. zephyr-app-commands::
:zephyr-app: samples/net/sockets/echo_server
:host-os: unix
:board: [sam4e_xpro | sam_v71_xult/samv71q21]
:gen-args: -DOVERLAY_CONFIG=overlay-802154.conf
:shield: [atmel_rf2xx_xpro | atmel_rf2xx_legacy]
:goals: build flash
:compact:
.. zephyr-app-commands::
:zephyr-app: samples/net/sockets/echo_server
:host-os: unix
:board: [sam_v71_xult/samv71q21 | frdm_k64f | nucleo_f767zi]
:gen-args: -DOVERLAY_CONFIG=overlay-802154.conf
:shield: atmel_rf2xx_arduino
:goals: build flash
:compact:
.. zephyr-app-commands::
:zephyr-app: samples/net/sockets/echo_server
:host-os: unix
:board: lpcxpresso55s69_ns
:gen-args: -DOVERLAY_CONFIG=overlay-802154.conf
:shield: atmel_rf2xx_microbus
:goals: build flash
:compact:
References
**********
.. target-notes::
.. _AT AVR-RZ600:
https://www.microchip.com/DevelopmentTools/ProductDetails/PartNO/ATAVRRZ600
.. _AT REB233-XPRO:
https://www.microchip.com/DevelopmentTools/ProductDetails/PartNO/ATREB233-XPRO
.. _Atmel Xplained Pro Hardware Development Kit User Guide:
http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42091-Atmel-Xplained-Pro-Hardware-Development-Kit_User%20Guide.pdf
.. _atmel_rf2xx:
https://github.com/zephyrproject-rtos/zephyr/blob/master/boards/shields/atmel_rf2xx/atmel_rf2xx.overlay
.. _atmel_rf2xx_xplained:
https://github.com/zephyrproject-rtos/zephyr/blob/master/boards/shields/atmel_rf2xx/atmel_rf2xx_xplained.overlay
.. _atmel_rf2xx_xpro:
https://github.com/zephyrproject-rtos/zephyr/blob/master/boards/shields/atmel_rf2xx/atmel_rf2xx_xpro.overlay
.. _atmel_rf2xx_legacy:
https://github.com/zephyrproject-rtos/zephyr/blob/master/boards/shields/atmel_rf2xx/atmel_rf2xx_legacy.overlay
.. _atmel_rf2xx_arduino:
https://github.com/zephyrproject-rtos/zephyr/blob/master/boards/shields/atmel_rf2xx/atmel_rf2xx_arduino.overlay
.. _atmel_rf2xx_mikrobus:
https://github.com/zephyrproject-rtos/zephyr/blob/master/boards/shields/atmel_rf2xx/atmel_rf2xx_mikrobus.overlay
Part 3
한국어 전문 번역
개요
Atmel AT86RF2xx는 IEEE 802.15.4, ZigBee, RF4CE, 6LoWPAN, ISM application을 위한 고성능 radio transceiver입니다. 외부 microcontroller가 구동할 수 있는 완전한 SPI-to-antenna solution입니다.
현재 Zephyr IEEE 802.15.4 AT86RF2xx driver는 AT86RF230을 제외한 모든 2.4GHz transceiver에서 동작합니다. RF2xx driver를 통해 IEEE 802.15.4 및 Thread network stack을 사용할 수 있습니다.
이 generic shield는 Atmel development board kit에만 한정되지 않습니다. AT AVR-RZ600과 AT REB233-XPRO용 designation이 있으며, 10-pin Xplained 또는 20-pin Xplained Pro extension header가 있는 모든 Atmel board에서 사용할 수 있습니다. Arduino와 MikroBus standard header용 configuration도 제공합니다.
RZ600 Module
RZ600 Development Kit에는 Atmel Xplained 또는 Xplained Pro header connector가 필요합니다. Kit module은 transceiver advanced feature 없이 제공됩니다. Xplained header에는 atmel_rf2xx_xplained, Xplained Pro header에는 atmel_rf2xx_legacy를 선택합니다.

RZ600 pin assignment
| Pin | Name | Function |
|---|---|---|
| 1 | RST | GPIO - Reset |
| 2 | MISC | DNU - Do Not Use |
| 3 | IRQ | GPIO - Interrupt |
| 4 | SLP_TR | GPIO - Multi-purpose control signal |
| 5 | CS | SPI Chip Select |
| 6 | MOSI | SPI Master Out / Slave In |
| 7 | MISO | SPI Master In / Slave Out |
| 8 | SCLK | SPI Clock |
| 9 | GND | |
| 10 | VDD | POWER +3.3V |
REB233-XPRO Module
REB233-XPRO development kit는 Atmel Xplained Pro header를 사용하며 atmel_rf2xx_xpro option을 선택해 활성화합니다.

REB233-XPRO pin assignment
| Pin | Name | Function |
|---|---|---|
| 1 | ID | DNU - Do Not Use |
| 2 | GND | |
| 3 | DIG1 | DNU - Do Not Use |
| 4 | DIG3 | DNU - Do Not Use |
| 5 | DIG2 | GPIO - RX Frame Time Stamping |
| 6 | CLKM | DNU - Do Not Use |
| 7 | RST | GPIO - Reset |
| 8 | ||
| 9 | IRQ | GPIO - Interrupt |
| 10 | SLP_TR | GPIO - Multi-purpose control signal |
| 11 | SDA | EEPROM - AT24MAC602 |
| 12 | SCL | EEPROM - AT24MAC602 |
| 13 | ||
| 14 | ||
| 15 | CS | SPI Chip Select |
| 16 | MOSI | SPI Master Out / Slave In |
| 17 | MISO | SPI Master In / Slave Out |
| 18 | SCLK | SPI Clock |
| 19 | GND | |
| 20 | VDD | POWER +3.3V |
Arduino Shields
Advanced feature가 없는 Arduino Uno R3 header variation을 사용할 수 있습니다. atmel_rf2xx_arduino를 선택해 활성화합니다.
Arduino shield module pin assignment
| Pin | Name | Function |
|---|---|---|
| D0 | ||
| D1 | ||
| D2 | IRQ | GPIO - Interrupt |
| D3 | ||
| D4 | ||
| D5 | ||
| D6 | ||
| D7 | ||
| D8 | RST | GPIO - Reset |
| D9 | SLP_TR | GPIO - Multi-purpose control signal |
| D10 | CS | SPI Chip Select |
| D11 | MOSI | SPI Master Out / Slave In |
| D12 | MISO | SPI Master In / Slave Out |
| D13 | SCLK | SPI Clock |
| D14 | ||
| D15 | ||
| GND | ||
| VDD | POWER +3.3V | |
| VCC | POWER +5.0V |
MikroBus Shields
Advanced feature가 없는 MikroBus header variation을 사용할 수 있습니다. atmel_rf2xx_mikrobus를 선택해 활성화합니다.
MikroBus shield module pin assignment
| Pin | Name | Function |
|---|---|---|
| AN | RST | GPIO - Reset |
| RST | ||
| CS | CS | SPI Chip Select |
| SCK | SCLK | SPI Clock |
| MISO | MISO | SPI Master In / Slave Out |
| MOSI | MOSI | SPI Master Out / Slave In |
| VCC-3.3 | VDD | POWER +3.3V |
| GND | GND | |
| GND | GND | |
| VCC-5.0 | VCC | POWER +5.0V |
| SDA | ||
| SCL | ||
| TX | ||
| RX | ||
| INT | IRQ | GPIO - Interrupt |
| PWM | SLP_TR | GPIO - Multi-purpose control signal |
지원 variation
사용하는 board에 standard connector가 있으면 그 connector와 일치하는 shield configuration을 선택해야 합니다. Standard connector가 없는 board에서 atmel_rf2xx shield를 쓸 때는 전용 <board>.overlay 파일을 제공해야 합니다.
| Connector standard | Shield designation | Variation |
|---|---|---|
| Without standard (overlay) | atmel_rf2xx | 1 |
| Atmel Xplained header | atmel_rf2xx_xplained | 2 |
| Atmel Xplained Pro header | atmel_rf2xx_xpro | 3 |
| Atmel Xplained Pro header | atmel_rf2xx_legacy | 4 |
| Arduino | atmel_rf2xx_arduino | 5 |
| MikroBus | atmel_rf2xx_mikrobus | 6 |
요구 사항
이 shield를 사용하려면 SPI interface, interrupt signal, GPIO 2개를 제공하도록 board가 구성되어 있어야 합니다.
시험된 board
| Board | Disabled interface | Variation |
|---|---|---|
| ATMEL sam4s_xplained | 2 | |
| ATMEL sam4e_xpro | Ethernet | 3, 4 |
| ATMEL sam_v71_xult/samv71q21 | Ethernet | 3, 4, 5 |
Sample 사용
Zephyr Echo server와 Echo client sample은 IEEE 802.15.4와 OpenThread용 기본 configuration을 제공합니다. IEEE 802.15.4를 활성화하려면 overlay-802154.conf, OpenThread를 활성화하려면 overlay-ot.conf overlay configuration을 사용합니다.
빌드와 프로그래밍
west build를 실행할 때 connector에 맞는 --shield <shield designator>를 지정합니다. 아래 네 예시는 모두 Unix host에서 sockets echo server를 빌드하고 flash하는 구성입니다.
Xplained header
west build -b sam4s_xplained --shield atmel_rf2xx_xplained samples/net/sockets/echo_server -- -DOVERLAY_CONFIG=overlay-802154.conf
west flash
Xplained Pro header
west build -b [sam4e_xpro | sam_v71_xult/samv71q21] --shield [atmel_rf2xx_xpro | atmel_rf2xx_legacy] samples/net/sockets/echo_server -- -DOVERLAY_CONFIG=overlay-802154.conf
west flash
Arduino header
west build -b [sam_v71_xult/samv71q21 | frdm_k64f | nucleo_f767zi] --shield atmel_rf2xx_arduino samples/net/sockets/echo_server -- -DOVERLAY_CONFIG=overlay-802154.conf
west flash
MikroBus header
west build -b lpcxpresso55s69_ns --shield atmel_rf2xx_microbus samples/net/sockets/echo_server -- -DOVERLAY_CONFIG=overlay-802154.conf
west flash
참고 자료
Source
출처
영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.