Merge pull request #962 from g-oikonomou/doxy-fixes

Improve doxygen docs across the board
This commit is contained in:
Nicolas Tsiftes 2015-02-16 09:21:31 +01:00
commit 9daf31ee81
69 changed files with 1675 additions and 1109 deletions

View File

@ -31,9 +31,11 @@
*/
/**
* \file Shell command for downloading files from a remote node.
* \file
*
* Shell command for downloading files from a remote node.
* Example usage:
* 'download <node addr> <filename> | write <local_filename'.
* 'download \<node addr\> \<filename\> | write \<local_filename\>'.
*
* \author Luca Mottola <luca@sics.se>, Fredrik Osterlind <fros@sics.se>
*/

View File

@ -201,6 +201,7 @@ void ctk_draw_clear_window(struct ctk_window *window,
* drawn, in screen coordinates (line 1 is the first line below the
* menus)
*
* \param draw_borders The border style
*/
void ctk_draw_window(struct ctk_window *window,
unsigned char focus,
@ -318,7 +319,7 @@ extern unsigned char ctk_draw_windowborder_width,
/**
* The character used for the Return/Enter key.
*
* \define #define CH_ENTER '\n'
* \#define CH_ENTER '\n'
*/
/**

View File

@ -77,7 +77,7 @@ unsigned short crc16_add(unsigned char b, unsigned short crc);
* \brief Calculate the CRC16 over a data area
* \param data Pointer to the data
* \param datalen The length of the data
* \param crc The accumulated CRC that is to be updated (or zero).
* \param acc The accumulated CRC that is to be updated (or zero).
* \return The CRC16 checksum.
*
* This function calculates the CRC16 checksum of a data area.

View File

@ -142,7 +142,7 @@ int simple_udp_sendto(struct simple_udp_connection *c,
* \param data A pointer to the data to be sent
* \param datalen The length of the data
* \param to The IP address of the receiver
* \param port The UDP port of the receiver, in host byte order
* \param to_port The UDP port of the receiver, in host byte order
*
* This function sends a UDP packet to a specified IP
* address and UDP port. The packet will be sent with the

View File

@ -350,7 +350,7 @@ void uip_setipid(uint16_t id);
* Periodic processing for a connection identified by its number.
*
* This function does the necessary periodic processing (timers,
* polling) for a uIP TCP conneciton, and should be called when the
* polling) for a uIP TCP connection, and should be called when the
* periodic uIP timer goes off. It should be called for every
* connection, regardless of whether they are open of closed.
*
@ -393,8 +393,10 @@ void uip_setipid(uint16_t id);
uip_process(UIP_TIMER); } while (0)
/**
* Macro to determine whether a specific uIP connection is active
*
*
* \param conn The connection's number
* \retval 0 Connection closed
*/
#define uip_conn_active(conn) (uip_conns[conn].tcpstateflags != UIP_CLOSED)
@ -489,7 +491,7 @@ void uip_reass_over(void);
/**
* The uIP packet buffer.
*
* The uip_buf array is used to hold incoming and outgoing
* The uip_aligned_buf array is used to hold incoming and outgoing
* packets. The device driver should place incoming data into this
* buffer. When sending data, the device driver should read the link
* level headers and the TCP/IP headers from this buffer. The size of
@ -519,6 +521,8 @@ typedef union {
} uip_buf_t;
CCIF extern uip_buf_t uip_aligned_buf;
/** Macro to access uip_aligned_buf as an array of bytes */
#define uip_buf (uip_aligned_buf.u8)
@ -1097,7 +1101,7 @@ struct uip_udp_conn *uip_udp_new(const uip_ipaddr_t *ripaddr, uint16_t rport);
/**
/*
* Check if an address is a broadcast address for a network.
*
* Checks if an address is the broadcast address for a network. The
@ -2172,7 +2176,7 @@ CCIF extern uip_lladdr_t uip_lladdr;
*
* See RFC1071.
*
* \param buf A pointer to the buffer over which the checksum is to be
* \param data A pointer to the buffer over which the checksum is to be
* computed.
*
* \param len The length of the buffer over which the checksum is to
@ -2180,7 +2184,7 @@ CCIF extern uip_lladdr_t uip_lladdr;
*
* \return The Internet checksum of the buffer.
*/
uint16_t uip_chksum(uint16_t *buf, uint16_t len);
uint16_t uip_chksum(uint16_t *data, uint16_t len);
/**
* Calculate the IP header checksum of the packet header in uip_buf.

View File

@ -93,7 +93,7 @@ void uip_add32(uint8_t *op32, uint16_t op16);
* \note This function is not called in the current version of uIP,
* but future versions might make use of it.
*
* \param buf A pointer to the buffer over which the checksum is to be
* \param data A pointer to the buffer over which the checksum is to be
* computed.
*
* \param len The length of the buffer over which the checksum is to
@ -101,7 +101,7 @@ void uip_add32(uint8_t *op32, uint16_t op16);
*
* \return The Internet checksum of the buffer.
*/
uint16_t uip_chksum(uint16_t *buf, uint16_t len);
uint16_t uip_chksum(uint16_t *data, uint16_t len);
/**
* Calculate the IP header checksum of the packet header in uip_buf.

View File

@ -234,7 +234,7 @@ struct sicslowpan_addr_context {
* \brief check whether we can compress the IID in
* address 'a' to 16 bits.
* This is used for unicast addresses only, and is true
* if the address is on the format <PREFIX>::0000:00ff:fe00:XXXX
* if the address is on the format \<PREFIX\>::0000:00ff:fe00:XXXX
* NOTE: we currently assume 64-bits prefixes
*/
#define sicslowpan_is_iid_16_bit_compressable(a) \

View File

@ -29,20 +29,20 @@
*
*/
/**
* \addtogroup uip6
* @{
*/
/**
* \file
* IPv6 Neighbor cache (link-layer/IPv6 address mapping)
* IPv6 Neighbor cache (link-layer/IPv6 address mapping)
* \author Mathilde Durvy <mdurvy@cisco.com>
* \author Julien Abeille <jabeille@cisco.com>
* \author Simon Duquennoy <simonduq@sics.se>
*
*/
/**
* \addtogroup uip6
* @{
*/
#include <string.h>
#include <stdlib.h>
#include <stddef.h>

View File

@ -29,20 +29,20 @@
*
*/
/**
* \addtogroup uip6
* @{
*/
/**
* \file
* IPv6 Neighbor cache (link-layer/IPv6 address mapping)
* IPv6 Neighbor cache (link-layer/IPv6 address mapping)
* \author Mathilde Durvy <mdurvy@cisco.com>
* \author Julien Abeille <jabeille@cisco.com>
* \author Simon Duquennoy <simonduq@sics.se>
*
*/
/**
* \addtogroup uip6
* @{
*/
#ifndef UIP_DS6_NEIGHBOR_H_
#define UIP_DS6_NEIGHBOR_H_
@ -99,12 +99,12 @@ int uip_ds6_nbr_num(void);
/**
* \brief
* This searches inside the neighbor table for the neighbor that is about to
* expire the next.
* This searches inside the neighbor table for the neighbor that is about to
* expire the next.
*
* \return
* A reference to the neighbor about to expire the next or NULL if
* table is empty.
* A reference to the neighbor about to expire the next or NULL if
* table is empty.
*/
uip_ds6_nbr_t *uip_ds6_get_least_lifetime_neighbor(void);

View File

@ -29,6 +29,15 @@
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
/**
* \addtogroup uip6
* @{
*/
/**
* \file
* Routing table manipulation
*/
#include "net/ipv6/uip-ds6.h"
#include "net/ip/uip.h"
@ -636,3 +645,4 @@ uip_ds6_defrt_periodic(void)
}
}
/*---------------------------------------------------------------------------*/
/** @} */

