/* * Copyright (c) 2010, STMicroelectronics. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following * disclaimer in the documentation and/or other materials provided * with the distribution. * 3. The name of the author may not be used to endorse or promote * products derived from this software without specific prior * written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * This file is part of the Contiki OS * * $Id: contiki-conf.h,v 1.2 2010/10/27 14:05:24 salvopitru Exp $ */ /*---------------------------------------------------------------------------*/ /** * \file * contiki-conf.h for MB851. * \author * Salvatore Pitrulli * Chi-Anh La * Simon Duquennoy */ /*---------------------------------------------------------------------------*/ #ifndef __CONTIKI_CONF_H__ #define __CONTIKI_CONF_H__ #include PLATFORM_HEADER #include #include // For memcpm(). #define CC_CONF_REGISTER_ARGS 0 #define CC_CONF_FUNCTION_POINTER_ARGS 1 #define CC_CONF_FASTCALL #define CC_CONF_VA_ARGS 1 #define CC_CONF_INLINE inline #define CCIF #define CLIF /* These names are deprecated, use C99 names. */ typedef uint8_t u8_t; typedef uint16_t u16_t; typedef uint32_t u32_t; typedef int32_t s32_t; typedef unsigned short uip_stats_t; //#define FIXED_NET_ADDRESS 1 //#define NET_ADDR_A 0x2001 //#define NET_ADDR_B 0xdb8 //#define NET_ADDR_C 0xbbbb //#define NET_ADDR_D 0xabcd #define UART1_CONF_TX_WITH_INTERRUPT 0 #define WITH_SERIAL_LINE_INPUT 1 #define ENERGEST_CONF_ON 0 #define TELNETD_CONF_NUMLINES 6 #define QUEUEBUF_CONF_NUM 2 #define NETSTACK_CONF_RADIO stm32w_radio_driver #if WITH_UIP6 #define NETSTACK_CONF_RDC_ENABLED 0 #if NETSTACK_CONF_RDC_ENABLED /* With radio cycling */ /* RDC params */ /* rtimer_second = 11719 */ #define RT_CONF_RESOLUTION 2 /* TX routine passes the cca/ack result in the return parameter */ #define RDC_CONF_HARDWARE_ACK 1 /* TX routine does automatic cca and optional backoff */ #define RDC_CONF_HARDWARE_CSMA 0 /* Channel check rate (per second) */ #define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8 /* Use ACK for optimization (LPP, XMAC) */ #define WITH_ACK_OPTIMIZATION 0 /* RDC debug with LED */ #define RDC_CONF_DEBUG_LED 1 /* ContikiMAC config */ #define SICSLOWPAN_CONF_COMPRESSION_THRESHOLD 63 #define CONTIKIMAC_CONF_WITH_CONTIKIMAC_HEADER 0 #define CONTIKIMAC_CONF_COMPOWER 1 #define CONTIKIMAC_CONF_BROADCAST_RATE_LIMIT 0 #define CONTIKIMAC_CONF_ANNOUNCEMENTS 0 /* CXMAC config */ #define CXMAC_CONF_ANNOUNCEMENTS 0 #define CXMAC_CONF_COMPOWER 1 /* XMAC config */ #define XMAC_CONF_ANNOUNCEMENTS 0 #define XMAC_CONF_COMPOWER 1 /* Netstacks */ #define NETSTACK_CONF_NETWORK sicslowpan_driver #define NETSTACK_CONF_MAC csma_driver #define NETSTACK_CONF_RDC contikimac_driver #define NETSTACK_CONF_FRAMER framer_802154 #else /* No radio cycling */ #define NETSTACK_CONF_NETWORK sicslowpan_driver #define NETSTACK_CONF_MAC nullmac_driver #define NETSTACK_CONF_RDC sicslowmac_driver #define NETSTACK_CONF_FRAMER framer_802154 #endif #define RIMEADDR_CONF_SIZE 8 #define UIP_CONF_LL_802154 1 #define UIP_CONF_ROUTER 1 #define UIP_CONF_IPV6_RPL 1 #define UIP_CONF_ND6_SEND_RA 0 //#define RPL_BORDER_ROUTER 0 #define RPL_CONF_MAX_DODAG_PER_INSTANCE 1 /* A trick to resolve a compilation error with IAR. */ #ifdef __ICCARM__ #define UIP_CONF_DS6_AADDR_NBU 1 #endif #define UIP_CONF_IPV6 1 #define UIP_CONF_IPV6_QUEUE_PKT 0 // This is a very costly feature as it increases the RAM usage by approximately UIP_ND6_MAX_NEIGHBORS * UIP_LINK_MTU bytes. #define UIP_CONF_IPV6_CHECKS 1 #define UIP_CONF_IPV6_REASSEMBLY 0 #define UIP_CONF_ND6_MAX_PREFIXES 2 #define UIP_CONF_ND6_MAX_NEIGHBORS 2 #define UIP_CONF_ND6_MAX_DEFROUTERS 1 #define UIP_CONF_IP_FORWARD 0 #define UIP_CONF_BUFFER_SIZE 140 #define UIP_CONF_MAX_CONNECTIONS 6 #define UIP_CONF_MAX_LISTENPORTS 6 #define UIP_CONF_UDP_CONNS 3 #define SICSLOWPAN_CONF_COMPRESSION_IPV6 0 #define SICSLOWPAN_CONF_COMPRESSION_HC1 1 #define SICSLOWPAN_CONF_COMPRESSION_HC06 2 #define SICSLOWPAN_CONF_COMPRESSION SICSLOWPAN_CONF_COMPRESSION_HC06 #define SICSLOWPAN_CONF_FRAG 1 #define SICSLOWPAN_CONF_MAX_ADDR_CONTEXTS 2 #define SICSLOWPAN_CONF_MAXAGE 2 #define UIP_CONF_ICMP6 0 #endif /* WITH_UIP6 */ #define UIP_CONF_UDP 1 #define UIP_CONF_TCP 1 #define IEEE802154_CONF_PANID 0x1234 #define STM32W_NODE_ID 0x5678 // to be deleted #define RF_CHANNEL 16 #define RADIO_RXBUFS 2 // Set to a number greater than 1 to decrease packet loss probability at high rates (e.g, with fragmented packets) #define UIP_CONF_LLH_LEN 0 typedef unsigned long clock_time_t; #define CLOCK_CONF_SECOND 1000 typedef unsigned long long rtimer_clock_t; #define RTIMER_CLOCK_LT(a,b) ((signed short)((a)-(b)) < 0) /* LEDs ports MB851 */ #define LEDS_CONF_RED_PIN 5 #define LEDS_CONF_GREEN_PIN 6 #define LEDS_CONF_PORT PORTB #define LEDS_CONF_RED (1<