+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \version $Id$
- *
- * \author Francesco Sacchi <batt@develer.com>
- * \author Daniele Basile <asterix@develer.com>
- *
- * \brief Simple BeRTOS test on AT91SAM7X-EK evaluation board.
- *
- * This short program shows you a simple demo of some BeRTOS feature:
- *
- * - Debug system
- * - Timer interrupt
- * - Serial
- * - Cooperative BeRTOS Kernel
- *
- */
-
-#include "cfg/cfg_ser.h"
-#include <cfg/macros.h>
-
-#include <kern/proc.h>
-#include <kern/signal.h>
-
-#include <cpu/detect.h>
-
-#include <drv/timer.h>
-#include <drv/sysirq_at91.h>
-#include <drv/ser.h>
-
-#include <io/arm.h>
-
-Timer leds_timer;
-Serial ser_fd;
-
-enum
-{
- FORWARD,
- BACKWARD,
-};
-
-int direction = FORWARD;
-
-static void leds_init(void)
-{
- #if CPU_ARM_AT91SAM7X256
- /* Set PB19..22 connected to PIOB */
- PIOB_PER = 0x780000;
- /* Set PB19..22 as output */
- PIOB_OER = 0x780000;
-
- /* Set PB19..22 to 1 to turn off leds */
- PIOB_SODR = 0x780000;
-
- /* turn first led on (PB19) */
- PIOB_CODR = 0x80000;
- #elif CPU_ARM_AT91SAM7S256
- /* Set PA0..3 connected to PIOA */
- PIOA_PER = 0x0000001f;
- /* Set PA0..3 as output */
- PIOA_OER = 0x0000001f;
-
- /* Set PA0..3 to 1 to turn off leds */
- PIOA_SODR = 0x0000000f;
- /* turn first led on (PA0) */
- PIOA_CODR = 0x00000001;
- #endif
-}
-
-#if CPU_ARM_AT91SAM7X256
- #define GET_PIO_STATUS() (~PIOB_ODSR & 0x780000)
- #define LAST_LED 0x200000
- #define FIRST_LED 0x100000
- #define SET_PIO_BITS PIOB_SODR
- #define CLEAR_PIO_BITS PIOB_CODR
- #define AT91SAM7_MSG "BeRTOS is running on AT91SAM7X256..\n"
-#elif CPU_ARM_AT91SAM7S256
- #define GET_PIO_STATUS() (~PIOA_ODSR & 0x0000000f)
- #define LAST_LED 0x00000004
- #define FIRST_LED 0x00000002
- #define SET_PIO_BITS PIOA_SODR
- #define CLEAR_PIO_BITS PIOA_CODR
- #define AT91SAM7_MSG "BeRTOS is running on AT91SAM7S256..\n"
-#endif
-
-/*
- * Knight Rider leds effect..
- */
-static void leds_toggle(void)
-{
- uint32_t led_status = GET_PIO_STATUS();
-
- // Turn on led in forward direction
- if (direction == FORWARD)
- {
- if(led_status == LAST_LED)
- direction = BACKWARD;
-
- SET_PIO_BITS = led_status;
- CLEAR_PIO_BITS = led_status << 1;
- }
- // Turn on led in backward direction
- else if (direction == BACKWARD)
- {
- if(led_status == FIRST_LED)
- direction = FORWARD;
-
- SET_PIO_BITS = led_status;
- CLEAR_PIO_BITS = led_status >> 1;
- }
-
- /* Wait for interval time */
- timer_setDelay(&leds_timer, ms_to_ticks(100));
- timer_add(&leds_timer);
-}
-
-int main(void)
-{ char msg[]="BeRTOS, be fast be beatiful be realtime";
-
-
- kdbg_init();
- timer_init();
- proc_init();
- leds_init();
-
- ASSERT(!IRQ_ENABLED());
-
- /* Open the main communication port */
- ser_init(&ser_fd, 0);
- ser_setbaudrate(&ser_fd, 115200);
- ser_setparity(&ser_fd, SER_PARITY_NONE);
-
- IRQ_ENABLE;
- ASSERT(IRQ_ENABLED());
-
- /*
- * Register timer and arm timer interupt.
- */
- timer_setSoftint(&leds_timer, (Hook)leds_toggle, 0);
- timer_setDelay(&leds_timer, ms_to_ticks(100));
- timer_add(&leds_timer);
-
- /*
- * Run process test.
- */
- if(!proc_testRun())
- kfile_printf(&ser_fd.fd, "ProcTest..ok!\n");
- else
- kfile_printf(&ser_fd.fd, "ProcTest..FAIL!\n");
- /*
- * Run signal test.
- */
- if(!signal_testRun())
- kfile_printf(&ser_fd.fd, "SignalTest..ok!\n");
- else
- kfile_printf(&ser_fd.fd, "SignalTest..FAIL!\n");
-
- kputs(AT91SAM7_MSG);
-
- // Main loop
- for(;;)
- {
- kfile_printf(&ser_fd.fd, "From serial 0: %s\r\n", msg);
- }
- return 0;
-}
+++ /dev/null
-#
-# $Id: at91sam7s.mk 18234 2007-10-08 13:39:48Z rasky $
-# Copyright 2006 Develer S.r.l. (http://www.develer.com/)
-# All rights reserved.
-#
-# Makefile fragment for DevLib at91sam7s application.
-#
-# Author: Bernie Innocenti <bernie@codewiz.org>
-#
-#
-
-# Set to 1 for debug builds
-at91sam7s_DEBUG = 1
-
-# Our target application
-TRG += at91sam7s
-
-at91sam7s_CSRC = \
- examples/at91sam7/at91sam7.c \
- bertos/drv/timer.c \
- bertos/drv/ser.c \
- bertos/cpu/arm/drv/sysirq_at91.c \
- bertos/cpu/arm/drv/ser_at91.c \
- bertos/cpu/arm/drv/timer_at91.c \
- bertos/mware/event.c \
- bertos/mware/formatwr.c \
- bertos/mware/hex.c \
- bertos/mware/sprintf.c \
- bertos/kern/kfile.c \
- bertos/kern/proc.c \
- bertos/kern/proc_test.c \
- bertos/kern/signal_test.c \
- bertos/kern/monitor.c \
- bertos/kern/signal.c \
- #
-
-at91sam7s_CPPASRC = \
- bertos/cpu/arm/hw/crtat91sam7_rom.S \
- bertos/cpu/arm/hw/switch_ctx_arm.S \
- #
-
-at91sam7s_PREFIX = arm-none-eabi-
-
-at91sam7s_CPPAFLAGS = -O0 -g -gdwarf-2 -g
-at91sam7s_CPPFLAGS = -O0 -D'ARCH=0' -D__ARM_AT91SAM7S256__ -D'CPU_FREQ=(48023000UL)' -D'WIZ_AUTOGEN' -g3 -gdwarf-2 -fverbose-asm -Iexamples/at91sam7 -Ibertos/cpu/arm
-at91sam7s_LDFLAGS = -nostartfiles -T bertos/cpu/arm/scripts/at91sam7_256_rom.ld -Wl,--no-warn-mismatch
-at91sam7s_CPU = arm7tdmi
-
-at91sam7s_PROGRAMMER_CPU = at91sam7
-at91sam7s_PROGRAMMER_TYPE = jtag-tiny
-at91sam7s_FLASH_SCRIPT = bertos/prg_scripts/arm/flash.sh
-at91sam7s_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-at91sam7s_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh
-at91sam7s_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
+++ /dev/null
-#
-# $Id: at91sam7x.mk 18234 2007-10-08 13:39:48Z rasky $
-# Copyright 2006 Develer S.r.l. (http://www.develer.com/)
-# All rights reserved.
-#
-# Makefile fragment for DevLib at91sam7x application.
-#
-# Author: Bernie Innocenti <bernie@codewiz.org>
-#
-#
-
-# Set to 1 for debug builds
-at91sam7x_DEBUG = 1
-
-# Our target application
-TRG += at91sam7x
-
-at91sam7x_CSRC = \
- examples/at91sam7/at91sam7.c \
- bertos/drv/timer.c \
- bertos/drv/ser.c \
- bertos/cpu/arm/drv/sysirq_at91.c \
- bertos/cpu/arm/drv/ser_at91.c \
- bertos/cpu/arm/drv/timer_at91.c \
- bertos/mware/event.c \
- bertos/mware/formatwr.c \
- bertos/mware/hex.c \
- bertos/mware/sprintf.c \
- bertos/struct/heap.c \
- bertos/kern/kfile.c \
- bertos/kern/proc.c \
- bertos/kern/proc_test.c \
- bertos/kern/signal_test.c \
- bertos/kern/monitor.c \
- bertos/kern/signal.c \
- #
-
-at91sam7x_CPPASRC = \
- bertos/cpu/arm/hw/crtat91sam7_rom.S \
- bertos/cpu/arm/hw/switch_ctx_arm.S \
- #
-
-at91sam7x_PREFIX = arm-none-eabi-
-
-at91sam7x_CPPAFLAGS = -O0 -g -gdwarf-2 -g
-at91sam7x_CPPFLAGS = -O0 -D'ARCH=0' -D__ARM_AT91SAM7X256__ -D'CPU_FREQ=(48023000UL)' -D'WIZ_AUTOGEN' -g3 -gdwarf-2 -fverbose-asm -Iexamples/at91sam7 -Ibertos/cpu/arm -fno-strict-aliasing -fwrapv
-at91sam7x_LDFLAGS = -nostartfiles -T bertos/cpu/arm/scripts/at91sam7_256_rom.ld -Wl,--no-warn-mismatch
-
-at91sam7x_CPU = arm7tdmi
-
-at91sam7x_PROGRAMMER_CPU = at91sam7
-at91sam7x_PROGRAMMER_TYPE = jtag-tiny
-at91sam7x_FLASH_SCRIPT = bertos/prg_scripts/arm/flash.sh
-at91sam7x_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-at91sam7x_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh
-at91sam7x_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel monitor configuration parameters
- *
- * \version $Id$
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_MONITOR_H
-#define CFG_MONITOR_H
-
-/**
- * Process monitor.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_MONITOR 1
-
-#endif /* CFG_MONITOR_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel configuration parameters
- *
- * \version $Id$
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_PROC_H
-#define CFG_PROC_H
-
-/**
- * Enable the multithreading kernel.
- *
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN 1
-
-/**
- * Kernel interrupt supervisor. WARNING: Experimental, still incomplete!
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_KERN_IRQ 0
-
-/**
- * Dynamic memory allocation for processes.
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "heap"
- */
-#define CONFIG_KERN_HEAP 0
-
-/**
- * Size of the dynamic memory pool used by processes.
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define CONFIG_KERN_HEAP_SIZE 16384L
-
-/**
- * Preemptive process scheduling.
- *
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "timer"
- */
-#define CONFIG_KERN_PREEMPT 1
-
-/**
- * Priority-based scheduling policy.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PRI 1
-
-/**
- * Time sharing quantum (a prime number prevents interference effects) [ms].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_KERN_QUANTUM 11
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KERN_LOG_LEVEL LOG_LVL_ERR
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KERN_LOG_FORMAT LOG_FMT_VERBOSE
-
-#endif /* CFG_PROC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel semaphores configuration parameters.
- *
- * \version $Id$
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SEM_H
-#define CFG_SEM_H
-
-/**
- * Re-entrant mutual exclusion primitives.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SEMAPHORES 1
-
-#endif /* CFG_SEM_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for serial module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_SER_H
-#define CFG_SER_H
-
-/**
- * Example of setting for serial port and
- * spi port.
- * Edit these define for your project.
- */
-
-/// [bytes] Size of the outbound FIFO buffer for port 0.
-#define CONFIG_UART0_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for port 0.
-#define CONFIG_UART0_RXBUFSIZE 32
-
-/// [bytes] Size of the outbound FIFO buffer for port 1.
-#define CONFIG_UART1_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for port 1.
-#define CONFIG_UART1_RXBUFSIZE 32
-
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port (AVR only)
-#define CONFIG_SPI_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port (AVR only)
-#define CONFIG_SPI_RXBUFSIZE 32
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port 0.
-#define CONFIG_SPI0_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port 0.
-#define CONFIG_SPI0_RXBUFSIZE 32
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port 1.
-#define CONFIG_SPI1_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port 1.
-#define CONFIG_SPI1_RXBUFSIZE 32
-
-/// SPI data order (AVR only).
-#define CONFIG_SPI_DATA_ORDER SER_MSB_FIRST
-
-/// SPI clock division factor (AVR only).
-#define CONFIG_SPI_CLOCK_DIV 16
-
-/// SPI clock polarity: 0 = normal low, 1 = normal high (AVR only).
-#define CONFIG_SPI_CLOCK_POL 0
-
-/// SPI clock phase: 0 = sample on first edge, 1 = sample on second clock edge (AVR only).
-#define CONFIG_SPI_CLOCK_PHASE 0
-
-/// Default transmit timeout (ms). Set to -1 to disable timeout support.
-#define CONFIG_SER_TXTIMEOUT -1
-
-/// Default receive timeout (ms). Set to -1 to disable timeout support.
-#define CONFIG_SER_RXTIMEOUT -1
-
-/// Use RTS/CTS handshake
-#define CONFIG_SER_HWHANDSHAKE 0
-
-/// Default baud rate (set to 0 to disable).
-#define CONFIG_SER_DEFBAUDRATE 0
-
-/// For serial debug.
-#define CONFIG_SER_STROBE 0
-
-#endif /* CFG_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel signals configuration parameters
- *
- * \version $Id$
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SIGNAL_H
-#define CFG_SIGNAL_H
-
-/**
- * Inter-process signals.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SIGNALS 1
-
-#endif /* CFG_SIGNAL_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for timer module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_TIMER_H
-#define CFG_TIMER_H
-
-/// Hardware timer selection for drv/timer.c
-#define CONFIG_TIMER TIMER_DEFAULT
-
-/// Debug timer interrupt using a strobe pin.
-#define CONFIG_TIMER_STROBE 0
-
-/// Enable asynchronous timers
-#define CONFIG_TIMER_EVENTS 1
-
-/// Support hi-res timer_usleep()
-#define CONFIG_TIMER_UDELAY 1
-
-#endif /* CFG_TIMER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Serial hardware-specific definitions
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2005, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2001, 2002, 2003 by Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \version $Id$
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- *
- * \brief Declare application version strings
- */
-#ifndef DEVLIB_VERSTAG_H
-#define DEVLIB_VERSTAG_H
-
-#ifndef ARCH_CONFIG_H
- #include "cfg/arch_config.h"
-#endif
-
-#define APP_NAME "AT91SAM7S-EK porting test"
-#define APP_DESCRIPTION "AT91SAM7S-EK porting test"
-#define APP_AUTHOR "Develer"
-#define APP_COPYRIGHT "Copyright 2007 Develer (http://www.develer.com/)"
-
-#define VERS_MAJOR 0
-#define VERS_MINOR 1
-#define VERS_REV 0
-#define VERS_LETTER ""
-
-/**
- * If _SNAPSHOT is defined, \c VERS_TAG contains the build date
- * date instead of a numeric version string.
- */
-//#define _SNAPSHOT
-
-#ifdef _DEBUG
- #define VERS_DBG "D"
-#else
- #define VERS_DBG ""
-#endif
-
-#define __STRINGIZE(x) #x
-#define _STRINGIZE(x) __STRINGIZE(x)
-
-/** Build application version string (i.e.: "1.7.0") */
-#define MAKE_VERS(maj,min,rev) _STRINGIZE(maj) "." _STRINGIZE(min) "." _STRINGIZE(rev) VERS_LETTER VERS_DBG
-#ifdef _SNAPSHOT
- #define VERS_TAG "snapshot" " " __DATE__ " " __TIME__ " " VERS_LETTER " " VERS_DBG
-#else
- #define VERS_TAG MAKE_VERS(VERS_MAJOR,VERS_MINOR,VERS_REV)
-#endif
-
-/** Build application version string suitable for MS windows resource files (i.e.: "1, 7, 0, 1") */
-#define MAKE_RCVERS(maj,min,rev,bld) _STRINGIZE(maj) ", " _STRINGIZE(min) ", " _STRINGIZE(rev) ", " _STRINGIZE(bld)
-#define RCVERSION_TAG MAKE_VERS(VERS_MAJOR,VERS_MINOR,VERS_REV)
-
-/** The revision string (contains VERS_TAG) */
-extern const char vers_tag[];
-
-/** Sequential build number (contains VERS_BUILD) */
-extern const int vers_build_nr;
-//extern const char vers_build_str[];
-
-/** Hostname of the machine used to build this binary (contains VERS_HOST) */
-extern const char vers_host[];
-
-#endif /* DEVLIB_VERSTAG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for Debug module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_DEBUG_H
-#define CFG_DEBUG_H
-
-/**
- * Debug console port.
- * $WIZ$ type = "int"; min = 0
- */
-#define CONFIG_KDEBUG_PORT 0
-
-/**
- * Baudrate for the debug console.
- * $WIZ$ type = "int"; min = 300
- */
-#define CONFIG_KDEBUG_BAUDRATE 115200UL
-
-#endif /* CFG_DEBUG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for GFX module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_GFX_H
-#define CFG_GFX_H
-
-/// Enable line clipping algorithm.
-#define CONFIG_GFX_CLIPPING 1
-
-/// Enable text rendering in bitmaps.
-#define CONFIG_GFX_TEXT 1
-
-/// Enable virtual coordinate system.
-#define CONFIG_GFX_VCOORDS 1
-
-/// Select bitmap pixel format.
-#define CONFIG_BITMAP_FMT BITMAP_FMT_PLANAR_V_LSB
-
-
-#define CONFIG_CHART_TYPE_X uint8_t ///< Type for the chart dataset
-#define CONFIG_CHART_TYPE_Y uint8_t ///< Type for the chart dataset
-
-
-/// Enable button bar behind menus
-#define CONFIG_MENU_MENUBAR 0
-
-/// Level Edit Timeout
-#define CONFIG_LEVELEDIT_TIMEOUT 0
-
-/// Menu timeout
-#define CONFIG_MENU_TIMEOUT 0
-
-/// Enable smooth scrolling in menus
-#define CONFIG_MENU_SMOOTH 1
-
-
-#endif /* CFG_GFX_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for heap module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_HEAP_H
-#define CFG_HEAP_H
-
-/**
- * Enable malloc/free like API.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_HEAP_MALLOC 1
-
-#endif /* CFG_HEAP_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for KFile interface module.
- *
- * \version $Id$
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_KFILE_H
-#define CFG_KFILE_H
-
-/**
- * Module logging level.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KFILE_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KFILE_LOG_FORMAT LOG_FMT_TERSE
-
-/**
- * Enable the gets function with echo.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KFILE_GETS 1
-
-#endif /* CFG_KFILE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for lcd display module.
- */
-
-#ifndef CFG_LCD_H
-#define CFG_LCD_H
-
-/**
- * Use 4 bit addressing mode.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_LCD_4BIT 0
-
-/**
- * Use a table to speed up LCD memory addressing.
- * This will use about 100 bytes of RAM.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_LCD_ADDRESS_FAST 0
-
-/**
- * LCD setting for 32122A (AVR implementation).
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "avr and False"
- */
-#define CONFIG_LCD_SOFTINT_REFRESH 0
-
-/**
- * LCD setting for 32122A (AVR implementation).
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "avr and False"
- */
-#define CONFIG_LCD_WAIT 0
-
-
-#endif /* CFG_LCD_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel monitor configuration parameters
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_MONITOR_H
-#define CFG_MONITOR_H
-
-/**
- * Process monitor.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_MONITOR 1
-
-#endif /* CFG_MONITOR_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel configuration parameters
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_PROC_H
-#define CFG_PROC_H
-
-/**
- * Enable the multithreading kernel.
- *
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN 1
-
-/**
- * Kernel interrupt supervisor. WARNING: Experimental, still incomplete!
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_KERN_IRQ 0
-
-/**
- * Preemptive process scheduling.
- *
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "timer"
- */
-#define CONFIG_KERN_PREEMPT 1
-
-/**
- * Time sharing quantum (a prime number prevents interference effects) [ms].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_KERN_QUANTUM 11
-
-/**
- * Priority-based scheduling policy.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PRI 1
-
-/**
- * Dynamic memory allocation for processes.
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "heap"
- */
-#define CONFIG_KERN_HEAP 1
-
-/**
- * Size of the dynamic memory pool used by processes.
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define CONFIG_KERN_HEAP_SIZE 16384L
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KERN_LOG_LEVEL LOG_LVL_ERR
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KERN_LOG_FORMAT LOG_FMT_VERBOSE
-
-#endif /* CFG_PROC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel semaphores configuration parameters.
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SEM_H
-#define CFG_SEM_H
-
-/**
- * Re-entrant mutual exclusion primitives.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SEMAPHORES 0
-
-#endif /* CFG_SEM_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for serial module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_SER_H
-#define CFG_SER_H
-
-/**
- * Example of setting for serial port and
- * spi port.
- * Edit these define for your project.
- */
-
-/**
- * Size of the outbound FIFO buffer for port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_UART0_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_UART0_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2 or (at91 and not atmega8 and not atmega168 and not atmega32)"
- */
-#define CONFIG_UART1_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2 or (at91 and not atmega8 and not atmega168 and not atmega32)"
- */
-#define CONFIG_UART1_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 2 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2"
- */
-#define CONFIG_UART2_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 2 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2"
- */
-#define CONFIG_UART2_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 3 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lpc2"
- */
-#define CONFIG_UART3_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 3 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lpc2"
- */
-#define CONFIG_UART3_RXBUFSIZE 32
-
-
-/**
- * Size of the outbound FIFO buffer for SPI port [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for SPI port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI0_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI0_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for SPI port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI1_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI1_RXBUFSIZE 32
-
-/**
- * SPI data order.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_order_bit"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_DATA_ORDER SER_MSB_FIRST
-
-/**
- * SPI clock division factor.
- * $WIZ$ type = "int"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_DIV 16
-
-/**
- * SPI clock polarity: normal low or normal high.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_spi_pol"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_POL SPI_NORMAL_LOW
-
-/**
- * SPI clock phase you can choose sample on first edge or
- * sample on second clock edge.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_spi_phase"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_PHASE SPI_SAMPLE_ON_FIRST_EDGE
-
-/**
- * Default transmit timeout (ms). Set to -1 to disable timeout support.
- * $WIZ$ type = "int"
- * $WIZ$ min = -1
- */
-#define CONFIG_SER_TXTIMEOUT -1
-
-/**
- * Default receive timeout (ms). Set to -1 to disable timeout support.
- * $WIZ$ type = "int"
- * $WIZ$ min = -1
- */
-#define CONFIG_SER_RXTIMEOUT -1
-
-/**
- * Use RTS/CTS handshake.
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_SER_HWHANDSHAKE 0
-
-/**
- * Default baudrate for all serial ports (set to 0 to disable).
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define CONFIG_SER_DEFBAUDRATE 0UL
-
-/// Enable strobe pin for debugging serial interrupt. $WIZ$ type = "boolean"
-#define CONFIG_SER_STROBE 0
-
-#endif /* CFG_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel signals configuration parameters
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SIGNAL_H
-#define CFG_SIGNAL_H
-
-/**
- * Inter-process signals.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SIGNALS 1
-
-#endif /* CFG_SIGNAL_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for timer module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_TIMER_H
-#define CFG_TIMER_H
-
-/**
- * Hardware timer selection for drv/timer.c.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "timer_select"
- */
-#define CONFIG_TIMER TIMER_DEFAULT
-
-/**
- * Debug timer interrupt using a strobe pin.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_STROBE 0
-
-/**
- * Enable asynchronous timers.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_EVENTS 1
-
-/**
- * Support hi-res timer_usleep().
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_UDELAY 1
-
-#endif /* CFG_TIMER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief LM3S1968 keypad: hardware-specific definitions
- *
- * \author Andrea Righi <arighi@develer.com>
- */
-
-#ifndef HW_KBD_H
-#define HW_KBD_H
-
-#include <cfg/macros.h> /* BV() */
-#include <io/lm3s.h> /* GPIO_PORTG_BASE */
-#include <drv/clock_lm3s.h> /* lm3s_busyWait() */
-#include <drv/gpio_lm3s.h> /* lm3s_gpioPinConfig() / lm3s_gpioPinRead() */
-#include "hw/kbd_map.h"
-
-#define K_RPT_MASK (K_UP | K_DOWN | K_LEFT | K_RIGHT | K_OK)
-
-#define KBD_HW_INIT \
- do { \
- SYSCTL_RCGC2_R |= SYSCTL_RCGC2_GPIOG; \
- lm3s_busyWait(512); \
- lm3s_gpioPinConfig(GPIO_PORTG_BASE, \
- K_RPT_MASK, \
- GPIO_DIR_MODE_IN, \
- GPIO_STRENGTH_2MA, \
- GPIO_PIN_TYPE_STD_WPU); \
- } while (0)
-
-/**
- * Read the keyboard ports and return the mask of depressed keys.
- */
-INLINE keymask_t kbd_readkeys(void)
-{
- return ~lm3s_gpioPinRead(GPIO_PORTG_BASE,
- K_UP | K_DOWN | K_LEFT | K_RIGHT | K_OK);
-}
-
-#endif /* HW_KBD_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief LM3S1986: OLED-RIT-128x96 (P14201) low-level hardware macros
- *
- * \author Andrea Righi <arighi@develer.com>
- */
-
-#ifndef HW_RIT128x96_H
-#define HW_RIT128x96_H
-
-#include "cfg/macros.h" /* BV() */
-#include "cfg/debug.h"
-
-#include <cpu/attr.h>
-#include <cpu/irq.h>
-#include <cpu/types.h>
-
-#include <drv/clock_lm3s.h>
-#include <drv/ssi_lm3s.h>
-#include <drv/gpio_lm3s.h>
-
-/**
- * \name LCD I/O pins/ports
- * @{
- */
-/* OLED Data/Command control pin */
-#define GPIO_OLEDDC_PIN BV(2)
-
-/* OLED enable pin */
-#define GPIO_OLEDEN_PIN BV(3)
-/*@}*/
-
-/**
- * \name LCD bus control macros
- * @{
- */
-/* Enter command mode */
-#define LCD_SET_COMMAND() \
- lm3s_gpioPinWrite(GPIO_PORTH_BASE, GPIO_OLEDDC_PIN, 0)
-
-/* Enter data mode */
-#define LCD_SET_DATA() \
- lm3s_gpioPinWrite(GPIO_PORTH_BASE, GPIO_OLEDDC_PIN, GPIO_OLEDDC_PIN)
-
-/* Send data to the display */
-#define LCD_WRITE(x) \
- { \
- uint32_t _x; \
- while (!lm3s_ssiWriteFrameNonBlocking(SSI0_BASE, x)); \
- /* Dummy read to drain the FIFO */ \
- while (!lm3s_ssiReadFrameNonBlocking(SSI0_BASE, &_x)); \
- }
-/*@}*/
-
-INLINE void lcd_rit128x96_hw_bus_init(void)
-{
- uint32_t dummy;
-
- /* Enable the peripheral clock */
- SYSCTL_RCGC1_R |= SYSCTL_RCGC1_SSI0;
- SYSCTL_RCGC2_R |= SYSCTL_RCGC2_GPIOA;
- SYSCTL_RCGC2_R |= SYSCTL_RCGC2_GPIOH;
- lm3s_busyWait(512);
-
- /* Configure the SSI0CLK and SSIOTX pins for SSI operation. */
- lm3s_gpioPinConfig(GPIO_PORTA_BASE, BV(2) | BV(3) | BV(5),
- GPIO_DIR_MODE_HW, GPIO_STRENGTH_8MA, GPIO_PIN_TYPE_STD_WPU);
- /*
- * Configure the GPIO port pin used as a D/C# signal (data/command
- * control) for OLED device, and the port pin used to enable power to
- * the OLED panel.
- */
- lm3s_gpioPinConfig(GPIO_PORTH_BASE, GPIO_OLEDDC_PIN | GPIO_OLEDEN_PIN,
- GPIO_DIR_MODE_OUT, GPIO_STRENGTH_8MA, GPIO_PIN_TYPE_STD);
- lm3s_gpioPinWrite(GPIO_PORTH_BASE, GPIO_OLEDDC_PIN | GPIO_OLEDEN_PIN,
- GPIO_OLEDDC_PIN | GPIO_OLEDEN_PIN);
-
- /* Configure the SSI0 port for master mode */
- lm3s_ssiOpen(SSI0_BASE, SSI_FRF_MOTO_MODE_2,
- SSI_MODE_MASTER, CPU_FREQ / 2, 8);
- /*
- * Configure the GPIO port pin used as a D/Cn signal for OLED device,
- * and the port pin used to enable power to the OLED panel.
- */
- lm3s_gpioPinConfig(GPIO_PORTA_BASE, GPIO_OLEDEN_PIN,
- GPIO_DIR_MODE_HW, GPIO_STRENGTH_8MA, GPIO_PIN_TYPE_STD_WPU);
-
- /* Drain the SSI RX FIFO */
- while (lm3s_ssiReadFrameNonBlocking(SSI0_BASE, &dummy));
-}
-
-#endif /* HW_RIT128x96_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2005, 2006, 2008 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti
- * All Rights Reserved.
- * -->
- *
- * \brief Keyboard map definitions.
- *
- * \version $Id$
- *
- * \author Francesco Sacchi <batt@develer.com>
- * \author Stefano Fedrigo <a@develer.com>
- */
-
-#ifndef HW_KBD_MAP_H
-#define HW_KBD_MAP_H
-
-#include <cfg/macros.h>
-
-/**
- * Type for keyboard mask.
- */
-typedef uint16_t keymask_t;
-
-/**
- * \name Keycodes.
- */
-/*@{*/
-#define K_UP BV(3)
-#define K_DOWN BV(4)
-#define K_LEFT BV(5)
-#define K_RIGHT BV(6)
-#define K_OK BV(7)
-#define K_CANCEL BV(8)
-
-#define K_REPEAT BV(13) /**< This is a repeated keyevent. */
-#define K_TIMEOUT BV(14) /**< Fake key event for timeouts. */
-#define K_LONG BV(15)
-/*@}*/
-
-#define K_LNG_MASK 0
-
-#endif /* HW_KBD_MAP_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief LM3S1968 Cortex-M3 testcase
- *
- * \author Andrea Righi <arighi@develer.com>
- */
-
-#include "hw/hw_rit128x96.h"
-
-#include "cfg/compiler.h"
-#include "cfg/cfg_gfx.h"
-
-#include <cpu/irq.h>
-
-#include <drv/timer.h>
-#include <drv/ser.h>
-#include <drv/kbd.h>
-#include <drv/lcd_rit128x96.h>
-
-#include <gfx/gfx.h>
-#include <gfx/font.h>
-#include <gfx/text.h>
-
-#include <gui/menu.h>
-
-#include <icons/logo.h>
-
-#include <stdio.h>
-
-
-
-#define PROC_STACK_SIZE KERN_MINSTACKSIZE * 2
-
-#if CONFIG_KERN_HEAP
-#define hp_stack NULL
-#define lp_stack NULL
-#define ser_stack NULL
-#define led_stack NULL
-#else
-static PROC_DEFINE_STACK(hp_stack, PROC_STACK_SIZE);
-static PROC_DEFINE_STACK(lp_stack, PROC_STACK_SIZE);
-static PROC_DEFINE_STACK(ser_stack, PROC_STACK_SIZE);
-static PROC_DEFINE_STACK(led_stack, PROC_STACK_SIZE);
-#endif
-
-extern Font font_gohu;
-static uint8_t raster[RAST_SIZE(LCD_WIDTH, LCD_HEIGHT)];
-static Bitmap lcd_bitmap;
-
-#define KEY_MASK (K_UP | K_DOWN | K_LEFT | K_RIGHT | K_OK)
-
-static Process *hp_proc, *lp_proc, *led_proc;
-static hptime_t start, end;
-
-static Serial ser_port;
-
-static void led_init(void)
-{
- /* Enable the GPIO port that is used for the on-board LED */
- SYSCTL_RCGC2_R = SYSCTL_RCGC2_GPIOG;
- /*
- * Perform a dummy read to insert a few cycles delay before enabling
- * the peripheral.
- */
- (void)SYSCTL_RCGC2_R;
- /* Enable the GPIO pin for the LED */
- GPIO_PORTG_DIR_R = 0x04;
- GPIO_PORTG_DEN_R = 0x04;
-}
-
-INLINE void led_on(void)
-{
- GPIO_PORTG_DATA_R |= 0x04;
-}
-
-INLINE void led_off(void)
-{
- GPIO_PORTG_DATA_R &= ~0x04;
-}
-
-static bool led_blinking;
-
-static void NORETURN led_process(void)
-{
- int i;
-
- for (i = 0; ; i++)
- {
- if (!led_blinking)
- {
- led_off();
- sig_wait(SIG_USER0);
- }
- if (i & 1)
- led_on();
- else
- led_off();
- timer_delay(50);
- }
-}
-
-static void led_test(UNUSED_ARG(Bitmap *, bm))
-{
- led_blinking = !led_blinking;
- sig_send(led_proc, SIG_USER0);
-}
-
-static void bouncing_logo(Bitmap *bm)
-{
- const long SPEED_SCALE = 1000;
- const long GRAVITY_ACCEL = 100;
- const long BOUNCE_ELASTICITY = 1;
- long h = (long)(-bertos_logo.height) * SPEED_SCALE;
- long speed = 0, i;
-
- for (i = 0; ; i++)
- {
- /* Move */
- h += speed;
-
- /* Gravity acceleration */
- speed += GRAVITY_ACCEL;
-
- if (h > 0 && speed > 0)
- {
- /* Bounce */
- speed = -(speed / BOUNCE_ELASTICITY);
-
- }
- /* Update graphics */
- gfx_bitmapClear(bm);
- gfx_blitImage(bm,
- (LCD_WIDTH - bertos_logo.width) / 2,
- (LCD_HEIGHT - bertos_logo.height) / 2 + h / SPEED_SCALE,
- &bertos_logo);
- text_xprintf(bm, 7, 0, TEXT_FILL | TEXT_CENTER, "Press SELECT to quit");
- rit128x96_blitBitmap(bm);
- timer_delay(5);
- if (kbd_peek() & KEY_MASK)
- break;
- }
-}
-
-static void screen_saver(Bitmap *bm)
-{
- int x1, y1, x2, y2;
- int i;
-
- for (i = 0; ; i++)
- {
- x1 = i % LCD_WIDTH;
- y1 = i % LCD_HEIGHT;
-
- x2 = LCD_WIDTH - i % LCD_WIDTH;
- y2 = LCD_HEIGHT - i % LCD_HEIGHT;
-
- gfx_bitmapClear(bm);
- gfx_rectDraw(bm, x1, y1, x2, y2);
- rit128x96_blitBitmap(bm);
- if (kbd_peek() & KEY_MASK)
- break;
- }
-}
-
-INLINE hptime_t get_hp_ticks(void)
-{
- return (TIMER_HW_CNT - timer_hw_hpread()) +
- timer_clock_unlocked() * TIMER_HW_CNT;
-}
-
-static void NORETURN hp_process(void)
-{
- while (1)
- {
- sig_wait(SIG_USER0);
- end = get_hp_ticks();
- timer_delay(100);
- sig_send(lp_proc, SIG_USER0);
- }
-}
-
-static void NORETURN lp_process(void)
-{
- while (1)
- {
- start = get_hp_ticks();
- sig_send(hp_proc, SIG_USER0);
- sig_wait(SIG_USER0);
- }
-}
-
-static void res_process(void)
-{
- const char spinner[] = {'/', '-', '\\', '|'};
- int i;
- char c;
-
- for (i = 0; ; i++)
- {
- /* Show context switch (in clock cycles) */
- c = spinner[i % countof(spinner)];
- text_xprintf(&lcd_bitmap, 3, 0, TEXT_CENTER | TEXT_FILL, "%c Context switch %c", c, c);
- text_xprintf(&lcd_bitmap, 5, 0, TEXT_FILL, " %lu clock cycles", end - start);
- /* Show context switch (in usec) */
- text_xprintf(&lcd_bitmap, 6, 0, TEXT_FILL,
- " %lu.%lu usec",
- ((end - start) * 1000000) / CPU_FREQ,
- ((end - start) * (100000000 / CPU_FREQ)) % 100);
- rit128x96_blitBitmap(&lcd_bitmap);
- timer_delay(5);
- if (kbd_peek() & KEY_MASK)
- break;
- }
-}
-
-static void context_switch_test(Bitmap *bm)
-{
- gfx_bitmapClear(bm);
- text_xprintf(bm, 0, 0, TEXT_FILL,
- "CPU: Cortex-M3 %luMHz", CPU_FREQ / 1000000);
- rit128x96_blitBitmap(bm);
- text_xprintf(bm, 1, 0, TEXT_FILL, "Board: LM3S1968 EVB");
- rit128x96_blitBitmap(bm);
-
- res_process();
-}
-
-static void uptime(Bitmap *bm)
-{
- extern const Font font_luBS14;
- const Font *old_font;
-
- old_font = bm->font;
-
- /* Set big font */
- gfx_bitmapClear(bm);
- gfx_setFont(bm, &font_luBS14);
- text_xprintf(bm, 0, 0, TEXT_FILL | TEXT_CENTER, "Uptime");
- while (1)
- {
- ticks_t clock = ticks_to_ms(timer_clock_unlocked());
-
- /* Display uptime (in ticks) */
- text_xprintf(&lcd_bitmap, 2, 0, TEXT_FILL | TEXT_CENTER,
- "%lu", clock / 1000);
- rit128x96_blitBitmap(bm);
- timer_delay(5);
- if (kbd_peek() & KEY_MASK)
- break;
- }
- gfx_setFont(bm, old_font);
-}
-
-static void NORETURN soft_reset(Bitmap * bm)
-{
- extern const Font font_luBS14;
- int i;
-
- /* Set big font */
- gfx_bitmapClear(bm);
- gfx_setFont(bm, &font_luBS14);
- for (i = 5; i; --i)
- {
- text_xprintf(bm, 2, 0, TEXT_FILL | TEXT_CENTER, "%d", i);
- rit128x96_blitBitmap(bm);
- timer_delay(1000);
- }
- text_xprintf(bm, 2, 0, TEXT_FILL | TEXT_CENTER, "REBOOT");
- rit128x96_blitBitmap(bm);
- timer_delay(1000);
-
- /* Perform a software reset request */
- HWREG(NVIC_APINT) = NVIC_APINT_VECTKEY | NVIC_APINT_SYSRESETREQ;
- UNREACHABLE();
-}
-
-static void NORETURN ser_process(void)
-{
- char buf[32];
- int i;
-
- ser_init(&ser_port, SER_UART0);
- ser_setbaudrate(&ser_port, 115200);
-
- /* BeRTOS terminal */
- for (i = 0; ; i++)
- {
- kfile_printf(&ser_port.fd, "\n\r[%03d] BeRTOS:~$ ", i);
- kfile_gets_echo(&ser_port.fd, buf, sizeof(buf), true);
- kfile_printf(&ser_port.fd, "%s", buf);
- }
-}
-
-static struct MenuItem main_items[] =
-{
- { (const_iptr_t)"LED blinking", 0, (MenuHook)led_test, (iptr_t)&lcd_bitmap },
- { (const_iptr_t)"Bouncing logo", 0, (MenuHook)bouncing_logo, (iptr_t)&lcd_bitmap },
- { (const_iptr_t)"Screen saver demo", 0, (MenuHook)screen_saver, (iptr_t)&lcd_bitmap },
- { (const_iptr_t)"Scheduling test", 0, (MenuHook)context_switch_test, (iptr_t)&lcd_bitmap },
- { (const_iptr_t)"Show uptime", 0, (MenuHook)uptime, (iptr_t)&lcd_bitmap },
- { (const_iptr_t)"Reboot", 0, (MenuHook)soft_reset, (iptr_t)&lcd_bitmap },
- { (const_iptr_t)0, 0, NULL, (iptr_t)0, }
-};
-
-static struct Menu main_menu = { main_items, "BeRTOS", MF_STICKY | MF_SAVESEL, &lcd_bitmap, 0, rit128x96_blitBitmap };
-
-int main(void)
-{
- IRQ_ENABLE;
- kdbg_init();
-
- kputs("Init LED..");
- led_init();
- kputs("Done.\n");
- kputs("Init Timer..");
- timer_init();
- kputs("Done.\n");
- kputs("Init Process..");
- proc_init();
- kputs("Done.\n");
- kputs("Init OLED display..");
- rit128x96_init();
- gfx_bitmapInit(&lcd_bitmap, raster, LCD_WIDTH, LCD_HEIGHT);
- gfx_setFont(&lcd_bitmap, &font_gohu);
- rit128x96_blitBitmap(&lcd_bitmap);
- kputs("Done.\n");
- kputs("Init Keypad..");
- kbd_init();
- kputs("Done.\n");
-
- hp_proc = proc_new(hp_process, NULL, PROC_STACK_SIZE, hp_stack);
- lp_proc = proc_new(lp_process, NULL, PROC_STACK_SIZE, lp_stack);
- led_proc = proc_new(led_process, NULL, PROC_STACK_SIZE, led_stack);
- /* Open a dummy echo terminal on UART0 */
- proc_new(ser_process, NULL, PROC_STACK_SIZE, ser_stack);
-
- proc_setPri(hp_proc, 2);
- proc_setPri(lp_proc, 1);
-
- while (1)
- {
- menu_handle(&main_menu);
- cpu_relax();
- }
-}
+++ /dev/null
-#
-# $Id: lm3s1968.mk 18234 2007-10-08 13:39:48Z rasky $
-# Copyright 2006 Develer S.r.l. (http://www.develer.com/)
-# All rights reserved.
-#
-# Makefile fragment for DevLib lm3s1968 application.
-#
-# Author: Manuele Fanelli <qwert@develer.com>
-#
-#
-
-# Set to 1 for debug builds
-lm3s1968_DEBUG = 0
-
-include bertos/fonts/fonts.mk
-
-# Our target application
-TRG += lm3s1968
-
-lm3s1968_CSRC = \
- examples/lm3s1968/lm3s1968.c \
- bertos/gfx/bitmap.c \
- bertos/gfx/line.c \
- bertos/gfx/win.c \
- bertos/gfx/text.c \
- bertos/gfx/text_format.c \
- bertos/gui/menu.c \
- bertos/fonts/gohu.c \
- bertos/fonts/luBS14.c \
- bertos/icons/logo.c \
- bertos/mware/formatwr.c \
- bertos/mware/hex.c \
- bertos/mware/sprintf.c \
- bertos/mware/event.c \
- bertos/struct/heap.c \
- bertos/drv/timer.c \
- bertos/drv/ser.c \
- bertos/drv/kbd.c \
- bertos/drv/lcd_rit128x96.c \
- bertos/kern/kfile.c \
- bertos/kern/monitor.c \
- bertos/kern/proc_test.c \
- bertos/kern/proc.c \
- bertos/kern/signal.c \
- bertos/cpu/cortex-m3/drv/gpio_lm3s.c \
- bertos/cpu/cortex-m3/drv/clock_lm3s.c \
- bertos/cpu/cortex-m3/drv/ser_lm3s.c \
- bertos/cpu/cortex-m3/drv/kdebug_lm3s.c \
- bertos/cpu/cortex-m3/drv/ssi_lm3s.c \
- bertos/cpu/cortex-m3/drv/timer_cm3.c \
- bertos/cpu/cortex-m3/drv/irq_cm3.c \
- bertos/cpu/cortex-m3/hw/switch_ctx_cm3.c \
- bertos/cpu/cortex-m3/hw/init_cm3.c
-
-lm3s1968_CPPASRC = \
- bertos/cpu/cortex-m3/hw/vectors_cm3.S \
- bertos/cpu/cortex-m3/hw/crt_cm3.S \
- #
-
-# This is an hosted application
-lm3s1968_PREFIX = arm-none-eabi-
-
-lm3s1968_CPPAFLAGS = -mthumb -mno-thumb-interwork
-lm3s1968_CPPFLAGS = -D'ARCH=0' -D__ARM_LM3S1968__ -D'CPU_FREQ=(50000000L)' -D'WIZ_AUTOGEN' -mthumb -mno-thumb-interwork -Iexamples/lm3s1968 -Ibertos/cpu/cortex-m3 -fno-strict-aliasing -fwrapv
-lm3s1968_LDFLAGS = -nostartfiles -T bertos/cpu/cortex-m3/scripts/lm3s1968_rom.ld -Wl,--no-warn-mismatch -mthumb -mno-thumb-interwork
-
-lm3s1968_CPU = cortex-m3
-
-lm3s1968_PROGRAMMER_CPU = lm3s
-lm3s1968_PROGRAMMER_TYPE = luminary
-lm3s1968_FLASH_SCRIPT = bertos/prg_scripts/arm/flash-lm3s.sh
-lm3s1968_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-lm3s1968_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh
-lm3s1968_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-
-ifeq ($(lm3s1968_DEBUG),0)
- # Production options
- lm3s1968_CFLAGS += -O2 -fomit-frame-pointer
- lm3s1968_CXXFLAGS += -O2 -fomit-frame-pointer
-else
- # Debug options
- lm3s1968_CPPAFLAGS += -g -gdwarf-2
- lm3s1968_CPPFLAGS += -O0 -g3 -gdwarf-2 -fverbose-asm
-endif
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for the ADC module.
- *
- * \version $Id: cfg_adc.h 2582 2009-04-20 12:33:48Z batt $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_ADC_H
-#define CFG_ADC_H
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define ADC_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define ADC_LOG_FORMAT LOG_FMT_VERBOSE
-
-/**
- * Clock Frequency for ADC conversion.
- *
- * $WIZ$ type = "int"
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_ADC_CLOCK 4800000UL
-
-/**
- * Minimum time for starting up a conversion [us].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_ADC_STARTUP_TIME 20
-
-/**
- * Minimum time for sample and hold [us].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_ADC_SHTIME 834
-
-/**
- * ADC Voltage Reference.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "avr_adc_refs"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_ADC_AVR_REF ADC_AVR_AVCC
-
-/**
- * ADC clock divisor from main crystal.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ max = 128
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_ADC_AVR_DIVISOR 2
-
-/**
- * Enable ADC strobe for debugging ADC ISR.
- *
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_ADC_STROBE 0
-
-#endif /* CFG_ADC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for AFSK1200 modem.
- *
- * \version $Id: cfg_afsk.h 3065 2009-10-10 11:20:09Z batt $
- * \author Francesco Sacchi <asterix@develer.com>
- */
-
-#ifndef CFG_AFSK_H
-#define CFG_AFSK_H
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define AFSK_LOG_LEVEL LOG_LVL_WARN
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define AFSK_LOG_FORMAT LOG_FMT_TERSE
-
-
-/**
- * AFSK discriminator filter type.
- *
- * $WIZ$ type = "enum"; value_list = "afsk_filter_list"
- */
-#define CONFIG_AFSK_FILTER AFSK_CHEBYSHEV
-
-
-/**
- * AFSK receiver buffer length.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_AFSK_RX_BUFLEN 32
-
-/**
- * AFSK transimtter buffer length.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_AFSK_TX_BUFLEN 32
-
-/**
- * AFSK DAC sample rate for modem outout.
- * $WIZ$ type = "int"
- * $WIZ$ min = 2400
- */
-#define CONFIG_AFSK_DAC_SAMPLERATE 9600
-
-/**
- * AFSK RX timeout in ms, set to -1 to disable.
- * $WIZ$ type = "int"
- * $WIZ$ min = -1
- */
-#define CONFIG_AFSK_RXTIMEOUT 0
-
-
-/**
- * AFSK Preamble length in [ms], before starting transmissions.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_AFSK_PREAMBLE_LEN 300UL
-
-
-
-/**
- * AFSK Trailer length in [ms], before stopping transmissions.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_AFSK_TRAILER_LEN 50UL
-
-#endif /* CFG_AFSK_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for the AX25 protocol module.
- *
- * \version $Id$
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef CFG_AX25_H
-#define CFG_AX25_H
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define AX25_LOG_LEVEL LOG_LVL_WARN
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define AX25_LOG_FORMAT LOG_FMT_TERSE
-
-/**
- * AX25 frame buffer lenght.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 18
- */
-#define CONFIG_AX25_FRAME_BUF_LEN 330
-
-
-/**
- * Enable repeaters listing in AX25 frames.
- * If enabled use 56 addtional bytes of RAM
- * for each message received.
- *
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_AX25_RPT_LST 1
-
-#endif /* CFG_AX25_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for BattFS module.
- *
- * \version $Id: cfg_battfs.h 2665 2009-04-24 16:39:09Z batt $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_BATTFS_H
-#define CFG_BATTFS_H
-
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define BATTFS_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define BATTFS_LOG_FORMAT LOG_FMT_VERBOSE
-
-/**
- * Set to 1 to enable free page shuffling.
- * This increase memories life but makes debugging
- * more difficult due to its unrepeteable state.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_BATTFS_SHUFFLE_FREE_PAGES 0
-
-
-#endif /* BATTFS */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for data flash memory module.
- *
- * \version $Id: cfg_dataflash.h 2348 2009-02-16 13:43:44Z duplo $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_DATAFLASH_H
-#define CFG_DATAFLASH_H
-
-/**
- * Module logging level.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define DATAFLASH_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define DATAFLASH_LOG_FORMAT LOG_FMT_TERSE
-
-#endif /* CFG_DATAFLASH_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for DC motor module.
- *
- * \version $Id: cfg_dc_motor.h 2777 2009-08-20 14:54:17Z $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_DC_MOTOR_H
-#define CFG_DC_MOTOR_H
-
-/**
- * Number of the DC motors to manage.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_NUM_DC_MOTOR 4
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define DC_MOTOR_LOG_LEVEL LOG_LVL_WARN
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define DC_MOTOR_LOG_FORMAT LOG_FMT_TERSE
-
-#endif /* CFG_DC_MOTOR_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for Debug module.
- *
- * \version $Id: cfg_debug.h 2582 2009-04-20 12:33:48Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_DEBUG_H
-#define CFG_DEBUG_H
-
-/**
- * Debug console port.
- * $WIZ$ type = "int"; min = 0
- */
-#define CONFIG_KDEBUG_PORT 0
-
-/**
- * Baudrate for the debug console.
- * $WIZ$ type = "int"; min = 300
- */
-#define CONFIG_KDEBUG_BAUDRATE 115200UL
-
-#endif /* CFG_DEBUG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for Fat module.
- *
- * \version $Id: cfg_fat.h 2694 2009-05-21 11:07:20Z batt $
- *
- * \author Luca Ottaviano <lottaviano@develer.com>
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef CFG_FAT_H
-#define CFG_FAT_H
-
-/**
- * Use word alignment to access FAT structure.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_FAT_WORD_ACCESS 0
-#define _WORD_ACCESS CONFIG_FAT_WORD_ACCESS
-
-/**
- * Enable read functions only.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_FAT_FS_READONLY 0
-#define _FS_READONLY CONFIG_FAT_FS_READONLY
-
-/**
- * Minimization level to remove some functions.
- * $WIZ$ type = "int"; min = 0; max = 3
- */
-#define CONFIG_FAT_FS_MINIMIZE 0
-#define _FS_MINIMIZE CONFIG_FAT_FS_MINIMIZE
-
-/**
- * If enabled, this reduces memory consumption 512 bytes each file object by using a shared buffer.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_FAT_FS_TINY 1
-#define _FS_TINY CONFIG_FAT_FS_TINY
-
-/**
- * To enable string functions, set _USE_STRFUNC to 1 or 2.
- * $WIZ$ type = "int"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_FAT_USE_STRFUNC 0
-#define _USE_STRFUNC CONFIG_FAT_USE_STRFUNC
-
-/**
- * Enable f_mkfs function. Requires CONFIG_FAT_FS_READONLY = 0.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_FAT_USE_MKFS 0
-#define _USE_MKFS (CONFIG_FAT_USE_MKFS && !CONFIG_FAT_FS_READONLY)
-
-/**
- * Enable f_forward function. Requires CONFIG_FAT_FS_TINY.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_FAT_USE_FORWARD 0
-#define _USE_FORWARD (CONFIG_FAT_USE_FORWARD && CONFIG_FAT_FS_TINY)
-
-/**
- * Number of volumes (logical drives) to be used.
- * $WIZ$ type = "int"; min = 1; max = 255
- */
-#define CONFIG_FAT_DRIVES 1
-#define _DRIVES CONFIG_FAT_DRIVES
-
-/**
- * Maximum sector size to be handled. (512/1024/2048/4096).
- * 512 for memory card and hard disk, 1024 for floppy disk, 2048 for MO disk
- * $WIZ$ type = "int"; min = 512; max = 4096
- */
-#define CONFIG_FAT_MAX_SS 512
-#define _MAX_SS CONFIG_FAT_MAX_SS
-
-/**
- * When _MULTI_PARTITION is set to 0, each volume is bound to the same physical
- * drive number and can mount only first primaly partition. When it is set to 1,
- * each volume is tied to the partitions listed in Drives[].
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_FAT_MULTI_PARTITION 0
-#define _MULTI_PARTITION CONFIG_FAT_MULTI_PARTITION
-
-/**
- * Specifies the OEM code page to be used on the target system.
- * $WIZ$ type = "int"
- */
-#define CONFIG_FAT_CODE_PAGE 850
-#define _CODE_PAGE CONFIG_FAT_CODE_PAGE
-
-/**
- * Support for long filenames. Enable only if you have a valid Microsoft license.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_FAT_USE_LFN 0
-#define _USE_LFN CONFIG_FAT_USE_LFN
-
-/**
- * Maximum Long File Name length to handle.
- * $WIZ$ type = "int"; min = 8; max = 255
- */
-#define CONFIG_FAT_MAX_LFN 255
-#define _MAX_LFN CONFIG_FAT_MAX_LFN
-
-#endif /* CFG_FAT_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for flash25 module.
- *
- * \version $Id: cfg_flash25.h 2362 2009-02-19 14:35:07Z duplo $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_FLASH25_H
-#define CFG_FLASH25_H
-
-/**
- * Eeprom memory type.
- *
- *$WIZ$ type = "enum"
- *$WIZ$ value_list = "flash25_list"
- */
-#define CONFIG_FLASH25 FLASH25_AT25F2048
-
-#endif /* CFG_FALSH25_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for formatted write module.
- *
- * \version $Id: cfg_formatwr.h 2965 2009-09-18 09:35:40Z lottaviano $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_FORMATWR_H
-#define CFG_FORMATWR_H
-
-/**
- * printf()-style formatter configuration.
- * $WIZ$ type = "enum"; value_list = "printf_list"
- *
- * \sa PRINTF_DISABLED
- * \sa PRINTF_NOMODIFIERS
- * \sa PRINTF_REDUCED
- * \sa PRINTF_NOFLOAT
- * \sa PRINTF_FULL
- */
-#define CONFIG_PRINTF PRINTF_FULL
-
-/**
- * Size of buffer to format "%" sequences in printf.
- *
- * Warning: no check on buffer size is done when formatting, be careful especially
- * with big numbers and %f formatting.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 4
- */
-#define CONFIG_FRMWRI_BUFSIZE 134
-
-#endif /* CFG_FORMATWR_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for heap module.
- *
- * \version $Id: cfg_heap.h 3256 2010-03-22 16:29:37Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_HEAP_H
-#define CFG_HEAP_H
-
-/**
- * Enable malloc/free like API.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_HEAP_MALLOC 1
-
-#endif /* CFG_HEAP_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for I2C module.
- *
- * \version $Id: cfg_i2c.h 2561 2009-04-20 09:26:48Z duplo $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_I2C_H
-#define CFG_I2C_H
-
-/**
-*Comunication frequency.
-*
-* $WIZ$ type = "int"
-*/
-#define CONFIG_I2C_FREQ 100000UL
-
-/**
- * I2C start timeout.
- * For how many milliseconds the i2c_start
- * should try to get an ACK before
- * returning error.
- *
- * $WIZ$ type = "int"
- */
-#define CONFIG_I2C_START_TIMEOUT 100
-
-/**
- * I2C backend the driver should use.
- *
- * I2C_BACKEND_BUILTIN: Use (if present) the builtin i2c hardware.
- * I2C_BACKEND_BITBANG: Use the emulated bitbang driver.
- * \see drv/i2c.h for more information.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "i2c_backend"
- */
-#define CONFIG_I2C_BACKEND I2C_BACKEND_BUILTIN
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define I2C_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define I2C_LOG_FORMAT LOG_FMT_TERSE
-
-#endif /* CFG_I2C_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for I2S module.
- *
- * \version $Id: cfg_i2s.h 2743 2009-07-06 15:17:09Z lottaviano $
- *
- * \author Luca Ottaviano <lottaviano@develer.com>
- */
-
-#ifndef CFG_I2S_H
-#define CFG_I2S_H
-
-/**
- * Length of each play buffer.
- *
- * $WIZ$ type = "int"
- */
-#define CONFIG_PLAY_BUF_LEN 8192
-
-/**
- * Sampling frequency of the audio file.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 32000
- * $WIZ$ max = 192000
- */
-#define CONFIG_SAMPLE_FREQ 44100UL
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define I2S_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define I2S_LOG_FORMAT LOG_FMT_TERSE
-
-#endif /* CFG_I2S_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for ini reader module.
- *
- * \version $Id: cfg_ini_reader.h 2710 2009-06-08 13:54:43Z batt $
- *
- * \author Luca Ottaviano <lottaviano@develer.com>
- */
-
-#ifndef CFG_INI_READER_H
-#define CFG_INI_READER_H
-
-/**
- * Maximum ini file line length (chars).
- * $WIZ$ type = "int"; min = 1
- */
-#define CONFIG_INI_MAX_LINE_LEN 64
-
-#endif /* CFG_INI_READER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for keyboard module.
- *
- * \version $Id: cfg_kbd.h 2936 2009-09-14 16:19:13Z asterix $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_KBD_H
-#define CFG_KBD_H
-
-/// Keyboard polling method. $WIZ$ supports = "False"
-#define CONFIG_KBD_POLL KBD_POLL_SOFTINT
-
-/// Enable keyboard event delivery to observers. $WIZ$ type = "boolean"
-#define CONFIG_KBD_OBSERVER 0
-
-/// Enable key beeps. $WIZ$ type = "boolean"
-#define CONFIG_KBD_BEEP 0
-
-/// Enable long pression handler for keys. $WIZ$ type = "boolean"
-#define CONFIG_KBD_LONGPRESS 0
-
-/// Enable calling poor man's scheduler to be called inside kbd_peek. $WIZ$ type = "boolean"
-#define CONFIG_KBD_SCHED 0
-
-#endif /* CFG_KBD_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for KFile interface module.
- *
- * \version $Id: cfg_kfile.h 2348 2009-02-16 13:43:44Z duplo $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_KFILE_H
-#define CFG_KFILE_H
-
-/**
- * Module logging level.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KFILE_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KFILE_LOG_FORMAT LOG_FMT_TERSE
-
-/**
- * Enable the gets function with echo.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KFILE_GETS 1
-
-#endif /* CFG_KFILE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for lcd display module.
- *
- * \version $Id: cfg_lcd.h 2563 2009-04-20 09:47:08Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_LCD_H
-#define CFG_LCD_H
-
-/**
- * Use 4 bit addressing mode.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_LCD_4BIT 0
-
-/**
- * Use a table to speed up LCD memory addressing.
- * This will use about 100 bytes of RAM.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_LCD_ADDRESS_FAST 1
-
-/**
- * LCD setting for 32122A (AVR implementation).
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "avr and False"
- */
-#define CONFIG_LCD_SOFTINT_REFRESH 0
-
-/**
- * LCD setting for 32122A (AVR implementation).
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "avr and False"
- */
-#define CONFIG_LCD_WAIT 1
-
-
-#endif /* CFG_LCD_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for the LM75 sensor temperature.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_LM75_H
-#define CFG_LM75_H
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define LM75_LOG_LEVEL LOG_LVL_WARN
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define LM75_LOG_FORMAT LOG_FMT_TERSE
-
-#endif /* CFG_AX25_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for MD2 module.
- *
- * \version $Id: cfg_md2.h 2582 2009-04-20 12:33:48Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_MD2_H
-#define CFG_MD2_H
-
-/**
- * Size of block for MD2 algorithm.
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_MD2_BLOCK_LEN 16
-
-/// Use standard permutation in MD2 algorithm. $WIZ$ type = "boolean"
-#define CONFIG_MD2_STD_PERM 0
-
-#endif /* CFG_MD2_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel monitor configuration parameters
- *
- * \version $Id: cfg_monitor.h 2418 2009-03-25 15:57:34Z batt $
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_MONITOR_H
-#define CFG_MONITOR_H
-
-/**
- * Process monitor.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_MONITOR 1
-
-#endif /* CFG_MONITOR_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for NMEA module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_NMEA_H
-#define CFG_NMEA_H
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define NMEA_LOG_LEVEL LOG_LVL_ERR
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define NMEA_LOG_FORMAT LOG_FMT_TERSE
-
-
-/**
- * Maximum number of sentence parsers supported.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_NMEAP_MAX_SENTENCES 8
-
-/**
- * Max length of a complete sentence. The standard says 82 bytes, but its probably
- * better to go at least 128 since some units don't adhere to the 82 bytes
- * especially for proprietary sentences.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_NMEAP_MAX_SENTENCE_LENGTH 255
-
-/**
- * Max tokens in one sentence. 24 is enough for any standard sentence.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_NMEAP_MAX_TOKENS 24
-
-#endif /* CFG_NMEA_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for phase module.
- *
- * \version $Id: cfg_phase.h 2582 2009-04-20 12:33:48Z batt $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_PHASE_H
-#define CFG_PHASE_H
-
-/**
- * Max value of the duty cycle on triac.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_TRIAC_MAX_DUTY 100
-
-/**
- * Max value of the triac power.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_TRIAC_MAX_POWER 100
-
-#endif /* CFG_PHASE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for pocketbus module.
- *
- * \version $Id: cfg_pocketbus.h 2580 2009-04-20 12:25:57Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_POCKETBUS_H
-#define CFG_POCKETBUS_H
-
-/**
- *Buffer len for pockebus protocol.
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_POCKETBUS_BUFLEN 128
-
-#endif /* CFG_POCKETBUS_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel configuration parameters
- *
- * \version $Id: cfg_proc.h 3255 2010-03-22 16:13:13Z batt $
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_PROC_H
-#define CFG_PROC_H
-
-/**
- * Enable the multithreading kernel.
- *
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN 1
-
-/**
- * Kernel interrupt supervisor. WARNING: Experimental, still incomplete!
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_KERN_IRQ 0
-
-/**
- * Preemptive process scheduling.
- *
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "timer"
- */
-#define CONFIG_KERN_PREEMPT 1
-
-/**
- * Time sharing quantum (a prime number prevents interference effects) [ms].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_KERN_QUANTUM 11
-
-/**
- * Priority-based scheduling policy.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PRI 1
-
-/**
- * Dynamic memory allocation for processes.
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "heap"
- */
-#define CONFIG_KERN_HEAP 1
-
-/**
- * Size of the dynamic memory pool used by processes.
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define CONFIG_KERN_HEAP_SIZE 16384L
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KERN_LOG_LEVEL LOG_LVL_ERR
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KERN_LOG_FORMAT LOG_FMT_VERBOSE
-
-#endif /* CFG_PROC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * -->
- *
- * \brief Configuration file for PWM module.
- *
- * \version $Id: cfg_pwm.h 2348 2009-02-16 13:43:44Z duplo $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_PWM_H
-#define CFG_PWM_H
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define PWM_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define PWM_LOG_FORMAT LOG_FMT_VERBOSE
-
-#endif /* CFG_PWM_H */
+++ /dev/null
- /**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file Ramp algorithm module.
- *
- * \version $Id: cfg_ramp.h 2582 2009-04-20 12:33:48Z batt $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_RAMP_H
-#define CFG_RAMP_H
-
-/**
- * Define whether the ramp will use floating point calculation within ramp_evaluate().
- * Otherwise, a less precise fixed point version will be used, which is faster on
- * platforms which do no support floating point operations.
- *
- * \note Floating point operations will be always done within ramp_compute() to
- * precalculate values, so there has to be at least a floating point emulation support.
- *
- * $WIZ$ type = "boolean"
- */
-#define RAMP_USE_FLOATING_POINT 0
-
-
-#if !RAMP_USE_FLOATING_POINT
-
- /**
- * Number of least-significant bits which are stripped away during ramp evaluation.
- * This setting allows to specify larger ramps at the price of less precision.
- *
- * The maximum ramp size allowed is 2^(24 + RAMP_CLOCK_SHIFT_PRECISION), in clocks.
- * For instance, using RAMP_CLOCK_SHIFT_PRECISION 1, and a 8x prescaler, the maximum
- * length of a ramp is about 6.7 secs. Raising RAMP_CLOCK_SHIFT_PRECISION to 2
- * brings the maximum length to 13.4 secs, at the price of less precision.
- *
- * ramp_compute() will check that the length is below the maximum allowed through
- * a runtime assertion.
- *
- * \note This macro is used only for the fixed-point version of the ramp.
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- * $WIZ$ max = 32
- */
- #define RAMP_CLOCK_SHIFT_PRECISION 2
-#endif
-
-
-/**
-* Negative pulse width for ramp.
-* $WIZ$ type = "int"
-* $WIZ$ min = 1
-*/
-#define RAMP_PULSE_WIDTH 50
-
-/**
- * Default ramp time (microsecs).
- * $WIZ$ type = "int"
- * $WIZ$ min = 1000
- */
-#define RAMP_DEF_TIME 6000000UL
-/**
- * Default ramp maxfreq (Hz).
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define RAMP_DEF_MAXFREQ 5000
-/**
- * Default ramp minfreq (Hz).
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define RAMP_DEF_MINFREQ 200
-/**
- * Default ramp powerrun (deciampere).
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define RAMP_DEF_POWERRUN 10
-/**
- * Default ramp poweridle (Hz).
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define RAMP_DEF_POWERIDLE 1
-
-#endif /* CFG_RAMP_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for randpool module.
- *
- * \version $Id: cfg_randpool.h 2950 2009-09-16 10:08:31Z asterix $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_RANDPOOL_H
-#define CFG_RANDPOOL_H
-
-
-/**
- * Define a size, in byte, of entropy pool.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_SIZE_ENTROPY_POOL 64
-
-/// Enable timer in randpool algo. $WIZ$ type = "boolean"
-#define CONFIG_RANDPOOL_TIMER 1
-
-#endif /* CFG_RANDPOOL_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel semaphores configuration parameters.
- *
- * \version $Id: cfg_sem.h 2418 2009-03-25 15:57:34Z batt $
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SEM_H
-#define CFG_SEM_H
-
-/**
- * Re-entrant mutual exclusion primitives.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SEMAPHORES 0
-
-#endif /* CFG_SEM_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for serial module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_SER_H
-#define CFG_SER_H
-
-/**
- * Example of setting for serial port and
- * spi port.
- * Edit these define for your project.
- */
-
-/**
- * Size of the outbound FIFO buffer for port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_UART0_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_UART0_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2 or (at91 and not atmega8 and not atmega168 and not atmega32)"
- */
-#define CONFIG_UART1_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2 or (at91 and not atmega8 and not atmega168 and not atmega32)"
- */
-#define CONFIG_UART1_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 2 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2"
- */
-#define CONFIG_UART2_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 2 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2"
- */
-#define CONFIG_UART2_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 3 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lpc2"
- */
-#define CONFIG_UART3_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 3 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lpc2"
- */
-#define CONFIG_UART3_RXBUFSIZE 32
-
-
-/**
- * Size of the outbound FIFO buffer for SPI port [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for SPI port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI0_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI0_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for SPI port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI1_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI1_RXBUFSIZE 32
-
-/**
- * SPI data order.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_order_bit"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_DATA_ORDER SER_MSB_FIRST
-
-/**
- * SPI clock division factor.
- * $WIZ$ type = "int"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_DIV 16
-
-/**
- * SPI clock polarity: normal low or normal high.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_spi_pol"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_POL SPI_NORMAL_LOW
-
-/**
- * SPI clock phase you can choose sample on first edge or
- * sample on second clock edge.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_spi_phase"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_PHASE SPI_SAMPLE_ON_FIRST_EDGE
-
-/**
- * Default transmit timeout (ms). Set to -1 to disable timeout support.
- * $WIZ$ type = "int"
- * $WIZ$ min = -1
- */
-#define CONFIG_SER_TXTIMEOUT -1
-
-/**
- * Default receive timeout (ms). Set to -1 to disable timeout support.
- * $WIZ$ type = "int"
- * $WIZ$ min = -1
- */
-#define CONFIG_SER_RXTIMEOUT -1
-
-/**
- * Use RTS/CTS handshake.
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_SER_HWHANDSHAKE 0
-
-/**
- * Default baudrate for all serial ports (set to 0 to disable).
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define CONFIG_SER_DEFBAUDRATE 0UL
-
-/// Enable strobe pin for debugging serial interrupt. $WIZ$ type = "boolean"
-#define CONFIG_SER_STROBE 0
-
-#endif /* CFG_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel signals configuration parameters
- *
- * \version $Id: cfg_signal.h 2418 2009-03-25 15:57:34Z batt $
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SIGNAL_H
-#define CFG_SIGNAL_H
-
-/**
- * Inter-process signals.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SIGNALS 0
-
-#endif /* CFG_SIGNAL_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for SPI bitbang module.
- *
- * \version $Id: cfg_spi_bitbang.h 2348 2009-02-16 13:43:44Z duplo $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_SPI_BITBANG_H
-#define CFG_SPI_BITBANG_H
-
-/**
- * Set data order for emulated SPI.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ordet_bit_list"
- */
-#define CONFIG_SPI_DATAORDER SPI_LSB_FIRST
-
-#endif /* CFG_SPI_BITBANG_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for stepper motor module.
- *
- * \version $Id: cfg_stepper.h 2582 2009-04-20 12:33:48Z batt $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_STEPPER_H
-#define CFG_STEPPER_H
-
-/**
- * Module logging level.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define STEPPER_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define STEPPER_LOG_FORMAT LOG_FMT_TERSE
-
-/**
- * Max number of the stepper motor.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_NUM_STEPPER_MOTORS 6
-
-/**
- * Max number of the timer usable on target to drive stepper motor.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_TC_STEPPER_MAX_NUM 6
-
-#endif /* CFG_STEPPER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for the TAS5706A module.
- *
- * \version $Id: cfg_tas5706a.h 2740 2009-07-06 08:16:22Z lottaviano $
- * \author Luca Ottaviano <lottaviano@develer.com>
- */
-
-#ifndef CFG_TAS5706A_H
-#define CFG_TAS5706A_H
-
-/**
- * Maximum output volume for TAS chip [dB].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = -100
- * $WIZ$ max = 24
- */
-#define CONFIG_TAS_MAX_VOL -39
-
-#endif /* CFG_TAS5706A_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for thermo module.
- *
- * \version $Id: cfg_thermo.h 2574 2009-04-20 10:50:42Z batt $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_THERMO_H
-#define CFG_THERMO_H
-
-/**
- * Interval at which thermo control is performed [ms].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_THERMO_INTERVAL_MS 100
-
-/**
- * Number of different samples we interpolate over to get the hifi temperature.
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_THERMO_HIFI_NUM_SAMPLES 10
-
-#endif /* CFG_THERMO_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for timer module.
- *
- * \version $Id: cfg_timer.h 2348 2009-02-16 13:43:44Z duplo $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_TIMER_H
-#define CFG_TIMER_H
-
-/**
- * Hardware timer selection for drv/timer.c.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "timer_select"
- */
-#define CONFIG_TIMER TIMER_DEFAULT
-
-/**
- * Debug timer interrupt using a strobe pin.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_STROBE 0
-
-/**
- * Enable asynchronous timers.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_EVENTS 1
-
-/**
- * Support hi-res timer_usleep().
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_UDELAY 1
-
-#endif /* CFG_TIMER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for watchdog module.
- *
- * \version $Id: cfg_wdt.h 2576 2009-04-20 11:03:51Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_WDT_H
-#define CFG_WDT_H
-
-/// Enable watchdog timer. $WIZ$ type = "autoenabled"
-#define CONFIG_WATCHDOG 0
-
-#endif /* CFG_WDT_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for xmodem module.
- *
- * \version $Id: cfg_xmodem.h 2579 2009-04-20 12:25:40Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_XMODEM_H
-#define CFG_XMODEM_H
-
-/// Enable Rx. $WIZ$ type = "boolean"
-#define CONFIG_XMODEM_RECV 1
-
-/// Enable TX. $WIZ$ type = "boolean"
-#define CONFIG_XMODEM_SEND 1
-
-/// Allow a Rx/Tx of 1Kbyte block. $WIZ$ type = "boolean"
-#define CONFIG_XMODEM_1KCRC 1
-
-/**
- * Max retries before giving up.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_XMODEM_MAXRETRIES 15
-
-/**
- * Max retries before switching to BCC.
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_XMODEM_MAXCRCRETRIES 7
-
-#endif /* CFG_XMODEM_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief AFSK modem hardware-specific definitions.
- *
- * \version $Id: hw_afsk.h 3072 2009-10-10 13:01:56Z batt $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_AFSK_H
-#define HW_AFSK_H
-
-#include "cfg/cfg_arch.h"
-
-#warning TODO:This is an example implementation, you must implement it!
-
-/**
- * Initialize the specified channel of the ADC for AFSK needs.
- * The adc should be configured to have a continuos stream of convertions.
- * For every convertion there must be an ISR that read the sample
- * and call afsk_adc_isr(), passing the context and the sample.
- *
- * \param ch channel to be used for AFSK demodulation.
- * \param ctx AFSK context (\see Afsk). This parameter must be saved and
- * passed back to afsk_adc_isr() for every convertion.
- */
-#define AFSK_ADC_INIT(ch, ctx) do { (void)ch, (void)ctx; } while (0)
-
-#define AFSK_STROBE_INIT() do { /* Implement me */ } while (0)
-#define AFSK_STROBE_ON() do { /* Implement me */ } while (0)
-#define AFSK_STROBE_OFF() do { /* Implement me */ } while (0)
-
-/**
- * Initialize the specified channel of the DAC for AFSK needs.
- * The DAC has to be configured in order to call an ISR for every sample sent.
- * The DAC doesn't have to start the IRQ immediatly but have to wait
- * the AFSK driver to call AFSK_DAC_IRQ_START().
- * The ISR must then call afsk_dac_isr() passing the AFSK context.
- * \param ch DAC channel to be used for AFSK modulation.
- * \param ctx AFSK context (\see Afsk). This parameter must be saved and
- * passed back to afsk_dac_isr() for every convertion.
- */
-#define AFSK_DAC_INIT(ch, ctx) do { (void)ch, (void)ctx; } while (0)
-
-/**
- * Start DAC convertions on channel \a ch.
- * \param ch DAC channel.
- */
-#define AFSK_DAC_IRQ_START(ch) do { (void)ch; /* Implement me */ } while (0)
-
-/**
- * Stop DAC convertions on channel \a ch.
- * \param ch DAC channel.
- */
-#define AFSK_DAC_IRQ_STOP(ch) do { (void)ch; /* Implement me */ } while (0)
-
-#endif /* HW_AFSK_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2005, 2006, 2008 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti
- * All Rights Reserved.
- * -->
- *
- * \brief Buzzer hardware-specific definitions
- *
- * \version $Id: hw_buzzer.h 2506 2009-04-15 08:29:07Z duplo $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_BUZZER_H
-#define HW_BUZZER_H
-
-#warning TODO:This is an example implementation, you must implement it!
-
-#define BUZZER_BIT 1
-#define IS_BUZZER_ON 0
-#define BUZZER_HW_INIT do { /* Implement me! */ } while (0)
-#define BUZZER_ON do { /* Implement me! */ } while (0)
-#define BUZZER_OFF do { /* Implement me! */ } while (0)
-
-#endif /* HW_BUZZER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Dataflash HW control routines.
- *
- * \version $Id: hw_dataflash.c 1398 2008-05-27 16:36:05Z asterix $
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#include "hw/hw_dataflash.h"
-
-#include <cfg/compiler.h>
-#include <cfg/module.h>
-#include <cfg/macros.h>
-
-#warning TODO:This is an example implementation, you must implement it!
-
-MOD_DEFINE(hw_dataflash);
-
-/**
- * Data flash init function.
- *
- * This function provide to initialize all that
- * needs to drive a dataflash memory.
- * Generaly needs to init pins to drive a CS line
- * and reset line.
- */
-void dataflash_hw_init(void)
-{
-
- //Disable CS line (remove if not needed)
- dataflash_hw_setCS(false);
-
- /*
- * Put here your code!
- *
- * Note:
- * - if you drive manualy CS line, here init a CS pin
- * - if you use a dedicated reset line, here init a reset pin
- */
-
- MOD_INIT(hw_dataflash);
-}
-
-/**
- * Chip Select drive.
- *
- * This function enable or disable a CS line.
- * You must implement this function comply to a dataflash
- * memory datasheet to allow the drive to enable a memory
- * when \p enable flag is true, and disable it when is false.
- */
-void dataflash_hw_setCS(bool enable)
-{
- if (enable)
- {
- /*
- * Put here your code to enable
- * dataflash memory
- */
- }
- else
- {
- /*
- * Put here your code to disable
- * dataflash memory
- */
- }
-}
-
-/**
- * Reset data flash memory.
- *
- * This function provide to send reset signal to
- * dataflash memory. You must impement it comly to a dataflash
- * memory datasheet to allow the drive to set a reset pin
- * when \p enable flag is true, and disable it when is false.
- *
- */
-void dataflash_hw_setReset(bool enable)
-{
- if (enable)
- {
- /*
- * Put here your code to set reset of
- * dataflash memory
- */
- }
- else
- {
- /*
- * Put here your code to clear reset of
- * dataflash memory
- */
- }
-}
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Dataflash HW control routines (interface).
- *
- * \version $Id: hw_dataflash.h 1312 2008-05-20 16:54:52Z asterix $
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_DATAFLASH_H
-#define HW_DATAFLASH_H
-
-#include <cfg/compiler.h>
-
-void dataflash_hw_init(void);
-void dataflash_hw_setCS(bool enable);
-void dataflash_hw_setReset(bool enable);
-
-#endif /* HW_DATAFLASH_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief DC motor hardware-specific definitions
- *
- * \version $Id: hw_dc_motor.h 2859 2009-09-02 09:30:18Z asterix $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_DC_MOTOR_H
-#define HW_DC_MOTOR_H
-
-typedef enum MotorDCMap
-{
-
- /* Put here motor dc declaration */
- MOTOR_DC_CNT
-
-} MotorDCMap;
-
-/*
- * Init all pin and device to manage dc motor.
- */
-#define MOTOR_DC_INIT() \
- do { \
- /* Implement me! */ \
- } while (0)
-
-
-/*
- * Enable DC motor.
- */
-#define DC_MOTOR_ENABLE(dev) \
- do { \
- /* Implement me! */ \
- } while (0)
-
-/*
- * Disable DC motor.
- */
-#define DC_MOTOR_DISABLE(dev) \
- do { \
- /* Implement me! */ \
- } while (0)
-
-/*
- * Set direction for DC motor.
- */
-#define DC_MOTOR_SET_DIR(dev, dir) \
- do { \
- /* Implement me! */ \
- } while (0)
-
-
-#endif /* HW_DC_MOTOR_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief FT245RL USB interface hardware-specific definitions
- *
- * \version $Id: hw_ft245rl.h 1777 2008-09-04 15:19:48Z batt $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_FT245RL_H
-#define HW_FT245RL_H
-
-#warning TODO:This is an example implementation, you must implement it!
-
-#define FT245RL_DATA_IN() /* Implement me! */
-#define FT245RL_DATA_OUT() /* Implement me! */
-#define WR_HI /* Implement me! */
-#define WR_LO /* Implement me! */
-
-#define RD_HI /* Implement me! */
-#define RD_LO /* Implement me! */
-
-#define FT245RL_INIT() \
-do \
-{ \
- /* Implement me! */ \
-} while(0)
-
-#define FT245RL_DATA_RDY() (/* Implement me! */ false)
-#define FT245RL_GETDATA() ({/* Implement me! */ (0);})
-#define FT245RL_TX_ALLOWED() (/* Implement me! */ false)
-#define FT245RL_SETDATA(data) do {/* Implement me! */ (void)((data)); } while(0)
-
-#endif /* HW_FT245RL_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006, 2008 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- * All Rights Reserved.
- * -->
- *
- * \brief Macro for I2C bitbang operation.
- *
- *
- * \version $Id: hw_i2c_bitbang.h 2506 2009-04-15 08:29:07Z duplo $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_I2C_BITBANG_H
-#define HW_I2C_BITBANG_H
-
-#warning TODO:This is an example implementation, you must implement it!
-
-#define SDA_HI do { /* Implement me:Set SDA High by setting SDA pin as input */ } while (0)
-#define SDA_LO do { /* Implement me:Set SDA Low by setting SDA pin as open collector output */ } while (0)
-#define SCL_HI do { /* Implement me:Set SCL High by setting SCL pin as input */ } while (0)
-#define SCL_LO do { /* Implement me:Set SCL Low by setting SCL pin as open collector output */ } while (0)
-
-
-#define SCL_IN (true) /* Implement me: read SDA pin state */
-#define SDA_IN (true) /* Implement me: read SCL pin state */
-
-/**
- * This macro should set SDA and SCL lines as input.
- */
-#define I2C_BITBANG_HW_INIT do { /* Implement me! */ } while (0)
-
-/**
- * Half bit delay routine used to generate the correct timings.
- */
-#define I2C_HALFBIT_DELAY() do { /* Implement me! */ } while (0)
-
-#endif /* HW_I2C_BITBANG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2005, 2006, 2008 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti
- * All Rights Reserved.
- * -->
- *
- * \brief Keyboard hardware-specific definitions
- *
- * \version $Id: hw_kbd.h 2649 2009-04-23 12:51:28Z duplo $
- *
- * \author Francesco Sacchi <batt@develer.com>
- * \author Stefano Fedrigo <a@develer.com>
- */
-
-#ifndef HW_KBD_H
-#define HW_KBD_H
-
-#include "hw/kbd_map.h"
-
-#include <cfg/macros.h>
-
-#warning TODO:This is an example implementation, you must implement it!
-
-#define K_RPT_MASK (K_UP | K_DOWN | K_OK | K_CANCEL)
-
-#define KBD_HW_INIT \
- do { \
- /* Put here code to init hw */ \
- } while (0)
-
-EXTERN_C int emul_kbdReadCols(void);
-
-/**
- * Read the keyboard ports and return the mask of
- * depressed keys.
- */
-INLINE keymask_t kbd_readkeys(void)
-{
- /* Implement me! */
-
- //Only for test remove when implement this function
- return 0;
-}
-
-#endif /* HW_KBD_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2005, 2006, 2010 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2001 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Displaytech 32122A LCD driver
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- * \author Stefano Fedrigo <aleph@develer.com>
- *
- */
-
-#ifndef HW_LCD_32122A_H
-#define HW_LCD_32122A_H
-
-#include <cpu/types.h>
-#include <cpu/irq.h>
-
-#warning TODO:This is an example implementation, you must implement it!
-
-/**
- * Predefined LCD PWM contrast values
- */
-#define LCD_DEF_PWM 145
-#define LCD_MAX_PWM 505
-#define LCD_MIN_PWM 130
-#define LCD_PWM_CH 0
-
-
-/**
- * \name LCD I/O pins/ports
- * @{
- */
-#define LCD_RS /* Implement me! */
-#define LCD_RW /* Implement me! */
-#define LCD_PE_E1 /* Implement me! */
-#define LCD_PE_E2 /* Implement me! */
-#define LCD_DB0 /* Implement me! */
-#define LCD_DB1 /* Implement me! */
-#define LCD_DB2 /* Implement me! */
-#define LCD_DB3 /* Implement me! */
-#define LCD_DB4 /* Implement me! */
-#define LCD_DB5 /* Implement me! */
-#define LCD_DB6 /* Implement me! */
-#define LCD_DB7 /* Implement me! */
-#define LCD_PF_DB0 /* Implment me! */
-/*@}*/
-
-/**
- * \name LCD bus control macros
- * @{
- */
-#define LCD_CLR_A0 do { /* Implement me! */ } while (0)
-#define LCD_SET_A0 do { /* Implement me! */ } while (0)
-#define LCD_CLR_RD do { /* Implement me! */ } while (0)
-#define LCD_SET_RD do { /* Implement me! */ } while (0)
-#define LCD_CLR_E1 do { /* Implement me! */ } while (0)
-#define LCD_SET_E1 do { /* Implement me! */ } while (0)
-#define LCD_CLR_E2 do { /* Implement me! */ } while (0)
-#define LCD_SET_E2 do { /* Implement me! */ } while (0)
-#define LCD_SET_E(x) do { (void)x; /* Implement me! */ } while (0)
-#define LCD_CLR_E(x) do { (void)x; /* Implement me! */ } while (0)
-/*@}*/
-
-/**
- * \name Chip select bits for LCD_SET_E()
- * @{
- */
-#define LCDF_E1 ( 0/* Implement me! */)
-#define LCDF_E2 ( 0/* Implement me! */)
-/*@}*/
-/** Read from the LCD data bus (DB[0-7]) */
-#define LCD_WRITE(x) ((void)x)/* Implement me! */
-/** Write to the LCD data bus (DB[0-7]) */
-#define LCD_READ (0 /* Implement me! */ )
-
-/** Set data bus direction to output (write to display) */
-#define LCD_DB_OUT /* Implement me! */
-
-/** Set data bus direction to input (read from display) */
-#define LCD_DB_IN /* Implement me! */
-
-/** Delay for write (Enable pulse width, 220ns) */
-#define LCD_DELAY_WRITE \
- do { \
- NOP; \
- NOP; \
- NOP; \
- NOP; \
- NOP; \
- } while (0)
-
-/** Delay for read (Data ouput delay time, 120ns) */
-#define LCD_DELAY_READ \
- do { \
- NOP; \
- NOP; \
- NOP; \
- NOP; \
- } while (0)
-
-
-#define LCD_32122_RESET() do { /* Implement me! */ } while (0)
-
-INLINE void lcd_32122a_hw_bus_init(void)
-{
- cpu_flags_t flags;
- IRQ_SAVE_DISABLE(flags);
-
- /*
- * Here set bus pin!
- * to init a lcd device.
- *
- */
-
- /*
- * Data bus is in output state most of the time:
- * LCD r/w functions assume it is left in output state
- */
- LCD_DB_OUT;
-
-
- IRQ_RESTORE(flags);
-}
-
-#endif /* HW_LCD_32122A_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2005, 2008 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2001 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief LCD low-level hardware macros
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- * \author Stefano Fedrigo <aleph@develer.com>
- *
- */
-
-#ifndef HW_LCD_HD44_H
-#define HW_LCD_HD44_H
-
-#include "cfg/cfg_lcd_hd44.h" /* CONFIG_LCD_4BIT */
-
-#include <cpu/types.h>
-#include <cpu/irq.h>
-
-#warning TODO:This is an example implementation, you must implement it!
-
-/**
- * \name LCD I/O pins/ports
- * @{
- */
-#define LCD_RS /* Implement me! */
-#define LCD_RW /* Implement me! */
-#define LCD_E /* Implement me! */
-#define LCD_DB0 /* Implement me! */
-#define LCD_DB1 /* Implement me! */
-#define LCD_DB2 /* Implement me! */
-#define LCD_DB3 /* Implement me! */
-#define LCD_DB4 /* Implement me! */
-#define LCD_DB5 /* Implement me! */
-#define LCD_DB6 /* Implement me! */
-#define LCD_DB7 /* Implement me! */
-/*@}*/
-
-/**
- * \name DB high nibble (DB[4-7])
- * @{
- */
-
-#if CONFIG_LCD_4BIT
- #define LCD_MASK (LCD_DB7 | LCD_DB6 | LCD_DB5 | LCD_DB4)
- #define LCD_SHIFT 4
-#else
- #define LCD_MASK (uint8_t)0xff
- #define LCD_SHIFT 0
-#endif
-/*@}*/
-
-/**
- * \name LCD bus control macros
- * @{
- */
-#define LCD_CLR_RS /* Implement me! */
-#define LCD_SET_RS /* Implement me! */
-#define LCD_CLR_RD /* Implement me! */
-#define LCD_SET_RD /* Implement me! */
-#define LCD_CLR_E /* Implement me! */
-#define LCD_SET_E /* Implement me! */
-
-/* Enter command mode */
-#define LCD_SET_COMMAND() /* Implement me! */
-
-/* Enter data mode */
-#define LCD_SET_DATA() /* Implement me! */
-
-#if CONFIG_LCD_4BIT
- #define LCD_WRITE_H(x) ((void)x)/* Implement me! */
- #define LCD_WRITE_L(x) ((void)x)/* Implement me! */
- #define LCD_READ_H ( 0 /* Implement me! */ )
- #define LCD_READ_L ( 0 /* Implement me! */ )
-#else
- #define LCD_WRITE(x) ((void)x)/* Implement me! */
- #define LCD_READ (0 /* Implement me! */ )
-#endif
-/*@}*/
-
-/** Set data bus direction to output (write to display) */
-#define LCD_DB_OUT /* Implement me! */
-
-/** Set data bus direction to input (read from display) */
-#define LCD_DB_IN /* Implement me! */
-/** Delay for write (Enable pulse width, 220ns) */
-#define LCD_DELAY_WRITE \
- do { \
- NOP; \
- NOP; \
- NOP; \
- NOP; \
- NOP; \
- } while (0)
-
-/** Delay for read (Data ouput delay time, 120ns) */
-#define LCD_DELAY_READ \
- do { \
- NOP; \
- NOP; \
- NOP; \
- NOP; \
- } while (0)
-
-
-
-INLINE void lcd_hd44_hw_bus_init(void)
-{
- cpu_flags_t flags;
- IRQ_SAVE_DISABLE(flags);
-
- /*
- * Here set bus pin!
- * to init a lcd device.
- *
- */
-
- /*
- * Data bus is in output state most of the time:
- * LCD r/w functions assume it is left in output state
- */
- LCD_DB_OUT;
-
-
- IRQ_RESTORE(flags);
-}
-
-#endif /* HW_LCD_HD44_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
- * -->
- *
- * \brief LED on/off macros for LPC-P2378.
- *
- * \author Andrea Righi <arighi@develer.com>
- */
-
-#ifndef HW_LED_H
-#define HW_LED_H
-
-#include <io/lpc23xx.h>
-
-#define STATUS_LED (1 << 19)
-
-#define LED_ON() do { IOCLR1 = STATUS_LED; } while (0)
-#define LED_OFF() do { IOSET1 = STATUS_LED; } while (0)
-
-#define LED_INIT() do { IODIR1 |= STATUS_LED; } while (0)
-
-#endif /* HW_LED_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Hardware macro definition.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_LM75_H
-#define HW_LM75_H
-
-#warning TODO:This is an example implentation, you must implement it!
-
-#define LM75_HW_INIT() \
- do { \
- /* Pin init */\
- } while (0)
-
-#endif /* HW_LM75_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * -->
- *
- * \brief MCP41 hardware-specific definitions
- *
- * \version $Id: hw_mcp41.c 2506 2009-04-15 08:29:07Z duplo $
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#include "hw/hw_mcp41.h"
-
-#include <cfg/macros.h>
-#include <cfg/compiler.h>
-
-#warning TODO:This is an example implementation, you must implement it!
-
-const uint16_t mcp41_ports[MCP41_CNT] =
-{
- 0, /* add here mcp41 ports */
-};
-const uint8_t mcp41_pins [MCP41_CNT] =
-{
- 0, /* add here mcp41 ports */
-};
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2005 Develer S.r.l. (http://www.develer.com/)
- * -->
- *
- * \brief MCP41 hardware-specific definitions
- *
- * \version $Id: hw_mcp41.h 2544 2009-04-17 14:21:09Z batt $
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_MCP41_H
-#define HW_MCP41_H
-
-#include "hw/mcp41_map.h"
-
-#include <cfg/compiler.h>
-
-
-#warning TODO:This is an example implementation, you must implement it!
-
-
-INLINE void SET_MCP41_DDR(Mcp41Dev dev)
-{
- /* Implement me! */
- //Warning: this funtions is like avr target name,
- //fix it to comply for all target.
-
- //Only for test remove when implement this function
- (void)dev;
-}
-
-INLINE void MCP41_ON(Mcp41Dev i)
-{
- /* Implement me! */
-
- //Only for test remove when implement this function
- (void)i;
-}
-
-INLINE void MCP41_OFF(Mcp41Dev i)
-{
- /* Implement me! */
-
- //Only for test remove when implement this function
- (void)i;
-}
-
-#endif /* HW_MCP41_H */
+++ /dev/null
-/**\r
- * \file\r
- * <!--\r
- * This file is part of BeRTOS.\r
- *\r
- * Bertos is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\r
- *\r
- * As a special exception, you may use this file as part of a free software\r
- * library without restriction. Specifically, if other files instantiate\r
- * templates or use macros or inline functions from this file, or you compile\r
- * this file and link it with other files to produce an executable, this\r
- * file does not by itself cause the resulting executable to be covered by\r
- * the GNU General Public License. This exception does not however\r
- * invalidate any other reasons why the executable file might be covered by\r
- * the GNU General Public License.\r
- *\r
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)\r
- * All Rights Reserved.\r
- * -->\r
- *\r
- * \brief NTC hardware-specific definition\r
- *\r
- * \version $Id: hw_ntc.h 1359 2008-05-26 09:42:37Z asterix $\r
- * \author Lorenzo Berni <duplo@develer.com>\r
- * \r
- */\r
-\r
-#include <drv/ntc.h>\r
-#include "hw/ntc_map.h"\r
-\r
-const res_t NTC_RSER[NTC_CNT];\r
-const res_t NTC_RPAR[NTC_CNT];\r
-const amp_t NTC_AMP[NTC_CNT];\r
-const NtcHwInfo* NTC_INFO[NTC_CNT];\r
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief NTC hardware-specific definition
- *
- * \version $Id: hw_ntc.h 1359 2008-05-26 09:42:37Z asterix $
- * \author Francesco Sacchi <batt@develer.com>
- *
- * A NTC acts as a variable resistor, whose resistance changes as a
- * function of the temperature it measures. To sample it correctly, it is
- * usually parallelized and serialized with two fixed resistor. The following diagram shows
- * what is the exact disposition of the components, as handled by this
- * library:
- *
- *<pre>
- * o Vref
- * |
- * | o Vref
- * | |
- * ----- |
- * | | ---------
- * | Rser| | |
- * | | | |
- * ----- ----- | ADC |
- * | Vp | | | |
- * -----------|------| Amp |-------------| |
- * | | | | Vadc | |
- * ----- ----- ----- ---------
- * | | | |
- * | NTC | | Rpar|
- * | | | |
- * ----- -----
- * | |
- * | |
- * ----- -----
- * --- ---
- *</pre>
- * Amp is an amplifier that amplify of AMP times the signal.
- * If we indicate Rp as the parallel of NTC with Rpar, ADCBITS as the bits of the ad converter
- * and ADCVAL as the result from the adc convertion (Not Vadc but just the value read
- * from the adc register), after various calculation, the expression of Rp is:
- *
- *<pre>
- *
- * ADCVAL * Rser
- * Rp = ------------------------
- * ADCBITS
- * 2 * AMP - ADCVAL
- *</pre>
- *
- * And after that NTC obvisiously is:
- *<pre>
- * Rpar * Rp
- * NTC = ----------
- * Rpar - Rp
- *</pre>
- *
- *
- * The function ntc_hw_read() compute the resistence using these formulas above.
- */
-
-#ifndef HW_NTC_H
-#define HW_NTC_H
-
-#include "ntc_map.h"
-
-#include <cfg/debug.h>
-
-#include <drv/ntc.h>
-#include <drv/adc.h>
-
-#warning TODO:This is an example implementation, you must implement it!
-
-extern const res_t NTC_RSER[NTC_CNT];
-extern const res_t NTC_RPAR[NTC_CNT];
-extern const amp_t NTC_AMP[NTC_CNT];
-extern const NtcHwInfo* NTC_INFO[NTC_CNT];
-
-
-/*!
- * Read the resistence of ntc device \a dev.
- * Return the result in res_t type.
- */
-INLINE res_t ntc_hw_read(NtcDev dev)
-{
- ASSERT(dev < NTC_CNT);
- // See above for formula explanation.
- adcread_t adcval = adc_read((uint16_t)dev);
- float rp = (adcval * NTC_RSER[dev] ) / ((1 << adc_bits()) * NTC_AMP[dev] - adcval);
-
- //kprintf("Rp[%f], Rntc[%f]\n", rp/100, ((NTC_RPAR[dev] * rp) / (NTC_RPAR[dev] - rp)) / 100.0);
-
- return ( (NTC_RPAR[dev] * rp) / (NTC_RPAR[dev] - rp) );
-}
-
-
-/*!
- * Return the info (aka the table) associated with ntc device \a dev.
- */
-INLINE const NtcHwInfo* ntc_hw_getInfo(NtcDev dev)
-{
- return NTC_INFO[dev];
-}
-
-#define NTC_HW_INIT do { /* Implement me! */ } while(0)
-
-#endif /* HW_NTC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Phase control hardware-specific definitions
- *
- * \version $Id: hw_phase.c 1398 2008-05-27 16:36:05Z asterix $
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_PHASE_H
-#define HW_PHASE_H
-
-#include "hw/hw_phase.h"
-
-#warning TODO:This is an example implementation, you must implement it!
-
-#endif /* HW_PHASE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Phase control hardware-specific definitions
- *
- * \version $Id: hw_phase.h 2564 2009-04-20 09:51:04Z batt $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_PHASE_H
-#define HW_PHASE_H
-
-#include "hw/phase_map.h"
-
-#include <cfg/compiler.h>
-
-#warning TODO:This is an example implementation, you must implement it!
-
-#define PHASE_HW_INIT do { /* Implement me! */ }while (0)
-
-INLINE void TRIAC_OFF(TriacDev i)
-{
- /* Implement me! */
-
- //Only for test remove when implement this function
- (void)i;
-}
-
-
-INLINE void TRIAC_ON(TriacDev i)
-{
- /* Implement me! */
-
- //Only for test remove when implement this function
- (void)i;
-}
-
-INLINE void SET_TRIAC_DDR(TriacDev i)
-{
- /* Implement me! */
-
- //Only for test remove when implement this function
- (void)i;
-}
-
-void zerocross_isr(void);
-#define DEFINE_ZEROCROSS_ISR() void zerocross_isr(void)
-
-
-#endif /* HW_PHASE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief SD driver hardware-specific definitions.
- *
- * \version $Id: hw_sd.h 2834 2009-08-31 18:11:02Z batt $
- *
- * \author Luca Ottaviano <lottaviano@develer.com>
- */
-
-#ifndef HW_SD_H
-#define HW_SD_H
-
-#warning FIXME: This is an example implementation, you must implement it
-
-#define SD_CS_INIT() do { /* implement me */} while(0)
-#define SD_CS_ON() do { /* implement me */} while(0)
-#define SD_CS_OFF() do { /* implement me */} while(0)
-
-#define SD_PIN_INIT() do { /* implement me */} while(0)
-#define SD_CARD_PRESENT() true /* implement me */
-#define SD_WRITE_PROTECT() false /* implement me */
-
-#endif /* HW_SD_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Serial hardware-specific definitions
- *
- * \version $Id: hw_ser.h 2883 2009-09-04 19:46:02Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_SER_H
-#define HW_SER_H
-
-#include "cfg/cfg_ser.h"
-
-#if CONFIG_SER_STROBE
- #warning FIXME: this is an example implementation, you must implement it
-
- #define SER_STROBE_INIT do { /* implement me */ } while (0)
- #define SER_STROBE_ON do { /* implement me */ } while (0)
- #define SER_STROBE_OFF do { /* implement me */ } while (0)
-#endif
-
-#endif /* HW_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006, 2008, 2009 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- * All Rights Reserved.
- * -->
- *
- * \brief Macro for HW_SIPO_H
- *
- *
- * \version $Id: hw_sipo.h 2882 2009-09-04 19:17:37Z batt $
- *
- * \author Andrea Grandi <andrea@develer.com>
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_SIPO_H
-#define HW_SIPO_H
-
-/**
- * Map sipo connection on board.
- */
-typedef enum SipoMap
-{
- SIPO_CNT
-} SipoMap;
-
-/**
- * Define generic macro to set pins logic level
- */
-#define SIPO_SET_LEVEL_LOW(dev) do { /* Implement me! */ } while (0)
-#define SIPO_SET_LEVEL_HIGH(dev) do { /* Implement me! */ } while (0)
-
-
-/**
- * Generate one low pulse on select line.
- */
-#define PULSE_LOW(dev) do { /* Implement me! */ } while (0)
-
-/**
- * Generate one hight pulse on select line.
- */
-#define PULSE_HIGH(dev) do { /* Implement me! */ } while (0)
-
-
-/**
- * Define the procedure to drive serial input in sipo device (SI).
- */
-#define SIPO_SI_HIGH() do { /* Implement me! */ } while (0)
-#define SIPO_SI_LOW() do { /* Implement me! */ } while (0)
-
-/**
- * Drive clock to shift SI data into latch.
- */
-#define SIPO_SI_CLOCK(clk_pol) \
- do { \
- (void)clk_pol; \
- /* Implement me! */ \
- } while (0)
-
-/**
- * Do everything needed in order to load dato into sipo.
- */
-#define SIPO_LOAD(device, load_pol) do { /* Implement me! */ } while (0)
-
-/**
- * Enable the shift register output.
- */
-#define SIPO_ENABLE() do { /* Implement me! */ } while (0)
-
-/**
- * Set polarity for Load, Clk, SI signals.
- */
-#define SIPO_SET_LD_LEVEL(device, load_pol) do { /* Implement me! */ } while (0)
-#define SIPO_SET_CLK_LEVEL(clock_pol) do { /* Implement me! */ } while (0)
-#define SIPO_SET_SI_LEVEL() do { /* Implement me! */ } while (0)
-
-/**
- * Do anything that needed to init sipo pins.
- */
-#define SIPO_INIT_PIN() do { /* Implement me! */ } while (0)
-
-#endif /* HW_SIPO_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Hardware macro definition.
- *
- *
- * \version $Id: hw_spi.h 1357 2008-05-26 09:30:19Z asterix $
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_SPI_H
-#define HW_SPI_H
-
-#warning TODO:This is an example implentation, you must implement it!
-
-#include <cfg/macros.h>
-
-/**
- * SPI pin definition.
- *
- * \note CS is assert when level
- * is low.
- *
- * \{
- */
-#define CS /* pin */ ///Connect to CS pin of Flash memory.
-#define SCK /* pin */ ///Connect to SCK pin of Flash memory.
-#define MOSI /* pin */ ///Connect to SI pin of Flash memory.
-#define MISO /* pin */ ///Connect to SO pin of Flash memory.
-#define SPI_PORT /* pin */ ///Micro pin PORT register.
-#define SPI_PIN /* pin */ ///Micro pin PIN register.
-#define SPI_DDR /* pin */ ///Micro pin DDR register.
-/*\}*/
-
-/**
- * Pin logic level.
- *
- * \{
- */
-#define MOSI_LOW() do { /* Implement me! */ } while(0)
-#define MOSI_HIGH() do { /* Implement me! */ } while(0)
-#define MISO_HIGH() do { /* Implement me! */ } while(0)
-#define SCK_LOW() do { /* Implement me! */ } while(0)
-#define SCK_HIGH() do { /* Implement me! */ } while(0)
-#define CS_LOW() do { /* Implement me! */ } while(0)
-#define CS_HIGH() do { /* Implement me! */ } while(0)
-/*\}*/
-
-/**
- * SPI pin commands.
- *
- * \{
- */
-#define CS_ENABLE() CS_LOW()
-#define CS_DISABLE() CS_HIGH()
-#define SS_ACTIVE() CS_LOW()
-#define SS_INACTIVE() CS_HIGH()
-#define SCK_INACTIVE() SCK_LOW()
-#define SCK_ACTIVE() SCK_HIGH()
-#define CS_OUT() do { /* Implement me! */ } while(0)
-#define MOSI_IN() do { /* Implement me! */ } while(0)
-#define MOSI_OUT() do { /* Implement me! */ } while(0)
-#define IS_MISO_HIGH() (false /* Implement me! */ )
-#define MISO_IN() do { /* Implement me! */ } while(0)
-#define MISO_OUT() do { /* Implement me! */ } while(0)
-#define SCK_OUT() do { /* Implement me! */ } while(0)
-
-#define SCK_PULSE()\
- do {\
- SCK_HIGH();\
- SCK_LOW();\
- } while (0)
-/*\}*/
-
-
-#define SPI_HW_INIT() \
- CS_DISABLE();\
- MOSI_LOW();\
- SCK_LOW();\
- MISO_IN();\
- MOSI_OUT();\
- SCK_OUT();\
- CS_OUT();
-
-#endif /* HW_SPI_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Stepper hardware-specific definitions
- *
- * \version $Id: hw_stepper.h 2488 2009-04-10 17:52:12Z batt $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-
-#ifndef HW_STEPPER_H
-#define HW_STEPPER_H
-
-#include <hw/hw_cpufreq.h>
-
-#include <cfg/macros.h>
-
-#include <drv/timer.h>
-
-#warning TODO:This is an example implentation, you must implement it!
-
-#define STEPPER_STROBE_INIT \
-do { \
- /* put init code for strobe */ \
-} while (0)
-
-
-#define STEPPER_STROBE_ON do { /* Implement me! */ } while(0)
-#define STEPPER_STROBE_OFF do { /* Implement me! */ } while(0)
-
-/**
- * CPU clock frequency is divided by 2^STEPPER_PRESCALER_LOG2 to
- * obtain stepper clock.
- */
-#define STEPPER_PRESCALER_LOG2 1
-
-/**
- * Stepper timer clock frequency.
- */
-#define STEPPER_CLOCK ((CPU_FREQ) >> STEPPER_PRESCALER_LOG2)
-
-/**
- * us delay to reset a stepper motor.
- * This is the time neccessary to reset
- * the stepper controll chip. (see datasheet for more detail).
- */
-#define STEPPER_RESET_DELAY 1
-
-/*
- * Pins define for each stepper
- */
-#define STEPPER_1_CW_CCW_PIN 0
-#define STEPPER_1_HALF_FULL_PIN 0
-#define STEPPER_1_CONTROL_PIN 0
-#define STEPPER_1_ENABLE_PIN 0
-#define STEPPER_1_RESET_PIN 0
-
-/* put here other stepper motor */
-
-#define STEPPER_1_SET do { /* Implement me! */ } while(0)
-/* add here the set for other stepper motor */
-
-#define STEPPER_1_CLEAR do { /* Implement me! */ } while(0)
-/* add here the clear for other stepper motor */
-
-/*
- * Generic macro definition
- */
-
-/*
- * Stepper init macro
- */
-#define STEPPER_PIN_INIT_MACRO(port, index) do { \
- /* Add here init pin code */ \
- } while (0)
-
-/*
- * Stepper commands macros
- */
-#define STEPPER_SET_CW(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_CCW(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_HALF(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_FULL(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_CONTROL_LOW(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_CONTROL_HIGHT(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_ENABLE(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_DISABLE(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_RESET_ENABLE(index) do { /* Implement me! */ } while (0)
-#define STEPPER_SET_RESET_DISABLE(index) do { /* Implement me! */ } while (0)
-
-
-/*
- * Reset stepper macro
- */
-
-#define STEPPER_RESET_MACRO(index) do { \
- STEPPER_SET_RESET_ENABLE(index); \
- timer_udelay(STEPPER_RESET_DELAY); \
- STEPPER_SET_RESET_DISABLE(index); \
- } while (0)
-
-/*
- * Set half or full step macro
- */
-#define STEPPER_SET_STEP_MODE_MACRO(index, flag) do { \
- if (flag) \
- STEPPER_SET_HALF(index); \
- else \
- STEPPER_SET_FULL(index); \
- } while (0)
-
-/*
- * Set control status macro
- */
-#warning TODO: This macro is not implemented (see below)
-
-#define STEPPER_SET_CONTROL_BIT_MACRO(index, flag) do { \
- /* if (flag) */ \
- /* WARNING This macros not implemented */ \
- /* else */ \
- /* WARNING This macros not implemented */ \
- } while (0)
-
-/*
- * Set current power macro
- */
-#warning TODO: This macro is not implemented (see below)
-
-#define STEPPER_SET_POWER_CURRENT_MACRO(index, flag) do { \
- /* if (flag) */ \
- /* WARNING This macrois not implemented */ \
- /* else */ \
- /* WARNING This macrois not implemented */ \
- } while (0)
-
-/*
- * Set rotation of stepper motor
- * - dir = 1: positive rotation
- * - dir = 0: no motor moviment
- * - dir = -1: negative rotation
- *
- */
-#define STEPPER_SET_DIRECTION_MACRO(index, dir) do { \
- switch (dir) \
- { \
- case 1: \
- STEPPER_SET_CW(index); \
- break; \
- case -1: \
- STEPPER_SET_CCW(index); \
- break; \
- case 0: \
- break; \
- } \
- } while (0)
-
-
-/*
- * Define macros for manage low level of stepper.
- */
-
-#define STEPPER_INIT() do { \
- STEPPER_PIN_INIT_MACRO(A, 1); \
- /* Add here code for other stepper motor */ \
- } while (0)
-
-
-/*
- * Enable select stepper motor
- */
-#define STEPPER_ENABLE(index) do { \
- switch (index) \
- { \
- case 1: \
- STEPPER_SET_ENABLE(1); \
- break; \
- /* Add here code for other stepper motor */ \
- } \
- } while (0)
-
-/*
- * Enable all stepper connect to micro
- */
-#define STEPPER_ENABLE_ALL() do { \
- STEPPER_SET_ENABLE(1); \
- /* Add here code for other stepper motor */ \
- } while (0)
-
-/*
- * Disable select stepper motor
- */
-#define STEPPER_DISABLE(index) do { \
- switch (index) \
- { \
- case 1: \
- STEPPER_SET_DISABLE(1); \
- break; \
- /* Add here code for other stepper motor */ \
- } \
- } while (0)
-
-/*
- * Disable all stepper connect to micro
- */
-#define STEPPER_DISABLE_ALL() do { \
- STEPPER_SET_DISABLE(1); \
- /* Add here code for other stepper motor */ \
- } while (0)
-
-/*
- * Reset selected stepper motor
- */
-#define STEPPER_RESET(index) do { \
- switch (index) \
- { \
- case 1: \
- STEPPER_RESET_MACRO(1); \
- break; \
- /* Add here code for other stepper motor */ \
- } \
- } while (0)
-
-/*
- * Reset all stepper motor
- */
-#define STEPPER_RESET_ALL() do { \
- STEPPER_RESET_MACRO(1) \
- /* Add here code for other stepper motor */ \
- } while (0)
-
-// Set half/full step macros
-#define STEPPER_SET_HALF_STEP(index, flag) do { \
- switch (index) \
- { \
- case 1: \
- STEPPER_SET_STEP_MODE_MACRO(1, flag); \
- break; \
- /* Add here code for other stepper motor */ \
- } \
- } while (0)
-
-
-// Control status
-#define STEPPER_SET_CONTROL_BIT(index, flag) do { \
- switch (index) \
- { \
- case 1: \
- STEPPER_SET_CONTROL_BIT_MACRO(1, flag); \
- break; \
- /* Add here code for other stepper motor */ \
- } \
- } while (0)
-
-
-// Set stepper power current
-#define STEPPER_SET_POWER_CURRENT(index, flag) do { \
- switch (index) \
- { \
- case 1: \
- STEPPER_SET_POWER_CURRENT_MACRO(1, flag); \
- break; \
- /* Add here code for other stepper motor */ \
- } \
- } while (0)
-
-// Set rotation dirction of stepper motor
-#define STEPPER_SET_DIRECTION(index, dir) do { \
- switch (index) \
- { \
- case 1: \
- STEPPER_SET_DIRECTION_MACRO(1, dir); \
- break; \
- /* Add here code for other stepper motor */ \
- } \
- } while (0)
-
-#endif /* HW_STEPPER_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief HW pin handling.
- *
- * \version $Id: hw_tas5706a.h 2849 2009-09-01 15:46:14Z lottaviano $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_TAS5706A_H
-#define HW_TAS5706A_H
-
-#include <cfg/macros.h>
-
-#warning FIXME: This is an example implementation, you must implement it
-
-#define TAS5706A_SETPOWERDOWN(val) do { (void) val; /* implement me */ } while (0)
-#define TAS5706A_SETRESET(val) do { (void) val; /* implement me */ } while (0)
-#define TAS5706A_SETMUTE(val) do { (void) val; /* implement me */ } while (0)
-
-#define TAS5706A_PIN_INIT() \
- do { \
- TAS5706A_SETPOWERDOWN(true); \
- TAS5706A_SETRESET(true); \
- TAS5706A_SETMUTE(true); \
- /* complete me */ \
- } while (0)
-
-#define TAS5706A_MCLK_INIT() \
- do { \
- /* implement me */ \
- } while(0)
-
-
-#endif /* HW_TAS5706A_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief thermo hardware-specific control functions.
- *
- * \version $Id: hw_thermo.h 1440 2008-06-10 17:59:13Z asterix $
- * \author Francesco Sacchi <batt@develer.com>
- *
- */
-
-#ifndef HW_THERMO_H
-#define HW_THERMO_H
-
-#include "thermo_map.h"
-#include "ntc_map.h"
-
-#include <drv/phase.h>
-#include <drv/ntc.h>
-
-#include <cfg/debug.h>
-#include <cfg/compiler.h>
-
-#warning TODO:This is an example implentation, you must implement it!
-
-/*!
- * This function should return the temperature set tolerance.
- */
-INLINE deg_t thermo_hw_tolerance(ThermoDev dev)
-{
- ASSERT(dev < THERMO_CNT);
-
- switch (dev)
- {
- case THERMO_TEST:
- /* Put here convertion function to temperature size */
- break;
-
- /* Put here your thermo device */
-
- default:
- ASSERT(0);
- }
-
- return 0;
-}
-
-
-/*!
- * This function should return the timeout for reaching the
- * target temperature.
- */
-INLINE ticks_t thermo_hw_timeout(ThermoDev dev)
-{
- ASSERT(dev < THERMO_CNT);
-
- switch (dev)
- {
- case THERMO_TEST:
- /* return ms_to_ticks(60000); */
- break;
-
- /* Put here a time out for select thermo device */
-
- default:
- ASSERT(0);
- }
-
- return 0;
-}
-
-
-
-/*!
- * Read the temperature of the hw device \a dev.
- */
-INLINE deg_t thermo_hw_read(ThermoDev dev)
-{
- return ntc_read(dev);
-}
-
-
-/*!
- * Turns off a specific device.
- * This function is usefull to handle errors.
- */
-INLINE void thermo_hw_off(ThermoDev dev)
-{
- ASSERT(dev < THERMO_CNT);
-
- switch (dev)
- {
- case THERMO_TEST:
- phase_setPower(TRIAC_TEST, 0);
- break;
-
- /* Put here a thermo device to turn off */
-
- default:
- ASSERT(0);
- }
-
-}
-
-
-/*!
- * Based on the current temperature \a cur_temp and the target temperature \a target, this function turns on and off specific
- * triac channel and handles the freezer alarm.
- * It may use also PID control for thermo-regolations.
- */
-INLINE void thermo_hw_set(ThermoDev dev, deg_t target, deg_t cur_temp)
-{
- ASSERT(dev < THERMO_CNT);
-
- deg_t dist = target - cur_temp;
- //kprintf("dev[%d], dist[%d]\n", dev, dist);
-
- switch(dev)
- {
- case THERMO_TEST:
- if (dist > 0)
- {
- /* phase_setPower(TRIAC_TEST, dist * PID_TEST_K); */
- }
- else
- {
- /* phase_setPower(TRIAC_TEST, 0); */
- }
- break;
-
- /* Put here an other thermo device */
-
- default:
- ASSERT(0);
- }
-}
-
-
-#define THERMO_HW_INIT _thermo_hw_init()
-
-/*!
- * Init hw associated with thermo-control.
- */
-INLINE void _thermo_hw_init(void)
-{
- ASSERT(phase_initialized);
- ASSERT(ntc_initialized);
-
- phase_setPower(TRIAC_TEST, 0);
-
- /* Add here the other thermo device */
-}
-
-#endif /* HW_THERMO_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief TLV5816 DAC hardware-specific definitions
- *
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_TLV5816_H
-#define HW_TLV5816_H
-
-#warning TODO:This is an example implementation, you must implement it!
-
-#define TLV5618_CSINIT(pin) \
-do \
-{ \
- (void)pin; \
- /* Implement me! */ \
- TLV5618_CSHIGH(pin); \
-} while(0)
-
-#define TLV5618_CSLOW(pin) \
-do \
-{ \
- (void)pin; \
- /* Implement me! */ \
-} while(0)
-
-
-#define TLV5618_CSHIGH(pin) \
-do \
-{ \
- (void)pin; \
- /* Implement me! */ \
-} while(0)
-
-
-#endif /* HW_TLV5816_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2009 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Hardware macro definition.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_TMP123_H
-#define HW_TMP123_H
-
-#warning TODO:This is an example implentation, you must implement it!
-
-#define TMP123_HW_CS_EN() /* Implement me! */
-#define TMP123_HW_CS_DIS() /* Implement me! */
-
-#define TMP123_HW_INIT() \
- do { \
- /* Pin init */\
- } while (0)
-
-#endif /* HW_TMP123_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2005, 2006, 2008 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti
- * All Rights Reserved.
- * -->
- *
- * \brief Keyboard map definitions.
- *
- * \version $Id: kbd_map.h 2848 2009-09-01 15:23:57Z lottaviano $
- *
- * \author Francesco Sacchi <batt@develer.com>
- * \author Stefano Fedrigo <a@develer.com>
- */
-
-#ifndef HW_KBD_MAP_H
-#define HW_KBD_MAP_H
-
-#include <cfg/macros.h>
-
-#warning TODO:This is an example implentation, you must implement it!
-
-
-/**
- * Type for keyboard mask.
- */
-typedef uint16_t keymask_t;
-
-/**
- * \name Keycodes.
- */
-/*@{*/
-#define K_UP BV(0)
-#define K_DOWN BV(1)
-#define K_OK BV(2)
-#define K_CANCEL BV(3)
-
-#define K_REPEAT BV(13) /**< This is a repeated keyevent. */
-#define K_TIMEOUT BV(14) /**< Fake key event for timeouts. */
-#define K_LONG BV(15)
-/*@}*/
-
-#define K_LNG_MASK 0
-
-#endif /* HW_KBD_MAP_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006, 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief MCP41 digital potentiometer map definitions.
- *
- * \version $Id: mcp41_map.h 2506 2009-04-15 08:29:07Z duplo $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef MCP41_MAP_H
-#define MCP41_MAP_H
-
-#warning TODO:This is an example implentation, you must implement it!
-
-/** \name Enum for mcp41 pot evices.
- * \{
- *
- */
-typedef enum Mcp41Dev
-{
- MCP41_LED,
-
- /* put here other mcp41 device */
-
- MCP41_CNT,
-} Mcp41Dev;
-/* \} */
-
-#endif /* MCP41_MAP_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief NTC map definitions.
- *
- * \version $Id: ntc_map.h 1312 2008-05-20 16:54:52Z asterix $
- *
- * \author Giovanni Bajo <rasky@develer.com>
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef NTC_MAP_H
-#define NTC_MAP_H
-
-#include <cfg/compiler.h>
-
-#warning TODO:This is an example implentation, you must implement it!
-
-/*! \name Enum for ntc devices.
- * \{
- */
-typedef enum NtcDev
-{
- NTC_TEST,
-
- /* Put here your thermo device */
-
- NTC_CNT
-} NtcDev;
-/* \} */
-
-#endif /* NTC_MAP_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Triac map definitions.
- *
- * \version $Id: phase_map.h 1357 2008-05-26 09:30:19Z asterix $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef PHASE_MAP_H
-#define PHASE_MAP_H
-
-#warning TODO:This is an example implentation, you must implement it!
-
-/*! \name Enum for triac devices.
- * \{
- */
-typedef enum TriacDev
-{
- TRIAC_TEST,
-
- /* Put here other triac device */
-
- TRIAC_CNT
-} TriacDev;
-/* \} */
-
-#endif /* PHASE_MAP_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- *
- * \brief PWM map device.
- *
- * \version $Id: pwm_map.h 1357 2008-05-26 09:30:19Z asterix $
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_PWM_MAP_H
-#define HW_PWM_MAP_H
-
-#warning TODO:This is an example implentation, you must implement it!
-
-typedef enum
-{
- PWM_CH0 = 0,
- PWM_CH1,
- PWM_CH2,
- PWM_CH3,
-
-/*
- * add other PWM channel or
- * change above.
- */
-
- PWM_CNT
-} PwmDev;
-
-#endif /* HW_PWM_MAP_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Thermo regulation control map definitions.
- *
- * \version $Id: thermo_map.h 1312 2008-05-20 16:54:52Z asterix $
- *
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef THERMO_MAP_H
-#define THERMO_MAP_H
-
-#include <cfg/compiler.h>
-#include <cfg/macros.h>
-
-#warning TODO:This is an example implentation, you must implement it!
-
-typedef uint8_t thermostatus_t;
-
-#define THERMO_OFF 0
-#define THERMO_HEATING BV(0)
-#define THERMO_FREEZING BV(1)
-#define THERMO_TGT_REACH BV(2)
-#define THERMOERRF_NTCSHORT BV(3)
-#define THERMOERRF_NTCOPEN BV(4)
-#define THERMOERRF_TIMEOUT BV(5)
-#define THERMO_ACTIVE BV(6)
-
-#define THERMO_ERRMASK (THERMOERRF_NTCSHORT | THERMOERRF_NTCOPEN | THERMOERRF_TIMEOUT)
-
-typedef enum ThermoDev
-{
- THERMO_TEST,
-
- /* Put here your thermo device */
-
- THERMO_CNT,
-} ThermoDev;
-
-#endif /* THERMO_MAP_H */
+++ /dev/null
-#
-# Copyright 2009 Develer S.r.l. (http://www.develer.com/)
-# All rights reserved.
-#
-# Makefile template for BeRTOS wizard.
-#
-# Author: Lorenzo Berni <duplo@develer.com>
-#
-#
-
-# Programmer interface configuration, see http://dev.bertos.org/wiki/ProgrammerInterface for help
-lpc2378_PROGRAMMER_TYPE = jtag-tiny
-lpc2378_PROGRAMMER_PORT = none
-
-# Files included by the user.
-lpc2378_USER_CSRC = \
- examples/lpc2378/main.c \
- bertos/drv/timer.c \
- bertos/drv/timer_test.c \
- bertos/drv/ser.c \
- bertos/cpu/arm/drv/ser_lpc2.c \
- bertos/cpu/arm/drv/vic_lpc2.c \
- bertos/cpu/arm/drv/timer_lpc2.c \
- bertos/mware/event.c \
- bertos/kern/kfile.c \
- bertos/kern/proc.c \
- bertos/kern/proc_test.c \
- bertos/kern/monitor.c \
- bertos/mware/sprintf.c \
- bertos/struct/heap.c \
- #
-
-# Files included by the user.
-lpc2378_USER_PCSRC = \
- #
-
-# Files included by the user.
-lpc2378_USER_CPPASRC = \
- bertos/cpu/arm/hw/switch_ctx_arm.S \
- #
-
-# Files included by the user.
-lpc2378_USER_CXXSRC = \
- #
-
-# Files included by the user.
-lpc2378_USER_ASRC = \
- #
-
-# Flags included by the user.
-lpc2378_USER_LDFLAGS = \
- #
-
-# Flags included by the user.
-lpc2378_USER_CPPAFLAGS = \
- #
-
-# Flags included by the user.
-lpc2378_USER_CPPFLAGS = \
- -fno-strict-aliasing \
- -fwrapv \
- #
-
-# Include the mk file generated by the wizard
-include examples/lpc2378/lpc2378_wiz.mk
+++ /dev/null
-#
-# Copyright 2009 Develer S.r.l. (http://www.develer.com/)
-# All rights reserved.
-#
-# Makefile template for BeRTOS wizard.
-#
-# Author: Lorenzo Berni <duplo@develer.com>
-#
-#
-
-# Constants automatically defined by the selected modules
-lpc2378_DEBUG = 1
-
-# Our target application
-TRG += lpc2378
-
-lpc2378_PREFIX = "arm-none-eabi-"
-
-lpc2378_SUFFIX = ""
-
-# Files automatically generated by the wizard. DO NOT EDIT, USE lpc2378_USER_CSRC INSTEAD!
-lpc2378_WIZARD_CSRC = \
- bertos/mware/hex.c \
- bertos/mware/formatwr.c \
- #
-
-# Files automatically generated by the wizard. DO NOT EDIT, USE lpc2378_USER_PCSRC INSTEAD!
-lpc2378_WIZARD_PCSRC = \
- \
- #
-
-# Files automatically generated by the wizard. DO NOT EDIT, USE lpc2378_USER_CPPASRC INSTEAD!
-lpc2378_WIZARD_CPPASRC = \
- \
- #
-
-# Files automatically generated by the wizard. DO NOT EDIT, USE lpc2378_USER_CXXSRC INSTEAD!
-lpc2378_WIZARD_CXXSRC = \
- \
- #
-
-# Files automatically generated by the wizard. DO NOT EDIT, USE lpc2378_USER_ASRC INSTEAD!
-lpc2378_WIZARD_ASRC = \
- \
- #
-
-lpc2378_CPPFLAGS = -D'CPU_FREQ=(72000000UL)' -D'ARCH=(ARCH_DEFAULT)' -D'WIZ_AUTOGEN' -Iexamples/lpc2378/ $(lpc2378_CPU_CPPFLAGS) $(lpc2378_USER_CPPFLAGS)
-
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_LDFLAGS = $(lpc2378_CPU_LDFLAGS) $(lpc2378_WIZARD_LDFLAGS) $(lpc2378_USER_LDFLAGS)
-
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_CPPAFLAGS = $(lpc2378_CPU_CPPAFLAGS) $(lpc2378_WIZARD_CPPAFLAGS) $(lpc2378_USER_CPPAFLAGS)
-
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_CSRC = $(lpc2378_CPU_CSRC) $(lpc2378_WIZARD_CSRC) $(lpc2378_USER_CSRC)
-
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_PCSRC = $(lpc2378_CPU_PCSRC) $(lpc2378_WIZARD_PCSRC) $(lpc2378_USER_PCSRC)
-
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_CPPASRC = $(lpc2378_CPU_CPPASRC) $(lpc2378_WIZARD_CPPASRC) $(lpc2378_USER_CPPASRC)
-
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_CXXSRC = $(lpc2378_CPU_CXXSRC) $(lpc2378_WIZARD_CXXSRC) $(lpc2378_USER_CXXSRC)
-
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_ASRC = $(lpc2378_CPU_ASRC) $(lpc2378_WIZARD_ASRC) $(lpc2378_USER_ASRC)
-
-# CPU specific flags and options, defined in the CPU definition files.
-# Automatically generated by the wizard. PLEASE DO NOT EDIT!
-lpc2378_CPU_CPPASRC = bertos/cpu/arm/hw/crt_arm7tdmi.S bertos/cpu/arm/hw/vectors_lpc2.S
-lpc2378_CPU_CPPAFLAGS = -g -gdwarf-2
-lpc2378_CPU_CPPFLAGS = -O0 -g3 -gdwarf-2 -fverbose-asm -Ibertos/cpu/arm/ -D__ARM_LPC2378__
-lpc2378_CPU_CSRC = bertos/cpu/arm/hw/init_lpc2.c
-lpc2378_PROGRAMMER_CPU = lpc2378
-lpc2378_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-lpc2378_CPU = arm7tdmi
-lpc2378_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-lpc2378_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh
-lpc2378_CPU_LDFLAGS = -nostartfiles -Wl,--no-warn-mismatch -T bertos/cpu/arm/scripts/lpc2378.ld
-lpc2378_FLASH_SCRIPT = bertos/prg_scripts/arm/flash.sh
+++ /dev/null
-// Emtpy main.c file generated by the wizard
-#include <cpu/irq.h>
-#include <cfg/debug.h>
-#include <drv/timer.h>
-#include <drv/ser.h>
-#include <io/lpc23xx.h>
-#include "hw/hw_led.h"
-
-#define PRIO_HIGH 1
-#define PRIO_LOW 0
-
-static Serial ser_port;
-
-static void init(void)
-{
- IRQ_ENABLE;
- kdbg_init();
- timer_init();
- proc_init();
-
- timer_delay(3000);
- kprintf("NXP LPC2378 BeRTOS port test\n");
- timer_delay(3000);
- /* Turn off boot led */
- IODIR0 = (1<<21);
- IOCLR0 = (1<<21);
- /* Init status led */
- LED_INIT();
- LED_OFF();
-}
-
-static void NORETURN ser_prompt(void)
-{
- char buf[32];
- int i;
-
- ser_init(&ser_port, SER_UART1);
- ser_setbaudrate(&ser_port, 115200);
-
- /* BeRTOS "echo" terminal */
- kfile_printf(&ser_port.fd, "\n\rBeRTOS echo terminal\n\r");
- proc_setPri(proc_current(), PRIO_HIGH);
- for (i = 0; ; i++)
- {
- kfile_printf(&ser_port.fd, "\n\r[%03d] BeRTOS:~$ ", i);
- kfile_gets_echo(&ser_port.fd, buf, sizeof(buf), true);
- kfile_printf(&ser_port.fd, "%s", buf);
- }
-}
-
-static void NORETURN bertos_up(void)
-{
- char spinner[] = {'/', '-', '\\', '|'};
- int i = 0;
- while (1)
- {
- i++;
- proc_forbid();
- kprintf("BeRTOS is up & running: %c\r",
- spinner[i % countof(spinner)]);
- proc_permit();
- timer_delay(100);
- }
-}
-
-static void NORETURN status(void)
-{
- while (1)
- {
- LED_ON();
- timer_delay(250);
-
- LED_OFF();
- timer_delay(250);
- }
-}
-
-int main(void)
-{
-
- init();
- proc_testRun();
- proc_new(bertos_up, NULL, KERN_MINSTACKSIZE * 3, NULL);
- proc_new(ser_prompt, NULL, KERN_MINSTACKSIZE * 3, NULL);
- proc_new(status, NULL, 0, NULL);
- while (1)
- {
- }
-
- return 0;
-}
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for Debug module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_DEBUG_H
-#define CFG_DEBUG_H
-
-/**
- * Debug console port.
- * $WIZ$ type = "int"; min = 0
- */
-#define CONFIG_KDEBUG_PORT 1
-
-/**
- * Baudrate for the debug console.
- * $WIZ$ type = "int"; min = 300
- */
-#define CONFIG_KDEBUG_BAUDRATE 115200UL
-
-#endif /* CFG_DEBUG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for GFX module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_GFX_H
-#define CFG_GFX_H
-
-/// Enable line clipping algorithm.
-#define CONFIG_GFX_CLIPPING 1
-
-/// Enable text rendering in bitmaps.
-#define CONFIG_GFX_TEXT 1
-
-/// Enable virtual coordinate system.
-#define CONFIG_GFX_VCOORDS 1
-
-/// Select bitmap pixel format.
-#define CONFIG_BITMAP_FMT BITMAP_FMT_PLANAR_V_LSB
-
-
-#define CONFIG_CHART_TYPE_X uint8_t ///< Type for the chart dataset
-#define CONFIG_CHART_TYPE_Y uint8_t ///< Type for the chart dataset
-
-
-/// Enable button bar behind menus
-#define CONFIG_MENU_MENUBAR 0
-
-/// Level Edit Timeout
-#define CONFIG_LEVELEDIT_TIMEOUT 0
-
-/// Menu timeout
-#define CONFIG_MENU_TIMEOUT 0
-
-/// Enable smooth scrolling in menus
-#define CONFIG_MENU_SMOOTH 1
-
-
-#endif /* CFG_GFX_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for heap module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_HEAP_H
-#define CFG_HEAP_H
-
-/**
- * Enable malloc/free like API.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_HEAP_MALLOC 1
-
-#endif /* CFG_HEAP_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for KFile interface module.
- *
- * \version $Id$
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_KFILE_H
-#define CFG_KFILE_H
-
-/**
- * Module logging level.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KFILE_LOG_LEVEL LOG_LVL_INFO
-
-/**
- * Module logging format.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KFILE_LOG_FORMAT LOG_FMT_TERSE
-
-/**
- * Enable the gets function with echo.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KFILE_GETS 1
-
-#endif /* CFG_KFILE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for lcd display module.
- */
-
-#ifndef CFG_LCD_H
-#define CFG_LCD_H
-
-/**
- * Use 4 bit addressing mode.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_LCD_4BIT 0
-
-/**
- * Use a table to speed up LCD memory addressing.
- * This will use about 100 bytes of RAM.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_LCD_ADDRESS_FAST 0
-
-/**
- * LCD setting for 32122A (AVR implementation).
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "avr and False"
- */
-#define CONFIG_LCD_SOFTINT_REFRESH 0
-
-/**
- * LCD setting for 32122A (AVR implementation).
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "avr and False"
- */
-#define CONFIG_LCD_WAIT 0
-
-
-#endif /* CFG_LCD_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel monitor configuration parameters
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_MONITOR_H
-#define CFG_MONITOR_H
-
-/**
- * Process monitor.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_MONITOR 1
-
-#endif /* CFG_MONITOR_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel configuration parameters
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_PROC_H
-#define CFG_PROC_H
-
-/**
- * Enable the multithreading kernel.
- *
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN 1
-
-/**
- * Kernel interrupt supervisor. WARNING: Experimental, still incomplete!
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_KERN_IRQ 0
-
-/**
- * Preemptive process scheduling.
- *
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "timer"
- */
-#define CONFIG_KERN_PREEMPT 1
-
-/**
- * Time sharing quantum (a prime number prevents interference effects) [ms].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = 1
- */
-#define CONFIG_KERN_QUANTUM 11
-
-/**
- * Priority-based scheduling policy.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PRI 1
-
-/**
- * Dynamic memory allocation for processes.
- * $WIZ$ type = "boolean"
- * $WIZ$ conditional_deps = "heap"
- */
-#define CONFIG_KERN_HEAP 1
-
-/**
- * Size of the dynamic memory pool used by processes.
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define CONFIG_KERN_HEAP_SIZE 8192L
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KERN_LOG_LEVEL LOG_LVL_ERR
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KERN_LOG_FORMAT LOG_FMT_VERBOSE
-
-#endif /* CFG_PROC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel semaphores configuration parameters.
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SEM_H
-#define CFG_SEM_H
-
-/**
- * Re-entrant mutual exclusion primitives.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SEMAPHORES 0
-
-#endif /* CFG_SEM_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for serial module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_SER_H
-#define CFG_SER_H
-
-/**
- * Example of setting for serial port and
- * spi port.
- * Edit these define for your project.
- */
-
-/**
- * Size of the outbound FIFO buffer for port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_UART0_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- */
-#define CONFIG_UART0_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2 or (at91 and not atmega8 and not atmega168 and not atmega32)"
- */
-#define CONFIG_UART1_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2 or (at91 and not atmega8 and not atmega168 and not atmega32)"
- */
-#define CONFIG_UART1_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 2 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2"
- */
-#define CONFIG_UART2_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 2 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lm3s or lpc2"
- */
-#define CONFIG_UART2_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for port 3 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lpc2"
- */
-#define CONFIG_UART3_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for port 3 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "lpc2"
- */
-#define CONFIG_UART3_RXBUFSIZE 32
-
-
-/**
- * Size of the outbound FIFO buffer for SPI port [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for SPI port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI0_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port 0 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI0_RXBUFSIZE 32
-
-/**
- * Size of the outbound FIFO buffer for SPI port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI1_TXBUFSIZE 32
-
-/**
- * Size of the inbound FIFO buffer for SPI port 1 [bytes].
- * $WIZ$ type = "int"
- * $WIZ$ min = 2
- * $WIZ$ supports = "at91"
- */
-#define CONFIG_SPI1_RXBUFSIZE 32
-
-/**
- * SPI data order.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_order_bit"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_DATA_ORDER SER_MSB_FIRST
-
-/**
- * SPI clock division factor.
- * $WIZ$ type = "int"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_DIV 16
-
-/**
- * SPI clock polarity: normal low or normal high.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_spi_pol"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_POL SPI_NORMAL_LOW
-
-/**
- * SPI clock phase you can choose sample on first edge or
- * sample on second clock edge.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "ser_spi_phase"
- * $WIZ$ supports = "avr"
- */
-#define CONFIG_SPI_CLOCK_PHASE SPI_SAMPLE_ON_FIRST_EDGE
-
-/**
- * Default transmit timeout (ms). Set to -1 to disable timeout support.
- * $WIZ$ type = "int"
- * $WIZ$ min = -1
- */
-#define CONFIG_SER_TXTIMEOUT -1
-
-/**
- * Default receive timeout (ms). Set to -1 to disable timeout support.
- * $WIZ$ type = "int"
- * $WIZ$ min = -1
- */
-#define CONFIG_SER_RXTIMEOUT -1
-
-/**
- * Use RTS/CTS handshake.
- * $WIZ$ type = "boolean"
- * $WIZ$ supports = "False"
- */
-#define CONFIG_SER_HWHANDSHAKE 0
-
-/**
- * Default baudrate for all serial ports (set to 0 to disable).
- * $WIZ$ type = "int"
- * $WIZ$ min = 0
- */
-#define CONFIG_SER_DEFBAUDRATE 0UL
-
-/// Enable strobe pin for debugging serial interrupt. $WIZ$ type = "boolean"
-#define CONFIG_SER_STROBE 0
-
-#endif /* CFG_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel signals configuration parameters
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_SIGNAL_H
-#define CFG_SIGNAL_H
-
-/**
- * Inter-process signals.
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN_SIGNALS 1
-
-#endif /* CFG_SIGNAL_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for timer module.
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_TIMER_H
-#define CFG_TIMER_H
-
-/**
- * Hardware timer selection for drv/timer.c.
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "timer_select"
- */
-#define CONFIG_TIMER TIMER_DEFAULT
-
-/**
- * Debug timer interrupt using a strobe pin.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_STROBE 0
-
-/**
- * Enable asynchronous timers.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_EVENTS 1
-
-/**
- * Support hi-res timer_usleep().
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_TIMER_UDELAY 1
-
-#endif /* CFG_TIMER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2010 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief STM32-P103 Cortex-M3 testcase
- *
- * \author Andrea Righi <arighi@develer.com>
- */
-
-#include "cfg/compiler.h"
-#include <drv/timer.h>
-#include <drv/clock_stm32.h>
-#include <drv/gpio_stm32.h>
-#include <io/stm32_memmap.h>
-
-#define LED_PIN (1 << 12)
-
-static void led_init(void)
-{
- /* Enable clocking on GPIOA and GPIOC */
- RCC->APB2ENR |= RCC_APB2_GPIOC;
- /* Configure the LED pin as GPIO */
- stm32_gpioPinConfig((struct stm32_gpio *)GPIOC_BASE,
- LED_PIN, GPIO_MODE_OUT_PP, GPIO_SPEED_50MHZ);
-}
-
-static void NORETURN led_process(void)
-{
- int i;
-
- for (i = 0; ; i = !i)
- {
- stm32_gpioPinWrite((struct stm32_gpio *)GPIOC_BASE, LED_PIN, i);
- timer_delay(250);
- }
-}
-
-int main(void)
-{
- int i;
-
- IRQ_ENABLE;
- kdbg_init();
- timer_init();
- proc_init();
- led_init();
-
- proc_new(led_process, NULL, KERN_MINSTACKSIZE, NULL);
- for (i = 0; ; i = !i)
- {
- kputs("BeRTOS up & running!\n");
- timer_delay(500);
- }
-}
+++ /dev/null
-# Copyright 2010 Develer S.r.l. (http://www.develer.com/)
-#
-# Makefile for the stm32p103 board example.
-#
-# Author: Andrea Righi <arighi@develer.com>
-
-# Set to 1 for debug builds
-stm32p103_DEBUG = 1
-
-include bertos/fonts/fonts.mk
-
-# Our target application
-TRG += stm32p103
-
-stm32p103_CSRC = \
- bertos/mware/formatwr.c \
- bertos/mware/hex.c \
- bertos/mware/sprintf.c \
- bertos/mware/event.c \
- bertos/struct/heap.c \
- bertos/kern/signal.c \
- bertos/kern/monitor.c \
- bertos/kern/proc.c \
- bertos/drv/timer.c \
- bertos/cpu/cortex-m3/drv/kdebug_stm32.c \
- bertos/cpu/cortex-m3/drv/gpio_stm32.c \
- bertos/cpu/cortex-m3/drv/clock_stm32.c \
- bertos/cpu/cortex-m3/drv/timer_cm3.c \
- bertos/cpu/cortex-m3/drv/irq_cm3.c \
- bertos/cpu/cortex-m3/hw/switch_ctx_cm3.c \
- bertos/cpu/cortex-m3/hw/init_cm3.c \
- examples/stm32p103/main.c
-
-stm32p103_CPPASRC = \
- bertos/cpu/cortex-m3/hw/vectors_cm3.S \
- bertos/cpu/cortex-m3/hw/crt_cm3.S \
- #
-
-# This is an hosted application
-stm32p103_PREFIX = arm-none-eabi-
-
-stm32p103_CPPAFLAGS = -mthumb
-stm32p103_CPPFLAGS = -D'ARCH=0' -D__ARM_STM32P103__ -D'CPU_FREQ=(72000000L)' -D'WIZ_AUTOGEN' -mthumb -Iexamples/stm32p103 -Ibertos/cpu/cortex-m3 -fno-strict-aliasing -fwrapv
-stm32p103_LDFLAGS = -nostartfiles -T bertos/cpu/cortex-m3/scripts/stm32p103_rom.ld -Wl,--no-warn-mismatch -mthumb
-
-stm32p103_CPU = cortex-m3
-
-stm32p103_PROGRAMMER_CPU = stm32
-stm32p103_PROGRAMMER_TYPE = jtag-tiny
-stm32p103_FLASH_SCRIPT = bertos/prg_scripts/arm/flash-stm32.sh
-stm32p103_STOPFLASH_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-stm32p103_DEBUG_SCRIPT = bertos/prg_scripts/arm/debug.sh
-stm32p103_STOPDEBUG_SCRIPT = bertos/prg_scripts/arm/stopopenocd.sh
-
-ifeq ($(stm32p103_DEBUG),0)
- # Production options
- stm32p103_CFLAGS += -O0
- stm32p103_CXXFLAGS += -O0
-else
- # Debug options
- stm32p103_CPPAFLAGS += -g -gdwarf-2
- stm32p103_CPPFLAGS += -O0 -g3 -gdwarf-2 -fverbose-asm
-endif
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003,2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2001,2002,2003 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Set system configuration
- *
- * \version $Id$
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- *
- */
-
-
-#ifndef CFG_ARCH_CONFIG_H
-#define CFG_ARCH_CONFIG_H
-
-#include <cfg/macros.h>
-
-/**
- * \name Architectures
- * \{
- */
-#define ARCH_TRIFACE BV(0)
-#define ARCH_BOOT BV(1)
-#define ARCH_EMUL BV(2)
-/*\}*/
-
-#endif /* CFG_ARCH_CONFIG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for Debug module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_DEBUG_H
-#define CFG_DEBUG_H
-
-/// kdebug console.
-#define CONFIG_KDEBUG_PORT 1
-
-/// Baud-rate for the kdebug console.
-#define CONFIG_KDEBUG_BAUDRATE 115200
-
-#endif /* CFG_DEBUG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for formatted write module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_FORMTWR_H
-#define CFG_FORMTWR_H
-
-/**
- * printf()-style formatter configuration.
- *
- * \sa PRINTF_DISABLED
- * \sa PRINTF_NOMODIFIERS
- * \sa PRINTF_REDUCED
- * \sa PRINTF_NOFLOAT
- * \sa PRINTF_FULL
- */
-#define CONFIG_PRINTF PRINTF_REDUCED
-
-
-#endif /* CFG_FORMTWR_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for KFile interface module.
- *
- * \version $Id$
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_KFILE_H
-#define CFG_KFILE_H
-
-/// Module logging level definition.
-#define KFILE_LOG_LEVEL LOG_LVL_INFO
-
-/// Module logging verbosity.
-#define KFILE_LOG_FORMAT LOG_FMT_TERSE
-
-/// Enable the gets function with echo.
-#define CONFIG_KFILE_GETS 1
-
-#endif /* CFG_KFILE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel configuration parameters
- *
- * \version $Id$
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_PROC_H
-#define CFG_PROC_H
-
-/**
- * Enable the multithreading kernel.
- *
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN 0
-
-/**
- * Kernel interrupt supervisor.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_IRQ 0
-
-/**
- * Dynamic memory allocation for processes.
- *
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_HEAP 0
-
-/**
- * Preemptive process scheduling. WARNING: Experimental, still incomplete!
- *
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PREEMPT 0
-
-/**
- * Priority-based scheduling policy.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PRI 0
-
-/**
- * Time sharing quantum (a prime number prevents interference effects) [ms].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = "0"
- */
-#define CONFIG_KERN_QUANTUM 11
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KERN_LOG_LEVEL LOG_LVL_ERR
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KERN_LOG_FORMAT LOG_FMT_VERBOSE
-
-#endif /* CFG_PROC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for serial module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_SER_H
-#define CFG_SER_H
-
-
-/// Kdebug console on debug unit
-#define CONFIG_BOOT_PORT 1
-
-/// Baud-rate for the kdebug console
-#define CONFIG_BOOT_BAUDRATE 115200
-
-/// [bytes] Size of the outbound FIFO buffer for port 0.
-#define CONFIG_UART0_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for port 0.
-#define CONFIG_UART0_RXBUFSIZE 64
-
-/// [bytes] Size of the outbound FIFO buffer for port 1.
-#define CONFIG_UART1_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for port 1.
-#define CONFIG_UART1_RXBUFSIZE 64
-
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port (AVR only)
-#define CONFIG_SPI_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port (AVR only)
-#define CONFIG_SPI_RXBUFSIZE 32
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port 0.
-#define CONFIG_SPI0_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port 0.
-#define CONFIG_SPI0_RXBUFSIZE 32
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port 1.
-#define CONFIG_SPI1_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port 1.
-#define CONFIG_SPI1_RXBUFSIZE 32
-
-/// SPI data order (AVR only).
-#define CONFIG_SPI_DATA_ORDER SER_MSB_FIRST
-
-/// SPI clock division factor (AVR only).
-#define CONFIG_SPI_CLOCK_DIV 16
-
-/// SPI clock polarity: 0 = normal low, 1 = normal high (AVR only).
-#define CONFIG_SPI_CLOCK_POL 0
-
-/// SPI clock phase: 0 = sample on first edge, 1 = sample on second clock edge (AVR only).
-#define CONFIG_SPI_CLOCK_PHASE 0
-
-/// Default transmit timeout (ms). Set to -1 to disable timeout support.
-#define CONFIG_SER_TXTIMEOUT 100
-
-/// Default receive timeout (ms). Set to -1 to disable timeout support.
-#define CONFIG_SER_RXTIMEOUT 100
-
-/// Use RTS/CTS handshake
-#define CONFIG_SER_HWHANDSHAKE 0
-
-/// Default baud rate (set to 0 to disable).
-#define CONFIG_SER_DEFBAUDRATE 0
-
-/// For serial debug.
-#define CONFIG_SER_STROBE 0
-
-#endif /* CFG_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Macro for boot loader.
- *
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- * \author Francesco Sacchi <batt@develer.com>
- */
-
-#ifndef HW_BOOT_H
-#define HW_BOOT_H
-
-#include <avr/io.h>
-#include <cfg/compiler.h>
-
-/* Set up function pointer to RESET vector */
-void (*rom_start)(void) NORETURN = 0x0000;
-
-#define START_APP() rom_start()
-
-#define BOOT_INIT do \
-{ \
- /* Enable change of Interrupt Vectors */ \
- MCUCR = BV(IVCE); \
- /* Move interrupts to boot Flash section */ \
- MCUCR = BV(IVSEL); \
-} while(0)
-
-#define BOOT_END do \
-{ \
- /* Enable change of Interrupt Vectors */ \
- MCUCR = BV(IVCE); \
- /* Move interrupts to boot Flash section */ \
- MCUCR = 0; \
-} while(0)
-
-#endif // HW_BOOT_H
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Serial hardware-specific definitions
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_SER_H
-#define HW_SER_H
-
-
-
-#endif /* HW_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Flash boot loader main.
- * This is a simple generic bootloader app.
- * It requires only a serial port to work.
- * Try to receive a file through XMODEM protocol
- * and flash it on program memory.
- * BOOT_INIT, BOOT_END are macros used to perform special operations
- * respectively at boot start and boot end and are CPU dependant.
- * The macro START_APP() jumps to main application start.
- *
- * \version $Id$
- * \author Stefano Fedrigo <aleph@develer.com>
- * \author Francesco Sacchi <batt@develer.com>
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#include "hw/hw_boot.h"
-#include "cfg/cfg_ser.h"
-
-#include <net/xmodem.h>
-
-#include <cfg/compiler.h>
-#include <cfg/debug.h>
-#include <cfg/macros.h> /* BV() */
-
-#include <drv/ser.h>
-#include <drv/timer.h>
-#include <drv/flash.h>
-
-#include <string.h>
-
-#include <avr/wdt.h>
-
-/*
- * Watchdog disable.
- *
- * This function disable the watchdog timer early after a reset.
- * We must do it very soon because new AVR cores do not disable
- * the watchdog timer after a cpu reset. In this way the watchdog
- * timer is still enabled, continuously resetting the cpu. This is
- * necessary only with new AVR cores, for other cores this code has
- * no effect.
- *
- * \{
- */
-// Function prototype of watchdog reset.
-void wdt_init(void) __attribute__((naked)) __attribute__((section(".init3")));
-// Function implementation of watchdog reset.
-void wdt_init(void)
-{
- MCUSR = 0;
- wdt_disable();
-
- return;
-}
-/* \} */
-
-int main(void)
-{
- Flash flash;
- Serial ser;
-
-
- // Set up flash programming functions.
- flash_init(&flash);
-
- IRQ_ENABLE;
-
- BOOT_INIT;
-
- kdbg_init();
- timer_init();
-
- /* Open the main communication port */
-
- ser_init(&ser, CONFIG_BOOT_PORT);
- ser_setbaudrate(&ser, CONFIG_BOOT_BAUDRATE);
-
- xmodem_recv(&ser.fd, &flash.fd);
-
- kfile_close(&flash.fd);
- kfile_close(&ser.fd);
-
- IRQ_DISABLE;
-
- BOOT_END;
-
- START_APP();
-
-}
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003,2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2001,2002,2003 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Set system configuration
- *
- * \version $Id$
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- *
- */
-
-
-#ifndef CFG_ARCH_CONFIG_H
-#define CFG_ARCH_CONFIG_H
-
-#include <cfg/macros.h>
-
-/**
- * \name Architectures
- * \{
- */
-#define ARCH_TRIFACE BV(0)
-#define ARCH_BOOT BV(1)
-#define ARCH_EMUL BV(2)
-/*\}*/
-
-#endif /* CFG_ARCH_CONFIG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for Debug module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_DEBUG_H
-#define CFG_DEBUG_H
-
-/// kdebug console.
-#define CONFIG_KDEBUG_PORT 1
-
-/// Baud-rate for the kdebug console.
-#define CONFIG_KDEBUG_BAUDRATE 115200
-
-#endif /* CFG_DEBUG_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- *
- * -->
- *
- * \brief Configuration file for KFile interface module.
- *
- * \version $Id$
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_KFILE_H
-#define CFG_KFILE_H
-
-/// Module logging level definition.
-#define KFILE_LOG_LEVEL LOG_LVL_INFO
-
-/// Module logging format.
-#define KFILE_LOG_FORMAT LOG_FMT_TERSE
-
-/// Enable the gets function with echo.
-#define CONFIG_KFILE_GETS 1
-
-#endif /* CFG_KFILE_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2001, 2004 Develer S.r.l. (http://www.develer.com/)
- * Copyright 1999, 2000, 2001, 2008 Bernie Innocenti <bernie@codewiz.org>
- * -->
- *
- * \brief Kernel configuration parameters
- *
- * \version $Id$
- * \author Bernie Innocenti <bernie@codewiz.org>
- */
-
-#ifndef CFG_PROC_H
-#define CFG_PROC_H
-
-/**
- * Enable the multithreading kernel.
- *
- * $WIZ$ type = "autoenabled"
- */
-#define CONFIG_KERN 0
-
-/**
- * Kernel interrupt supervisor.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_IRQ 0
-
-/**
- * Dynamic memory allocation for processes.
- *
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_HEAP 0
-
-/**
- * Preemptive process scheduling. WARNING: Experimental, still incomplete!
- *
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PREEMPT 0
-
-/**
- * Priority-based scheduling policy.
- * $WIZ$ type = "boolean"
- */
-#define CONFIG_KERN_PRI 0
-
-/**
- * Time sharing quantum (a prime number prevents interference effects) [ms].
- *
- * $WIZ$ type = "int"
- * $WIZ$ min = "0"
- */
-#define CONFIG_KERN_QUANTUM 11
-
-/**
- * Module logging level.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_level"
- */
-#define KERN_LOG_LEVEL LOG_LVL_ERR
-
-/**
- * Module logging format.
- *
- * $WIZ$ type = "enum"
- * $WIZ$ value_list = "log_format"
- */
-#define KERN_LOG_FORMAT LOG_FMT_VERBOSE
-
-#endif /* CFG_PROC_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for serial module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_SER_H
-#define CFG_SER_H
-
-
-/// Kdebug console on debug unit
-#define CONFIG_TRIFACE_PORT 1
-
-/// Baud-rate for the kdebug console
-#define CONFIG_TRIFACE_BAUDRATE 115200
-
-/// Triface serial tag port
-#define TAG_SER_PORT 0
-
-///Baud-rate for triface serial tag port
-#define TAG_SER_BAUDRATE 9600
-
-/// [bytes] Size of the outbound FIFO buffer for port 0.
-#define CONFIG_UART0_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for port 0.
-#define CONFIG_UART0_RXBUFSIZE 64
-
-/// [bytes] Size of the outbound FIFO buffer for port 1.
-#define CONFIG_UART1_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for port 1.
-#define CONFIG_UART1_RXBUFSIZE 64
-
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port (AVR only)
-#define CONFIG_SPI_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port (AVR only)
-#define CONFIG_SPI_RXBUFSIZE 32
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port 0.
-#define CONFIG_SPI0_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port 0.
-#define CONFIG_SPI0_RXBUFSIZE 32
-
-/// [bytes] Size of the outbound FIFO buffer for SPI port 1.
-#define CONFIG_SPI1_TXBUFSIZE 32
-
-/// [bytes] Size of the inbound FIFO buffer for SPI port 1.
-#define CONFIG_SPI1_RXBUFSIZE 32
-
-/// SPI data order (AVR only).
-#define CONFIG_SPI_DATA_ORDER SER_MSB_FIRST
-
-/// SPI clock division factor (AVR only).
-#define CONFIG_SPI_CLOCK_DIV 16
-
-/// SPI clock polarity: 0 = normal low, 1 = normal high (AVR only).
-#define CONFIG_SPI_CLOCK_POL 0
-
-/// SPI clock phase: 0 = sample on first edge, 1 = sample on second clock edge (AVR only).
-#define CONFIG_SPI_CLOCK_PHASE 0
-
-/// Default transmit timeout (ms). Set to -1 for infinite timeout, 0 for null timeout
-#define CONFIG_SER_TXTIMEOUT 0
-
-/// Default receive timeout (ms). Set to -1 for infinite timeout, 0 for null timeout
-#define CONFIG_SER_RXTIMEOUT 0
-
-/// Use RTS/CTS handshake
-#define CONFIG_SER_HWHANDSHAKE 0
-
-/// Default baud rate (set to 0 to disable).
-#define CONFIG_SER_DEFBAUDRATE 0
-
-/// For serial debug.
-#define CONFIG_SER_STROBE 0
-
-#endif /* CFG_SER_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Configuration file for watchdog module.
- *
- * \version $Id$
- *
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef CFG_WDT_H
-#define CFG_WDT_H
-
-/// Enable watchdog timer.
-#define CONFIG_WATCHDOG 1
-
-#endif /* CFG_WDT_H */
-
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2006 Develer S.r.l. (http://www.develer.com/)
- * -->
- *
- * \brief Macro for defining command for protocol.
- *
- * \author Marco Benelli <marco@develer.com>
- */
-
-#ifndef CMD_CTOR_H
-#define CMD_CTOR_H
-
-#include <mware/parser.h>
-
-#define REGISTER_FUNCTION parser_register_cmd
-
-#define REGISTER_CMD(NAME) REGISTER_FUNCTION(&cmd_ ## NAME ## _template)
-
-#define MAKE_TEMPLATE(NAME, ARGS, RES, FLAGS) \
-const struct CmdTemplate cmd_ ## NAME ## _template = \
-{ \
- #NAME, ARGS, RES, cmd_ ## NAME, FLAGS \
-};
-
-#define MAKE_CMD(NAME, ARGS, RES, BODY, FLAGS) \
-static ResultCode cmd_ ## NAME (parms *args) \
-{ \
- return (ResultCode)BODY; \
-} \
-MAKE_TEMPLATE(NAME, ARGS, RES, FLAGS)
-
-#endif // CMD_CTOR_H
+++ /dev/null
-
-Command format:
-
- <command><SP><arg1><SP>...<argN><CR><LF>
-
-Where:
- command - alphanumeric command name
- argN - numeric argument (unsigned base 10, 0-65535)
-
-Positive response format:
-
- 0<SP><arg1><SP>...<argN><CR><LF>
-
-Where:
- argN - numeric value (unsigned base 10, 0-65535)
-
-Negative response format:
-
- -N<SP>"<desc>"<CR><LF>
-
-Where:
- -N - numeric error code (negative number)
- desc - verbose error description
-
-# Write digital outputs (masked)
-> dout 120 240
-< 0
-
-# Read digital inputs
-> din
-< 0 125
-
-# Read analog inputs
-> ain
-< 0 32 121 35 31
-
-# Wait specified amount of milliseconds
-> sleep 300
-< 0
-
-# Return firmware major version, minor version and revision
-> vers
-< 0 1 42 0
-
-# Reset board
-< reset
-> 0
-
-# Ping/nop
-< ping
-> 0
-
-# NOP (empty command)
->
-< (ignored)
-
-# Comments
-> # foo bar foobar
-< (ignored)
-
-# Unknown command
-> sing
-< -1 "Unknown command"
-
-# Missing parameter
-> dout
-< -2 "Required parameter missing"
-
-# Too many parameters
-> din 42 666
-< -3 "Too many parameters"
-
-# Malformed command
-> dout %'I!
-< -4 "Invalid parameter"
-
-# Attention
-> <CTRL-C> or <CTRL-D>
-< 1 "Uh?"
-
-
-To recover from a possibly unknown board status,
-a client should begin the conversation by issuing
-an attention sequence, eventually followed by a reset.
+++ /dev/null
-(ExpressProject "triface"\r
- (ProjectVersion "19981106")\r
- (ProjectType "PCB")\r
- (Folder "Design Resources"\r
- (Folder "Library")\r
- (NoModify)\r
- (File ".\triface.dsn"\r
- (Type "Schematic Design"))\r
- (BuildFileAddedOrDeleted "x")\r
- (CompileFileAddedOrDeleted "x")\r
- (ANNOTATE_Scope "0")\r
- (ANNOTATE_Mode "1")\r
- (ANNOTATE_Action "0")\r
- (Annotate_Page_Order "0")\r
- (ANNOTATE_Reset_References_to_1 "FALSE")\r
- (ANNOTATE_No_Page_Number_Change "FALSE")\r
- (ANNOTATE_Property_Combine "{Value}{Source Package}{POWER_GROUP}")\r
- (ANNOTATE_IncludeNonPrimitive "FALSE"))\r
- (Folder "Outputs")\r
- (Folder "Referenced Projects")\r
- (PartMRUSelector)\r
- (GlobalState\r
- (FileView\r
- (Path "Design Resources")\r
- (Path "Design Resources"\r
- "c:\documents and settings\administrator\desktop\new triface\triface.dsn")\r
- (Path "Design Resources"\r
- "c:\documents and settings\administrator\desktop\new triface\triface.dsn"\r
- "TRIFACE BOARD"))\r
- (HierarchyView)\r
- (Doc\r
- (Type "COrCapturePMDoc")\r
- (Frame\r
- (Placement "44 2 3 -1 -1 -4 -23 214 743 2 443"))\r
- (Tab 0)))\r
- (MPSSessionName "Administrator"))\r
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief ADC: Analogic to Digital Converter
- *
- *
- * \author Andrea Grandi <andrea@develer.com>
- */
-
-#include "hw/hw_adc.h"
-
-
-#include <cfg/macros.h>
-
-#include <drv/timer.h>
-
-#include <avr/io.h>
-
-/** Set the active AI channel */
-void adc_set_active_ain(int ai)
-{
- /* If number of channels is <= 4 we use the first two MUX bits */
- STATIC_ASSERT(ADC_CHANNEL_NUM <= 4);
-
- ai &= BV(0) | BV(1);
- ADMUX &= ~BV(MUX0);
- ADMUX &= ~BV(MUX1);
- ADMUX |= ai;
-}
-
-/** Initialize the ADC */
-void adc_init(void)
-{
- /* Set analog IN as input */
- DDRF &= ~(BV(PF0) | BV(PF1) | BV(PF2) | BV(PF3));
-
- /* Disable pull-up */
- PORTF &= ~(BV(PF0) | BV(PF1) | BV(PF2) | BV(PF3));
-
- ENABLE_ADC;
- adc_set_vref_avcc();
- SET_AI_ADLAR;
-
- /* Set the Division Factor to 128 */
- ADCSRA |= (BV(ADPS0) | BV(ADPS1) | BV(ADPS2));
-}
-
-/** Set the initial reference */
-void adc_set_vref_avcc(void)
-{
- ADMUX &= ~BV(REFS1);
- ADMUX |= BV(REFS0);
-}
-
-/** Read the specified AI channel */
-int adc_read_ai_channel(int channel)
-{
- adc_set_active_ain(channel);
- timer_udelay(STABILIZING_AI_CHANNEL_TIME);
- START_CONVERTION;
-
- while(ADCSRA & BV(ADSC))
- {
- /*
- * Intentionally empty loop.
- * It waits the convertion to be completed by ADC
- */
- }
-
- ADCSRA |= BV(ADIF);
-
- uint16_t val;
- val = ADCL;
- val |= (uint16_t)ADCH << 8;
-
- return val;
-}
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->ght 2006 Develer S.r.l. (http://www.develer.com/)
- *
- * \brief Macro for HW_AIN_H
- *
- *
- * \author Andrea Grandi <andrea@develer.com>
- */
-
-#ifndef HW_ADC_H
-#define HW_ADC_H
-
-#include <avr/io.h>
-
-#define START_CONVERTION (ADCSRA |= BV(ADSC))
-#define ENABLE_ADC (ADCSRA |= BV(ADEN))
-#define SET_AI_ADLAR (ADMUX &= ~BV(ADLAR))
-
-/** Microseconds to wait before starting conversion after changing a channel */
-#define STABILIZING_AI_CHANNEL_TIME 125
-
-/** Number of AIN channels */
-#define ADC_CHANNEL_NUM 4
-
-void adc_set_active_ain(int ai);
-void adc_init(void);
-void adc_set_vref_avcc(void);
-int adc_read_ai_channel(int channel);
-
-#endif // HW_ADC_H
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Buzzer hardware-specific definitions
- *
- * \author Francesco Sacchi <batt@develer.com>
- * \author Andrea Grandi <andrea@develer.com>
- */
-
-#ifndef HW_BUZZER_H
-#define HW_BUZZER_H
-
-#include <avr/io.h>
-#include <cfg/macros.h>
-
-#define BUZZER_BIT BV(PE3)
-#define IS_BUZZER_ON (PORTE & BUZZER_BIT)
-#define BUZZER_HW_INIT do { DDRE |= BV(DDE3); } while (0)
-#define BUZZER_ON do { PORTE |= BUZZER_BIT; } while (0)
-#define BUZZER_OFF do { PORTE &= ~BUZZER_BIT; } while (0)
-
-#endif /* HW_BUZZER_H */
-
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Macro for HW_INPUT_H
- *
- * \author Andrea Grandi <andrea@develer.com>
- */
-
-#ifndef HW_INPUT_H
-#define HW_INPUT_H
-
-#include <avr/io.h>
-
-/* Set pins as input and enable pull-up */
-#define INPUT_INIT_D do \
-{ \
- (DDRD &= ~(BV(PD4) | BV(PD5) | BV(PD6) | BV(PD7))); \
- (PORTD |= (BV(PD4) | BV(PD5) | BV(PD6) | BV(PD7))); \
-} while(0)
-
-#define INPUT_INIT_E do \
-{ \
- (DDRE &= ~(BV(PE4) | BV(PE5) | BV(PE6) | BV(PE7))); \
- ATOMIC((PORTE |= (BV(PE4) | BV(PE5) | BV(PE6) | BV(PE7)))); \
-} while(0)
-
-#define INPUT_INIT do { INPUT_INIT_D; INPUT_INIT_E;} while(0)
-
-INLINE uint8_t INPUT_GET(void)
-{
- uint8_t out_d, out_e;
- out_d = PIND;
- out_e = PINE;
-
- out_d >>= 4;
- out_e = out_e & 0xF0;
-
- return out_e | out_d;
-}
-
-#endif // HW_INPUT_H
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2008 Develer S.r.l. (http://www.develer.com/)
- * All Rights Reserved.
- * -->
- *
- * \brief Macro for STROBE signal
- *
- * \version $Id$
- *
- * \author Manuele Fanelli <qwert@develer.com>
- */
-
-#ifndef HW_SER_H
-#define HW_SER_H
-
-#include "cfg/cfg_ser.h"
-
-#if CONFIG_SER_STROBE
-
- #define SER_STROBE_ON do {PORTC |= BV(0);} while(0)
- #define SER_STROBE_OFF do {PORTC &= ~BV(0);} while(0)
- #define SER_STROBE_INIT do {DDRC |= BV(0); } while(0)
-#endif
-
-#endif //HW_SER_H
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006, 2009 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Macro for HW_SIPO_H
- *
- *
- * \author Andrea Grandi <andrea@develer.com>
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#ifndef HW_SIPO_H
-#define HW_SIPO_H
-
-#include <cfg/macros.h>
-
-#include <avr/io.h>
-
-/**
- * Mapping sipo connection on board.
- * See schematics for more info.
- */
-typedef enum SipoMap
-{
- TRIFACE_DOUT = 0,
-
- SIPO_CNT
-} SipoMap;
-
-
-
-//Set output pin for sipo
-#define SCK_OUT (DDRB |= BV(PB1)) // Shift register clock input pin
-#define SOUT_OUT (DDRB |= BV(PB2)) // Serial data input pin
-#define SLOAD_OUT (DDRB |= BV(PB3)) // Storage register clock input pin
-#define OE_OUT (DDRG |= BV(PG3)) // Output enable pin
-
-//Define output level
-#define SCK_HIGH (PORTB |= BV(PB1))
-#define SCK_LOW (PORTB &= ~BV(PB1))
-#define SOUT_OUT_HIGH (PORTB |= BV(PB2))
-#define SOUT_OUT_LOW (PORTB &= ~BV(PB2))
-#define SLOAD_OUT_HIGH (PORTB |= BV(PB3))
-#define SLOAD_OUT_LOW (PORTB &= ~BV(PB3))
-#define OE_LOW (PORTG &= BV(PG3))
-
-/**
- * Define the macros needed to set the serial input bit of SIPO device
- * low or high.
- */
-#define SIPO_SI_HIGH() SOUT_OUT_HIGH
-#define SIPO_SI_LOW() SOUT_OUT_LOW
-
-/**
- * Drive pin to load the bit, presented in serial-in pin,
- * into sipo shift register.
- */
-#define SIPO_SI_CLOCK(clk_pol) \
- do{ \
- (void)clk_pol; \
- SCK_HIGH; \
- SCK_LOW; \
- }while(0)
-
-/**
- * Clock the content of shift register to output.
- */
-#define SIPO_LOAD(device, load_pol) \
- do { \
- (void)device; \
- (void)load_pol; \
- SLOAD_OUT_HIGH; \
- SLOAD_OUT_LOW; \
- }while(0)
-
-/**
- * Enable the shift register output.
- */
-#define SIPO_ENABLE() OE_LOW;
-
-/**
- * Set logic level for load signal
- */
-#define SIPO_SET_LD_LEVEL(device, load_pol) \
- do { \
- (void)device; \
- if(load_pol) \
- SLOAD_OUT_HIGH; \
- else \
- SLOAD_OUT_LOW; \
- } while (0)
-
-
-/**
- * Sel logic level for clock signal
- */
-#define SIPO_SET_CLK_LEVEL(clock_pol) \
- do { \
- if(clock_pol) \
- SCK_HIGH; \
- else \
- SCK_LOW; \
- } while (0)
-
-#define SIPO_SET_SI_LEVEL() SIPO_SI_LOW()
-
-/**
- * Do everything needed in order to init the SIPO pins.
- */
-#define SIPO_INIT_PIN() \
- do { \
- OE_OUT; \
- SOUT_OUT; \
- SCK_OUT; \
- SLOAD_OUT; \
- SIPO_ENABLE(); \
- } while(0)
-
-
-#endif /* HW_SIPO_H */
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Implementation of the command protocol between the board and the host
- *
- *
- * \author Giovanni Bajo <rasky@develer.com>
- * \author Marco Benelli <marco@develer.com>
- * \author Bernie Innocenti <bernie@codewiz.org>
- * \author Daniele Basile <asterix@develer.com>
- */
-
-#include "protocol.h"
-#include "cmd_ctor.h" // MAKE_CMD, REGISTER_CMD
-#include "verstag.h"
-
-#include "hw/hw_adc.h"
-#include "hw/hw_input.h"
-
-#include <drv/timer.h>
-#include <drv/ser.h>
-#include <drv/sipo.h>
-#include <avr/wdt.h>
-#include <drv/buzzer.h>
-
-#include <mware/readline.h>
-#include <mware/parser.h>
-
-#include <cfg/compiler.h>
-#include <cfg/debug.h>
-
-#include <kern/kfile.h>
-
-#include <stdlib.h>
-#include <string.h>
-
-// Define the format string for ADC
-#define ADC_FORMAT_STR "dddd"
-
-// DEBUG: set to 1 to force interactive mode
-#define FORCE_INTERACTIVE 1
-
-/**
- * True if we are in interactive mode, false if we are in protocol mode.
- * In interactive mode, commands are read through readline() (prompt,
- * completion, history) without IDs, and replies/errors are sent to the serial
- * output.
- * In protocol mode, we implement the default protocol
- */
-static bool interactive;
-
-/// Readline context, used for interactive mode.
-static struct RLContext rl_ctx;
-
-static Sipo fd_sipo;
-
-uint8_t reg_status_dout;
-/**
- * Send a NAK asking the host to send the current message again.
- *
- * \a fd kfile handler for serial.
- * \a err human-readable description of the error for debug purposes.
- */
-INLINE void NAK(KFile *fd, const char *err)
-{
-#ifdef _DEBUG
- kfile_printf(fd, "NAK \"%s\"\r\n", err);
-#else
- kfile_printf(fd, "NAK\r\n");
-#endif
-}
-
-static void protocol_prompt(KFile *fd)
-{
- kfile_print(fd, ">> ");
-}
-
-/*
- * Print args on s, with format specified in t->result_fmt.
- * Return number of valid arguments or -1 in case of error.
- */
-static bool protocol_reply(KFile *fd, const struct CmdTemplate *t,
- const parms *args)
-{
- unsigned short offset = strlen(t->arg_fmt) + 1;
- unsigned short nres = strlen(t->result_fmt);
-
- for (unsigned short i = 0; i < nres; ++i)
- {
- if (t->result_fmt[i] == 'd')
- {
- kfile_printf(fd, " %ld", args[offset+i].l);
- }
- else if (t->result_fmt[i] == 's')
- {
- kfile_printf(fd, " %s", args[offset+i].s);
- }
-
- else
- {
- abort();
- }
- }
- kfile_printf(fd, "\r\n");
- return true;
-}
-
-static void protocol_parse(KFile *fd, const char *buf)
-{
- const struct CmdTemplate *templ;
-
- /* Command check. */
- templ = parser_get_cmd_template(buf);
- if (!templ)
- {
- kfile_print(fd, "-1 Invalid command.\r\n");
- protocol_prompt(fd);
- return;
- }
-
- parms args[PARSER_MAX_ARGS];
-
- /* Args Check. TODO: Handle different case. see doc/PROTOCOL . */
- if (!parser_get_cmd_arguments(buf, templ, args))
- {
- kfile_print(fd, "-2 Invalid arguments.\r\n");
- protocol_prompt(fd);
- return;
- }
-
- /* Execute. */
- if(!parser_execute_cmd(templ, args))
- {
- NAK(fd, "Error in executing command.");
- }
- if (!protocol_reply(fd, templ, args))
- {
- NAK(fd, "Invalid return format.");
- }
-
- protocol_prompt(fd);
- return;
-}
-
-void protocol_run(KFile *fd)
-{
- /**
- * \todo to be removed, we could probably access the serial FIFO
- * directly
- */
- static char linebuf[80];
-
- if (!interactive)
- {
- kfile_gets(fd, linebuf, sizeof(linebuf));
-
- // reset serial port error anyway
- kfile_clearerr(fd);
-
- // check message minimum length
- if (linebuf[0])
- {
- /* If we enter lines beginning with sharp(#)
- they are stripped out from commands */
- if(linebuf[0] != '#')
- {
- if (linebuf[0] == 0x1B && linebuf[1] == 0x1B) // ESC
- {
- interactive = true;
- kfile_printf(fd, "Entering interactive mode\r\n");
- }
- else
- {
- protocol_parse(fd, linebuf);
- }
- }
- }
- }
- else
- {
- const char *buf;
-
- /*
- * Read a line from serial. We use a temporary buffer
- * because otherwise we would have to extract a message
- * from the port immediately: there might not be any
- * available, and one might get free while we read
- * the line. We also add a fake ID at the start to
- * fool the parser.
- */
- buf = rl_readline(&rl_ctx);
-
- /* If we enter lines beginning with sharp(#)
- they are stripped out from commands */
- if(buf && buf[0] != '#')
- {
- if (buf[0] != '\0')
- {
- // exit special case to immediately change serial input
- if (!strcmp(buf, "exit") || !strcmp(buf, "quit"))
- {
- rl_clear_history(&rl_ctx);
- kfile_printf(fd, "Leaving interactive mode...\r\n");
- interactive = FORCE_INTERACTIVE;
- }
- else
- {
- //TODO: remove sequence numbers
- linebuf[0] = '0';
- linebuf[1] = ' ';
-
- strncpy(linebuf + 2, buf, sizeof(linebuf) - 3);
- linebuf[sizeof(linebuf) - 1] = '\0';
- protocol_parse(fd, linebuf);
- }
- }
- }
- }
-}
-
-/*
- * Commands.
- * TODO: Command declarations and definitions should be in another file(s).
- * Maybe we should use CMD_HUNK_TEMPLATE.
- *
- */
-
-MAKE_CMD(ver, "", "ddd",
-({
- args[1].l = VERS_MAJOR;
- args[2].l = VERS_MINOR;
- args[3].l = VERS_REV;
- 0;
-}), 0);
-
-/* Sleep. Example of declaring function body directly in macro call. */
-MAKE_CMD(sleep, "d", "",
-({
- timer_delay((mtime_t)args[1].l);
- 0;
-}), 0)
-
-/* Ping. */
-MAKE_CMD(ping, "", "",
-({
- //Silence "args not used" warning.
- (void)args;
- 0;
-}), 0)
-
-/* Dout */
-MAKE_CMD(dout, "d", "",
-({
- kfile_putc((uint8_t)args[1].l, &fd_sipo.fd);
-
- //Store status of dout ports.
- reg_status_dout = (uint8_t)args[1].l;
- 0;
-}), 0)
-
-/* rdout read the status of out ports.*/
-MAKE_CMD(rdout, "", "d",
-({
- args[1].l = reg_status_dout;
- 0;
-}), 0)
-
-
-/* Reset */
-MAKE_CMD(reset, "", "",
-({
- //Silence "args not used" warning.
- (void)args;
- wdt_enable(WDTO_2S);
-
- /*We want to have an infinite loop that lock access on watchdog timer.
- This piece of code it's equivalent to a while(true), but we have done this because
- gcc generate a warning message that suggest to use "noreturn" parameter in function reset.*/
- ASSERT(args);
- while(args);
- 0;
-
-}), 0)
-
-/* Din */
-MAKE_CMD(din, "", "d",
-({
- args[1].l = INPUT_GET();
- 0;
-}), 0)
-
-
-
-/* Ain */
-MAKE_CMD(ain, "", ADC_FORMAT_STR,
-({
- STATIC_ASSERT((sizeof(ADC_FORMAT_STR) - 1) == ADC_CHANNEL_NUM);
- for(int i = 0; i < ADC_CHANNEL_NUM; i++)
- args[i+1].l = adc_read_ai_channel(i);
-
- 0;
-}), 0)
-
-/* Beep */
-MAKE_CMD(beep, "d", "",
-({
- buz_beep(args[1].l);
- 0;
-}), 0)
-
-/* Register commands. */
-static void protocol_registerCmds(void)
-{
- REGISTER_CMD(ver);
- REGISTER_CMD(sleep);
- REGISTER_CMD(ping);
- REGISTER_CMD(dout);
- //Set off all dout ports.
- reg_status_dout = 0;
- REGISTER_CMD(rdout);
- REGISTER_CMD(reset);
- REGISTER_CMD(din);
- REGISTER_CMD(ain);
- REGISTER_CMD(beep);
-}
-
-/* Initialization: readline context, parser and register commands. */
-void protocol_init(KFile *fd)
-{
- /* SPI Port Initialization */
- fd_sipo.load_device = TRIFACE_DOUT;
- fd_sipo.bit_order = SIPO_DATAORDER_LSB;
- fd_sipo.clock_pol = SIPO_START_LOW;
- fd_sipo.load_pol = SIPO_LOW_TO_HIGH;
-
- sipo_init(&fd_sipo);
-
- interactive = FORCE_INTERACTIVE;
-
- rl_init_ctx(&rl_ctx);
- //rl_setprompt(&rl_ctx, ">> ");
- rl_sethook_get(&rl_ctx, (getc_hook)kfile_getc, fd);
- rl_sethook_put(&rl_ctx, (putc_hook)kfile_putc, fd);
- rl_sethook_match(&rl_ctx, parser_rl_match, NULL);
- rl_sethook_clear(&rl_ctx, (clear_hook)kfile_clearerr,fd);
-
- parser_init();
-
- protocol_registerCmds();
-
- protocol_prompt(fd);
-}
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \brief Implementation of the command protocol between the board and the host
- *
- * \author Marco Benelli <marco@develer.com>
- */
-
-
-#ifndef PROTOCOL_H
-#define PROTOCOL_H
-
-#include <drv/sipo.h>
-
-#include <kern/kfile.h>
-
-void protocol_init(KFile *fd);
-void protocol_run(KFile *fd);
-
-#endif // PROTOOCOL_H
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006, 2008 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \author Marco Benelli <marco@develer.com>
- * \author Bernie Innocenti <bernie@codewiz.org>
- * \author Daniele Basile <asterix@develer.com>
- *
- * \brief Windowing system test.
- */
-
-
-#include "protocol.h"
-#include "hw/hw_input.h"
-#include "hw/hw_adc.h"
-#include "cfg/cfg_ser.h"
-
-#include <cfg/macros.h>
-
-#include <drv/timer.h>
-#include <drv/buzzer.h>
-#include <drv/ser.h>
-
-#include <mware/parser.h>
-#include <net/keytag.h>
-
-static Serial fd_ser;
-static Serial tag_ser;
-
-int main(void)
-{
- kdbg_init();
- timer_init();
- adc_init();
- buz_init();
-
- IRQ_ENABLE;
- INPUT_INIT;
-
- /* Initialize Tag serial port and data structure */
- TagPacket pkt;
-
- /* Open the main communication port */
- ser_init(&fd_ser, CONFIG_TRIFACE_PORT);
- ser_setbaudrate(&fd_ser, CONFIG_TRIFACE_BAUDRATE);
-
- ser_init(&tag_ser, TAG_SER_PORT);
- ser_setbaudrate(&tag_ser, TAG_SER_BAUDRATE);
-
- keytag_init(&pkt, &fd_ser.fd, &tag_ser.fd);
-
- protocol_init(&fd_ser.fd);
-
- // Main loop
- for(;;)
- {
- protocol_run(&fd_ser.fd);
- keytag_poll(&pkt);
- }
-
- return 0;
-}
-
-
+++ /dev/null
-#
-# $Id$
-# Copyright 2006 Develer S.r.l. (http://www.develer.com/)
-# All rights reserved.
-#
-# Makefile fragment for DevLib triface application.
-#
-# Author: Bernie Innocenti <bernie@codewiz.org>
-#
-#
-
-# Set to 1 for debug builds
-triface_DEBUG = 1
-
-# Our target application
-TRG += triface
-CPU = atmega1281
-BOOT_ADDR_START = 0x1E000
-
-triface_PREFIX = avr-
-
-ifeq ($(CPU), atmega1281)
-triface_hfuse = 0x98
-triface_lfuse = 0x3d
-triface_efuse = 0x7f
-triface_lock = 0x2f
-else
-triface_hfuse = 0x88
-triface_lfuse = 0xff
-triface_efuse = 0xff
-triface_lock = 0x2f
-endif
-
-triface_MCU = $(CPU)
-
-triface_CSRC = \
- examples/triface/triface.c \
- examples/triface/protocol.c \
- examples/triface/hw/hw_adc.c \
- bertos/cpu/avr/drv/ser_avr.c \
- bertos/cpu/avr/drv/timer_avr.c \
- bertos/drv/timer.c \
- bertos/drv/ser.c \
- bertos/drv/buzzer.c \
- bertos/drv/sipo.c \
- bertos/mware/formatwr.c \
- bertos/mware/hex.c \
- bertos/mware/readline.c \
- bertos/mware/parser.c \
- bertos/mware/event.c \
- bertos/struct/hashtable.c \
- bertos/kern/kfile.c \
- bertos/net/keytag.c \
- #
-
-triface_PCSRC += bertos/mware/formatwr.c
-
-triface_CFLAGS = -O2 -D'ARCH=(ARCH_TRIFACE)' -D'CPU_FREQ=(14745600UL)' -D'WIZ_AUTOGEN' \
- -fno-strict-aliasing -fwrapv -Iexamples/triface -Ibertos/cpu/avr
-
-triface_LDFLAGS = -Wl
-
-triface_PROGRAMMER_CPU = atmega1281
-triface_PROGRAMMER_TYPE = stk500v2
-triface_PROGRAMMER_PORT = /dev/ttyS1
-triface_FLASH_SCRIPT = bertos/prg_scripts/avr/flash.sh
-triface_STOPFLASH_SCRIPT = bertos/prg_scripts/none.sh
-triface_DEBUG_SCRIPT = bertos/prg_scripts/nodebug.sh
-triface_STOPDEBUG_SCRIPT = bertos/prg_scripts/none.sh
-
-# Set to 1 for debug builds
-boot_DEBUG = 0
-
-# Our target application
-TRG += boot
-
-boot_MCU = $(CPU)
-boot_CSRC = \
- examples/triface/boot/main.c \
- bertos/cpu/avr/drv/ser_avr.c \
- bertos/cpu/avr/drv/flash_avr.c \
- bertos/drv/timer.c \
- bertos/cpu/avr/drv/timer_avr.c \
- bertos/drv/ser.c \
- bertos/net/xmodem.c \
- bertos/algo/crc.c \
- bertos/mware/hex.c \
- bertos/kern/kfile.c \
- #
-
-boot_PREFIX = avr-
-
-boot_CPPFLAGS = -D'ARCH=(ARCH_TRIFACE|ARCH_BOOT)' -D'CPU_FREQ=(14745600UL)' -D'WIZ_AUTOGEN' \
- -fno-strict-aliasing -fwrapv -Iexamples/triface/boot -Ibertos/cpu/avr
-
-boot_CFLAGS = -Os -mcall-prologues
-boot_LDFLAGS = -Wl,--relax -Wl,--section-start=.text=$(BOOT_ADDR_START)
-
-
-boot_PROGRAMMER_CPU = $(triface_PROGRAMMER_CPU)
-boot_PROGRAMMER_TYPE = $(triface_PROGRAMMER_TYPE)
-boot_PROGRAMMER_PORT = $(triface_PROGRAMMER_PORT)
-boot_FLASH_SCRIPT = $(triface_FLASH_SCRIPT)
-boot_STOPFLASH_SCRIPT = $(triface_STOPFLASH_SCRIPT)
-boot_DEBUG_SCRIPT = $(triface_DEBUG_SCRIPT)
-boot_STOPDEBUG_SCRIPT = $(triface_STOPDEBUG_SCRIPT)
+++ /dev/null
-/**
- * \file
- * <!--
- * This file is part of BeRTOS.
- *
- * Bertos is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * As a special exception, you may use this file as part of a free software
- * library without restriction. Specifically, if other files instantiate
- * templates or use macros or inline functions from this file, or you compile
- * this file and link it with other files to produce an executable, this
- * file does not by itself cause the resulting executable to be covered by
- * the GNU General Public License. This exception does not however
- * invalidate any other reasons why the executable file might be covered by
- * the GNU General Public License.
- *
- * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
- * Copyright 2000 Bernie Innocenti <bernie@codewiz.org>
- *
- * -->
- *
- * \version $Id$
- *
- * \author Bernie Innocenti <bernie@codewiz.org>
- *
- * \brief Declare application version strings
- */
-
-#ifndef BERTOS_VERSTAG_H
-#define BERTOS_VERSTAG_H
-
-#ifndef CFG_ARCH_CONFIG_H
- #include "cfg/cfg_arch.h"
-#endif
-
-#define APP_NAME "Triface"
-#define APP_DESCRIPTION "Trinity Interface Board"
-#define APP_AUTHOR "Develer"
-#define APP_COPYRIGHT "Copyright 2006, 2007, 2008, Develer (http://www.develer.com/)"
-
-#define VERS_MAJOR 2
-#define VERS_MINOR 1
-#define VERS_REV 0
-#define VERS_LETTER ""
-
-/**
- * If _SNAPSHOT is defined, \c VERS_TAG contains the build date
- * date instead of a numeric version string.
- */
-//#define _SNAPSHOT
-
-#ifdef _DEBUG
- #define VERS_DBG "D"
-#else
- #define VERS_DBG ""
-#endif
-
-#define __STRINGIZE(x) #x
-#define _STRINGIZE(x) __STRINGIZE(x)
-
-/** Build application version string (i.e.: "1.7.0") */
-#define MAKE_VERS(maj,min,rev) _STRINGIZE(maj) "." _STRINGIZE(min) "." _STRINGIZE(rev) VERS_LETTER VERS_DBG
-#ifdef _SNAPSHOT
- #define VERS_TAG "snapshot" " " __DATE__ " " __TIME__ " " VERS_LETTER " " VERS_DBG
-#else
- #define VERS_TAG MAKE_VERS(VERS_MAJOR,VERS_MINOR,VERS_REV)
-#endif
-
-/** Build application version string suitable for MS windows resource files (i.e.: "1, 7, 0, 1") */
-#define MAKE_RCVERS(maj,min,rev,bld) _STRINGIZE(maj) ", " _STRINGIZE(min) ", " _STRINGIZE(rev) ", " _STRINGIZE(bld)
-#define RCVERSION_TAG MAKE_VERS(VERS_MAJOR,VERS_MINOR,VERS_REV)
-
-/** The revision string (contains VERS_TAG) */
-extern const char vers_tag[];
-
-/** Sequential build number (contains VERS_BUILD) */
-extern const int vers_build_nr;
-//extern const char vers_build_str[];
-
-/** Hostname of the machine used to build this binary (contains VERS_HOST) */
-extern const char vers_host[];
-
-#endif /* BERTOS_VERSTAG_H */