View File

@ -29,6 +29,14 @@
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
/**
* \addtogroup uip6
* @{
*/
/**
* \file
* Header file for routing table manipulation
*/
#ifndef UIP_DS6_ROUTE_H
#define UIP_DS6_ROUTE_H
@ -158,3 +166,4 @@ uip_ds6_route_t *uip_ds6_route_next(uip_ds6_route_t *);
/** @} */
#endif /* UIP_DS6_ROUTE_H */
/** @} */

View File

@ -29,17 +29,17 @@
*/
/**
* \file
* IPv6 data structures handling functions.
* Comprises part of the Neighbor discovery (RFC 4861)
* and auto configuration (RFC 4862) state machines.
* \author Mathilde Durvy <mdurvy@cisco.com>
* \author Julien Abeille <jabeille@cisco.com>
* \addtogroup uip6
* @{
*/
/**
* \addtogroup uip6
* @{
* \file
* IPv6 data structure manipulation.
* Comprises part of the Neighbor discovery (RFC 4861)
* and auto configuration (RFC 4862) state machines.
* \author Mathilde Durvy <mdurvy@cisco.com>
* \author Julien Abeille <jabeille@cisco.com>
*/
#include <string.h>

View File

@ -5,7 +5,7 @@
/**
* \file
* Network interface and stateless autoconfiguration (RFC 4862)
* Header file for IPv6-related data structures
* \author Mathilde Durvy <mdurvy@cisco.com>
* \author Julien Abeille <jabeille@cisco.com>
*

View File

@ -31,15 +31,15 @@
*/
/**
* \file
* ICMPv6 echo request and error messages (RFC 4443)
* \author Julien Abeille <jabeille@cisco.com>
* \author Mathilde Durvy <mdurvy@cisco.com>
* \addtogroup uip6
* @{
*/
/**
* \addtogroup uip6
* @{
* \file
* ICMPv6 (RFC 4443) implementation, with message and error handling
* \author Julien Abeille <jabeille@cisco.com>
* \author Mathilde Durvy <mdurvy@cisco.com>
*/
#include <string.h>

