Atmel AVR2070 Manual De Usuario

Descargar
Página de 93
 
AVR2070
 
 
11
8240B-AVR-06/09 
4 AT91SAM7X-EK RUM Quickstart 
The Atmel RUM protocol is integrated to run on the AT91SAM7X-EK board which 
contains an AT91SAM7X256 microcontroller. Additionally, the IPv6/6LoWPAN layers 
can be compiled in. Compiling in the IPv6 layer will allow the SAM7X platform to act 
as an IPv6 Edge Router in addition to an 802.15.4 PAN Coordinator. Furthermore, the 
SAM7X platform supports all the Atmel 802.15.4 transceivers: AT86RF230, 
AT86RF231 and AT86RF212. 
The PAN Coordinator performs the classical functions defined in section 5.3 of the 
IEEE 802.15.4-2006 specification. It will start and maintain a non-beaconing network. 
The edge router functionality will route IPv6 network traffic to the appropriate end and 
router nodes based on their specific IPv6 addresses. The RUM protocol 
implementation differs slightly from the IEEE 802.15.4 standard. Please have a look 
at the documentation of the Route Under MAC (RUM) Protocol described in Appendix 
A. 
The SAM7X provides multiple interfaces for users to interact with the 802.15.4 
wireless network. Among these are RS232, USB, telnet and simple direct web 
interface. The remainder of this section will describe the implementation of low level 
drivers, radio drivers, timers, uTasker RTOS integration and web interfaces. 
4.1 uTasker RTOS 
To jump start development and provide a solid foundation for ARM operation, the 
uTasker RTOS was chosen to build upon. uTasker is not a pre-emptive type RTOS, 
rather it is a task-event-state driven type. A task was created called RUM Task that is 
responsible for processing radio events as well as timer events associated with the 
radio protocol. For a complete description of the uTasker RTOS visit 
www.utasker.com
In addition to RUM, IPv6, and 6LoWPAN, a FAT file system has been integrated into 
the uTasker system. For more details see 
www.efsl.be
 and the Doxygen 
documentation. RUM and IPv6 are described accordingly within this document. 
Most of the RUM application code to interact with the uTasker RTOS is located in: 
• rumtask.[c/h] 
• arm_app.[c/h] 
 
Most of the RUM stack shares the same code base between the SAM7X and the 
AVR microcontroller platforms. There are, however, specific files that only pertain to 
the ARM build or the AVR build. Low level files specific to the SAM7X build are: 
• arm_timer.[c/h] 
• arm_timer_event.[c/h] 
• hal_arm.[c/h] 
Additional modifications are:  
•  Enabling a telnet and a user menu interface. 
•  IPv6 and 6LoWPAN 
• The 
EFSL FAT file system 
See section 3.3 for specific build size of uTasker and RUM compiled for the SAM7X.