View File

@ -31,15 +31,15 @@
*/
/**
* \file
* ICMPv6 echo request and error messages (RFC 4443)
* \author Julien Abeille <jabeille@cisco.com>
* \author Mathilde Durvy <mdurvy@cisco.com>
* \addtogroup uip6
* @{
*/
/**
* \addtogroup uip6
* @{
* \file
* Header file for ICMPv6 message and error handing (RFC 4443)
* \author Julien Abeille <jabeille@cisco.com>
* \author Mathilde Durvy <mdurvy@cisco.com>
*/
#ifndef ICMP6_H_

View File

@ -57,15 +57,15 @@
*/
/**
* \file
* Neighbor discovery (RFC 4861)
* \author Mathilde Durvy <mdurvy@cisco.com>
* \author Julien Abeille <jabeille@cisco.com>
* \addtogroup uip6
* @{
*/
/**
* \addtogroup uip6
* @{
* \file
* Neighbor discovery (RFC 4861)
* \author Mathilde Durvy <mdurvy@cisco.com>
* \author Julien Abeille <jabeille@cisco.com>
*/
#include <string.h>

View File

@ -31,15 +31,15 @@
*/
/**
* \file
* Neighbor discovery (RFC 4861)
* \author Julien Abeille <jabeille@cisco.com>
* \author Mathilde Durvy <mdurvy@cisco.com>
* \addtogroup uip6
* @{
*/
/**
* \addtogroup uip6
* @{
* \file
* Header file for IPv6 Neighbor discovery (RFC 4861)
* \author Julien Abeille <jabeille@cisco.com>
* \author Mathilde Durvy <mdurvy@cisco.com>
*/
#ifndef UIP_ND6_H_

View File

@ -31,20 +31,20 @@
*
*/
/**
* \addtogroup uip6
* @{
*/
/**
* \file
* The uIP TCP/IPv6 stack code.
* The uIP TCP/IPv6 stack code.
*
* \author Adam Dunkels <adam@sics.se>
* \author Julien Abeille <jabeille@cisco.com> (IPv6 related code)
* \author Mathilde Durvy <mdurvy@cisco.com> (IPv6 related code)
*/
/**
* \addtogroup uip6
* @{
*/
/*
* uIP is a small implementation of the IP, UDP and TCP protocols (as
* well as some basic ICMP stuff). The implementation couples the IP,
@ -105,7 +105,10 @@ struct uip_stats uip_stat;
/*---------------------------------------------------------------------------*/
/** @{ \name Layer 2 variables */
/**
* \name Layer 2 variables
* @{
*/
/*---------------------------------------------------------------------------*/
/** Host L2 address */
#if UIP_CONF_LL_802154
@ -116,7 +119,10 @@ uip_lladdr_t uip_lladdr = {{0x00,0x06,0x98,0x00,0x02,0x32}};
/** @} */
/*---------------------------------------------------------------------------*/
/** @{ \name Layer 3 variables */
/**
* \name Layer 3 variables
* @{
*/
/*---------------------------------------------------------------------------*/
/**
* \brief Type of the next header in IPv6 header or extension headers
@ -141,8 +147,9 @@ uint8_t uip_ext_opt_offset = 0;
/*---------------------------------------------------------------------------*/
/* Buffers */
/*---------------------------------------------------------------------------*/
/** \name Buffer defines
* @{
/**
* \name Buffer defines
* @{
*/
#define FBUF ((struct uip_tcpip_hdr *)&uip_reassbuf[0])
#define UIP_IP_BUF ((struct uip_ip_hdr *)&uip_buf[UIP_LLH_LEN])
@ -161,8 +168,9 @@ uint8_t uip_ext_opt_offset = 0;
#endif /* UIP_CONF_IPV6_RPL */
#define UIP_ICMP6_ERROR_BUF ((struct uip_icmp6_error *)&uip_buf[uip_l2_l3_icmp_hdr_len])
/** @} */
/** \name Buffer variables
* @{
/**
* \name Buffer variables
* @{
*/
/** Packet buffer for incoming and outgoing packets */
#ifndef UIP_CONF_EXTERNAL_BUFFER
@ -185,7 +193,10 @@ uint16_t uip_len, uip_slen;
/** @} */
/*---------------------------------------------------------------------------*/
/** @{ \name General variables */
/**
* \name General variables
* @{
*/
/*---------------------------------------------------------------------------*/
/* The uip_flags variable is used for communication between the TCP/IP stack
@ -209,7 +220,8 @@ static uint16_t lastport;
/*---------------------------------------------------------------------------*/
/* TCP */
/*---------------------------------------------------------------------------*/
/** \name TCP defines
/**
* \name TCP defines
*@{
*/
/* Structures and definitions. */
@ -227,7 +239,8 @@ static uint16_t lastport;
#define TCP_OPT_MSS_LEN 4 /* Length of TCP MSS option. */
/** @} */
/** \name TCP variables
/**
* \name TCP variables
*@{
*/
#if UIP_TCP
@ -248,7 +261,10 @@ static uint16_t tmp16;
/** @} */
/*---------------------------------------------------------------------------*/
/** @{ \name UDP variables */
/**
* \name UDP variables
* @{
*/
/*---------------------------------------------------------------------------*/
#if UIP_UDP
struct uip_udp_conn *uip_udp_conn;
@ -257,7 +273,10 @@ struct uip_udp_conn uip_udp_conns[UIP_UDP_CONNS];
/** @} */
/*---------------------------------------------------------------------------*/
/** @{ \name ICMPv6 variables */
/**
* \name ICMPv6 variables
* @{
*/
/*---------------------------------------------------------------------------*/
#if UIP_CONF_ICMP6
/** single possible icmpv6 "connection" */

View File

@ -64,12 +64,13 @@ uint32_t anti_replay_get_counter(void);
/**
* \brief Initializes the anti-replay information about the sender
* \param info Anti-replay information about the sender
*/
void anti_replay_init_info(struct anti_replay_info *info);
/**
* \brief Checks if received frame was replayed
* \param last_counters Anti-replay information about the sender
* \param info Anti-replay information about the sender
* \retval 0 <-> received frame was not replayed
*/
int anti_replay_was_replayed(struct anti_replay_info *info);

View File

@ -43,7 +43,7 @@
*/
/**
* \defgroup llsec802154
* \defgroup llsec802154 Link Layer Security Common Functionality
*
* Common functionality of 802.15.4-compliant llsec_drivers.
*

View File

@ -43,7 +43,7 @@
*/
/**
* \defgroup noncoresec
* \defgroup noncoresec LLSEC driver using a network-wide key (NONCORESEC)
*
* Noncompromise-resilient 802.15.4 security
*

View File

@ -43,7 +43,7 @@
*/
/**
* \defgroup nullsec
* \defgroup nullsec LLSEC driver with zero security (NULLSEC)
*
* Insecure link layer security driver.
*

View File

@ -44,7 +44,7 @@
*/
/**
* \addtogroup net 802.15.4 frame creation and parsing
* \addtogroup net
* @{
*/

View File

@ -49,7 +49,7 @@
* The abc module sends packets to all local area neighbors. The abc
* module adds no headers to outgoing packets.
*
* \section channels Channels
* \section abc-channels Channels
*
* The abc module uses 1 channel.
*

View File

@ -131,6 +131,7 @@ void announcement_remove(struct announcement *a);
* \brief Set the value of an announcement
* \param a A pointer to a struct announcement that has
* previously been registered
* \param value The new value
*
* This function sets the value of an announcement that
* has previously been registered with

View File

@ -50,7 +50,7 @@
* announcement. THe module announces the announcements that have been
* registered with the \ref rimeannouncement "announcement module".
*
* \section channels Channels
* \section bcast-announce-channels Channels
*
* The broadcast announcement module uses 1 channel.
*

View File

@ -56,7 +56,7 @@
* either directly or indirectly through any of the other
* communication primitives that are based on the broadcast primitive.
*
* \section channels Channels
* \section broadcast-channels Channels
*
* The broadcast module uses 1 channel.
*

View File

@ -49,7 +49,7 @@
* The collect module implements a hop-by-hop reliable data collection
* mechanism.
*
* \section channels Channels
* \section collect-channels Channels
*
* The collect module uses 2 channels; one for neighbor discovery and one
* for data packets.

View File

@ -84,7 +84,7 @@
* The polite broadcast module does not add any packet attributes to
* outgoing packets apart from those added by the upper layer.
*
* \section channels Channels
* \section ipolite-channels Channels
*
* The ipolite module uses 1 channel.
*

View File

@ -50,7 +50,7 @@
* receiver somewhere in the network.
*
*
* \section channels Channels
* \section mesh-channels Channels
*
* The mesh module uses 3 channel; one for the multi-hop forwarding
* (\ref rimemultihop "multihop") and two for the route disovery (\ref

View File

@ -61,7 +61,7 @@
* process.
*
*
* \section channels Channels
* \section multihop-channels Channels
*
* The multihop module uses 1 channel.
*

View File

@ -50,7 +50,7 @@
* discovery mechanism. A callback is invoked for every incoming
* neighbor discovery message.
*
* \section channels Channels
* \section neighbor-discovery-channels Channels
*
* The neighbor-discovery module uses 1 channel.
*

View File

@ -65,7 +65,7 @@
* If the time to live reaches zero, the primitive does not forward
* the packet.
*
* \section channels Channels
* \section netflood-channels Channels
*
* The netflood module uses 1 channel.
*

View File

@ -78,7 +78,7 @@ struct packetqueue {
* This structure holds the state of a packet queue. It is
* an opaque structure with no user-visible elements. The
* function packetqueue_queuebuf() is used to extract a
* \ref queuebuf "queubuf" from the item. The function
* "queubuf" from the item. The function
* packetqueue_ptr() is used to extract the opaque pointer
* that was registered with the
* packetqueue_enqueue_packetbuf() function.

View File

@ -50,7 +50,7 @@
* announcement. THe module announces the announcements that have been
* registered with the \ref rimeannouncement "announcement module".
*
* \section channels Channels
* \section polite-announcement-channels Channels
*
* The polite announcement module uses 1 channel.
*

View File

@ -84,7 +84,7 @@
* The polite broadcast module does not add any packet attributes to
* outgoing packets apart from those added by the upper layer.
*
* \section channels Channels
* \section polite-channels Channels
*
* The polite module uses 1 channel.
*

View File

@ -56,7 +56,7 @@
* reliable single-hop primitive for the communication between two
* single-hop neighbors.
*
* \section channels Channels
* \section rmh-channels Channels
*
* The rmh module uses 1 channel.
*

View File

@ -48,7 +48,7 @@
*
* The route-discovery module does route discovery for Rime.
*
* \section channels Channels
* \section route-discovery-channels Channels
*
* The ibc module uses 2 channels; one for the flooded route request
* packets and one for the unicast route replies.

View File

@ -49,7 +49,7 @@
* The rudolph0 module implements a single-hop reliable bulk data
* transfer mechanism.
*
* \section channels Channels
* \section rudolph0-channels Channels
*
* The rudolph0 module uses 2 channels; one for data packets and one
* for NACK and repair packets.

View File

@ -49,7 +49,7 @@
* The rudolph1 module implements a multi-hop reliable bulk data
* transfer mechanism.
*
* \section channels Channels
* \section rudolph1-channels Channels
*
* The rudolph1 module uses 2 channels; one for data transmissions and
* one for NACKs and repair packets.

View File

@ -49,7 +49,7 @@
* The rudolph2 module implements a single-hop reliable bulk data
* transfer mechanism.
*
* \section channels Channels
* \section rudolph2-channels Channels
*
* The rudolph2 module uses 2 channels; one for data packets and one
* for NACK and repair packets.

View File

@ -69,7 +69,7 @@
* callback.
*
*
* \section channels Channels
* \section runicast-channels Channels
*
* The runicast module uses 1 channel.
*

View File

@ -51,7 +51,7 @@
* either the message is canceled or a new message is sent. Messages
* sent with the stbroadcast module are not identified with a sender ID.
*
* \section channels Channels
* \section stbroadcast-channels Channels
*
* The stbroadcast module uses 1 channel.
*

View File

@ -63,7 +63,7 @@
* number of retransmissions for a packet as a packet attribute on
* outgoing packets.
*
* \section channels Channels
* \section stunicast-channels Channels
*
* The stunicast module uses 1 channel.
*

View File

@ -48,7 +48,7 @@
*
* The trickle module sends a single packet to all nodes on the network.
*
* \section channels Channels
* \section trickle-channels Channels
*
* The trickle module uses 1 channel.
*

View File

@ -53,7 +53,7 @@
* single-hop receiver address attribute and discards the packet if
* the address does not match the address of the node.
*
* \section channels Channels
* \section unicast-channels Channels
*
* The unicast module uses 1 channel.
*

View File

@ -133,7 +133,7 @@
* strings.
*
* We need use two macros (CC_CONCAT and CC_CONCAT2) in order to allow
* concatenation of two #defined macros.
* concatenation of two \#defined macros.
*/
#define CC_CONCAT(s1, s2) CC_CONCAT2(s1, s2)

View File

@ -57,7 +57,7 @@
*
* \note The clock library need in many cases not be used
* directly. Rather, the \ref timer "timer library", \ref etimer
* "event timers", or \ref trimer "rtimer library" should be used.
* "event timers", or \ref rtimer "rtimer library" should be used.
*
* \sa \ref timer "Timer library"
* \sa \ref etimer "Event timers"

View File

@ -105,7 +105,7 @@ struct dsc {
*
* \param prgname The name of the program on disk.
*
* \param initfunc A pointer to the initialization function of the
* \param process A pointer to the initialization function of the
* program.
*
* \param icon A pointer to the CTK icon.

View File

@ -267,7 +267,7 @@ do_event(void)
receiver = events[fevent].p;
/* Since we have seen the new event, we move pointer upwards
and decrese the number of events. */
and decrease the number of events. */
fevent = (fevent + 1) % PROCESS_CONF_NUMEVENTS;
--nevents;
@ -337,7 +337,7 @@ process_post(struct process *p, process_event_t ev, process_data_t data)
if(p == PROCESS_BROADCAST) {
printf("soft panic: event queue is full when broadcast event %d was posted from %s\n", ev, PROCESS_NAME_STRING(process_current));
} else {
printf("soft panic: event queue is full when event %d was posted to %s frpm %s\n", ev, PROCESS_NAME_STRING(p), PROCESS_NAME_STRING(process_current));
printf("soft panic: event queue is full when event %d was posted to %s from %s\n", ev, PROCESS_NAME_STRING(p), PROCESS_NAME_STRING(process_current));
}
#endif /* DEBUG */
return PROCESS_ERR_FULL;

View File

@ -335,7 +335,7 @@ struct process {
*
* \param p A pointer to a process structure.
*
* \param arg An argument pointer that can be passed to the new
* \param data An argument pointer that can be passed to the new
* process
*
*/

View File

@ -159,7 +159,7 @@ clock_set_seconds(unsigned long sec)
seconds = sec;
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a number of clock ticks.
*/
void
@ -175,7 +175,7 @@ clock_wait(clock_time_t t)
}
}
/*---------------------------------------------------------------------------*/
/**
/*
* Delay the CPU for up to 65535*(4000000/F_CPU) microseconds.
* Copied from _delay_loop_2 in AVR library delay_basic.h, 4 clocks per loop.
* For accurate short delays, inline _delay_loop_2 in the caller, use a constant
@ -193,44 +193,44 @@ my_delay_loop_2(uint16_t __count)
);
}
void
clock_delay_usec(uint16_t howlong)
clock_delay_usec(uint16_t dt)
{
#if 0
/* Accurate delay at any frequency, but introduces a 64 bit intermediate
* and has a 279 clock overhead.
*/
if(howlong<=(uint16_t)(279000000UL/F_CPU)) return;
howlong-=(uint16_t) (279000000UL/F_CPU);
my_delay_loop_2(((uint64_t)(howlong) * (uint64_t) F_CPU) / 4000000ULL);
if(dt<=(uint16_t)(279000000UL/F_CPU)) return;
dt-=(uint16_t) (279000000UL/F_CPU);
my_delay_loop_2(((uint64_t)(dt) * (uint64_t) F_CPU) / 4000000ULL);
/* Remaining numbers tweaked for the breakpoint CPU frequencies */
/* Add other frequencies as necessary */
#elif F_CPU>=16000000UL
if(howlong<1) return;
my_delay_loop_2((howlong*(uint16_t)(F_CPU/3250000)));
if(dt<1) return;
my_delay_loop_2((dt*(uint16_t)(F_CPU/3250000)));
#elif F_CPU >= 12000000UL
if(howlong<2) return;
howlong-=(uint16_t) (3*12000000/F_CPU);
my_delay_loop_2((howlong*(uint16_t)(F_CPU/3250000)));
if(dt<2) return;
dt-=(uint16_t) (3*12000000/F_CPU);
my_delay_loop_2((dt*(uint16_t)(F_CPU/3250000)));
#elif F_CPU >= 8000000UL
if(howlong<4) return;
howlong-=(uint16_t) (3*8000000/F_CPU);
my_delay_loop_2((howlong*(uint16_t)(F_CPU/2000000))/2);
if(dt<4) return;
dt-=(uint16_t) (3*8000000/F_CPU);
my_delay_loop_2((dt*(uint16_t)(F_CPU/2000000))/2);
#elif F_CPU >= 4000000UL
if(howlong<5) return;
howlong-=(uint16_t) (4*4000000/F_CPU);
my_delay_loop_2((howlong*(uint16_t)(F_CPU/2000000))/2);
if(dt<5) return;
dt-=(uint16_t) (4*4000000/F_CPU);
my_delay_loop_2((dt*(uint16_t)(F_CPU/2000000))/2);
#elif F_CPU >= 2000000UL
if(howlong<11) return;
howlong-=(uint16_t) (10*2000000/F_CPU);
my_delay_loop_2((howlong*(uint16_t)(F_CPU/1000000))/4);
if(dt<11) return;
dt-=(uint16_t) (10*2000000/F_CPU);
my_delay_loop_2((dt*(uint16_t)(F_CPU/1000000))/4);
#elif F_CPU >= 1000000UL
if(howlong<=17) return;
howlong-=(uint16_t) (17*1000000/F_CPU);
my_delay_loop_2((howlong*(uint16_t)(F_CPU/1000000))/4);
if(dt<=17) return;
dt-=(uint16_t) (17*1000000/F_CPU);
my_delay_loop_2((dt*(uint16_t)(F_CPU/1000000))/4);
#else
howlong >> 5;
if (howlong < 1) return;
my_delay_loop_2(howlong);
dt >> 5;
if (dt < 1) return;
my_delay_loop_2(dt);
#endif
}
#if 0
@ -250,7 +250,7 @@ clock_delay(unsigned int howlong)
/*---------------------------------------------------------------------------*/
/**
* Delay up to 65535 milliseconds.
* \param dt How many milliseconds to delay.
* \param howlong How many milliseconds to delay.
*
* Neither interrupts nor the watchdog timer is disabled over the delay.
* Platforms are not required to implement this call.
@ -279,7 +279,7 @@ clock_delay_msec(uint16_t howlong)
/*---------------------------------------------------------------------------*/
/**
* Adjust the system current clock time.
* \param dt How many ticks to add
* \param howmany How many ticks to add
*
* Typically used to add ticks after an MCU sleep
* clock_seconds will increment if necessary to reflect the tick addition.

View File

@ -54,7 +54,7 @@ static unsigned long timer_value;
static volatile CC_AT_DATA clock_time_t count = 0; /* Uptime in ticks */
static volatile CC_AT_DATA clock_time_t seconds = 0; /* Uptime in secs */
/*---------------------------------------------------------------------------*/
/**
/*
* Each iteration is ~1.0xy usec, so this function delays for roughly len usec
*/
void
@ -68,7 +68,7 @@ clock_delay_usec(uint16_t len)
ENABLE_INTERRUPTS();
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of ~8 ms (a tick)
*/
void

View File

@ -136,16 +136,15 @@ clock_wait(clock_time_t i)
while(clock_time() - start < (clock_time_t)i);
}
/*---------------------------------------------------------------------------*/
/**
* \brief Arch-specific implementation of clock_delay_usec for the cc2538
* \param len Delay \e len uSecs
/*
* Arch-specific implementation of clock_delay_usec for the cc2538
*
* See clock_init() for GPT0 Timer A's configuration
*/
void
clock_delay_usec(uint16_t len)
clock_delay_usec(uint16_t dt)
{
REG(GPT_0_BASE | GPTIMER_TAILR) = len;
REG(GPT_0_BASE | GPTIMER_TAILR) = dt;
REG(GPT_0_BASE | GPTIMER_CTL) |= GPTIMER_CTL_TAEN;
/* One-Shot mode: TAEN will be cleared when the timer reaches 0 */

View File

@ -70,7 +70,7 @@ clock_delay_usec(uint16_t len)
ENABLE_INTERRUPTS();
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of ~8 ms (a tick)
*/
void

View File

@ -97,7 +97,7 @@ clock_wait(clock_time_t t)
while ((signed long)(current_clock - endticks) < 0) {;}
}
/*---------------------------------------------------------------------------*/
/**
/*
* Delay the CPU for up to 65535 microseconds.
* Use the 250KHz MACA clock for longer delays to avoid interrupt effects.
* However that can't be used if the radio is being power cycled!
@ -118,7 +118,7 @@ clock_delay_usec(uint16_t howlong)
while(--i);
}
/*---------------------------------------------------------------------------*/
/**
/*
* Delay the CPU for up to 65535 milliseconds. The watchdog is NOT disabled.
*/
void
@ -127,7 +127,7 @@ clock_delay_msec(uint16_t howlong)
while(howlong--) clock_delay_usec(1000);
}
/*---------------------------------------------------------------------------*/
/**
/*
* Legacy delay. The original clock_delay for the msp430 used a granularity
* of 2.83 usec. This approximates that delay for values up to 1456 usec.
* (The largest core call in leds.c uses 400).
@ -139,7 +139,7 @@ clock_delay(unsigned int howlong)
clock_delay_usec((283*howlong)/100);
}
/*---------------------------------------------------------------------------*/
/**
/*
* Adjust clock ticks after a cpu sleep.
*/
void clock_adjust_ticks(clock_time_t howmany) {

View File

@ -195,7 +195,7 @@ clock_delay(unsigned int i)
}
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of 10 ms.
*
*/

View File

@ -192,7 +192,7 @@ clock_delay(unsigned int i)
}
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of 10 ms.
*
*/

View File

@ -113,7 +113,7 @@ clock_delay(unsigned int i)
}
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of 1 ms.
*/
void

File diff suppressed because it is too large Load Diff

View File

@ -1,8 +1,6 @@
/**
\defgroup buildsystem The Contiki build system
.
The Contiki build system is designed to make it easy to compile
Contiki applications for either to a hardware platform or into a
simulation platform by simply supplying different parameters to the
@ -18,18 +16,15 @@
builds an entire Contiki system as a program that runs on the
development system. After compiling the application for the
<tt>native</tt> target it is possible to run the Contiki system with
the application by running the file <tt>hello-world.native</tt>. To
compile the application and a Contiki system for the \ref esb "ESB
platform" the command <tt>make TARGET=esb</tt> is used. This produces
a hello-world.esb file that can be loaded into an ESB board.
the application by running the file <tt>hello-world.native</tt>.
To compile the hello-world application into a stand-alone executable
that can be loaded into a running Contiki system, the command
<tt>make hello-world.ce</tt> is used. To build an executable file for
the ESB platform, <tt>make TARGET=esb hello-world.ce</tt> is run.
the Sky platform, <tt>make TARGET=sky hello-world.sky</tt> is run.
To avoid having to type <tt>TARGET=</tt> every time <tt>make</tt> is
run, it is possible to run <tt>make TARGET=esb savetarget</tt> to
run, it is possible to run <tt>make TARGET=sky savetarget</tt> to
save the selected target as the default target platform for
subsequent invocations of <tt>make</tt>. A file called
<tt>Makefile.target</tt> containing the currently saved target is

View File

@ -93,8 +93,6 @@ Contiki is designed to run on many different \ref platform "platforms". It is al
possible to compile and build both the Contiki system and Contiki
applications on many different development platforms.
See \ref esb-getting-started "Getting started with Contiki for the ESB platform
\section contiki-mainpage-building Building the Contiki system and its applications
The Contiki build system is designed to make it easy to compile

View File

@ -11,18 +11,18 @@ support on Atmel RAVEN hardware.
\section toc Table of contents
\ref introduction<br>
\ref hardware<br>
\ref software<br>
\ref overview<br>
\ref installation<br>
\ref running<br>
\ref advanced<br>
\ref issues<br>
\ref annex<br>
\ref tutorial-raven-introduction <br>
\ref hardware <br>
\ref software <br>
\ref overview <br>
\ref installation <br>
\ref running <br>
\ref advanced <br>
\ref issues <br>
\ref annex <br>
<HR>
\section introduction Introduction
\section tutorial-raven-introduction Introduction
This tutorial explains how to run Contiki with IPv6 and 6lowpan
support on Atmel RAVEN evaluation kit (ATAVRRZRAVEN) hardware. We
present basic example system architecture and application scenarios,
@ -419,7 +419,7 @@ is the one to the file you just modified and click on "Program".
The third is to modify the default value in the code:
\li Edit the file contiki-raven-main.c in the directory
platform\avr-raven. You will see the MAC address set in a line like:
platform\\avr-raven. You will see the MAC address set in a line like:
\code
/* Put default MAC address in EEPROM */

View File

@ -66,7 +66,7 @@ This part of the code is very similar to the \ref ipreass "IPv4 fragmentation co
is not assumed to be a TCP packet. As a result, we use a different
%timer to time-out reassembly if all fragments have not been received
after #UIP_REASS_MAXAGE = 60s.
\note Fragment reassembly is enabled if #UIP_CONF_REASSEMBLY is set to 1.
\note Fragment reassembly is enabled if #UIP_REASSEMBLY is set to 1.
\note We can only reassemble packet of at most #UIP_LINK_MTU = 1280
bytes as we do not have larger buffers.
@ -81,9 +81,9 @@ typedef union uip_ip6addr_t {
\endcode
We assume that each node has a <em>single interface</em> of type
#uip_netif.
#uip_ds6_netif_t.
Each interface can have up to #UIP_NETIF_MAX_ADDRESSES unicast IPv6
Each interface can have a configurable number of unicast IPv6
addresses including its link-local address. It also has a
solicited-node multicast address. We assume that the unicast
addresses are obtained via \ref autoconf "stateless address autoconfiguration"
@ -377,5 +377,7 @@ We pass all the tests for phase 2 except:
<HR>
@{
*/
/** @} */
/** @} */

View File

@ -85,7 +85,7 @@ void rs232_set_speed(unsigned char speed);
/**
* \brief Print a text string on RS232
* \param str A pointer to the string that is to be printed
* \param text A pointer to the string that is to be printed
*
* This function prints a string to RS232. The string must
* be terminated by a null byte. The RS232 module must be

View File

@ -222,7 +222,7 @@ __delay_cycles(unsigned long c)
}
#endif /* __GNUC__ */
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of 10 ms.
*
*/

View File

@ -126,7 +126,7 @@ void clock_delay(unsigned int i)
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of 1 ms.
*
*/

View File

@ -129,7 +129,7 @@ clock_delay(unsigned int i)
}
/*---------------------------------------------------------------------------*/
/**
/*
* Wait for a multiple of 1 / 128 sec = 7.8125 ms.
*
*/

View File

@ -1 +1 @@
380
291