aboutsummaryrefslogtreecommitdiffstats
path: root/demos/AVR
diff options
context:
space:
mode:
authortfateba <none@example.com>2017-06-10 00:24:10 +0000
committertfateba <none@example.com>2017-06-10 00:24:10 +0000
commit7d7b9a866f2ffb09cf6894dc675c95c88e432744 (patch)
treea41498dbd812c7b886fbc571f2a4af71e8a99801 /demos/AVR
parentf536830d7685a088d9d7f17f60986e5c6e38d8e1 (diff)
downloadChibiOS-7d7b9a866f2ffb09cf6894dc675c95c88e432744.tar.gz
ChibiOS-7d7b9a866f2ffb09cf6894dc675c95c88e432744.tar.bz2
ChibiOS-7d7b9a866f2ffb09cf6894dc675c95c88e432744.zip
Update the AVR Arduino Uno NIL demo.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@10254 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'demos/AVR')
-rw-r--r--demos/AVR/NIL-ARDUINO-UNO/Makefile8
-rw-r--r--demos/AVR/NIL-ARDUINO-UNO/chconf.h (renamed from demos/AVR/NIL-ARDUINO-UNO/nilconf.h)138
-rw-r--r--demos/AVR/NIL-ARDUINO-UNO/main.c2
3 files changed, 120 insertions, 28 deletions
diff --git a/demos/AVR/NIL-ARDUINO-UNO/Makefile b/demos/AVR/NIL-ARDUINO-UNO/Makefile
index 0630289bd..cef0df809 100644
--- a/demos/AVR/NIL-ARDUINO-UNO/Makefile
+++ b/demos/AVR/NIL-ARDUINO-UNO/Makefile
@@ -49,7 +49,7 @@ F_CPU = 16000000
FORMAT = ihex
# Target file name (without extension).
-TARGET = nil
+TARGET = ch
# Object files directory
# To put object files in current directory, use a dot (.), do NOT make
@@ -254,10 +254,10 @@ LDFLAGS += $(PRINTF_LIB) $(SCANF_LIB) $(MATH_LIB)
# Type: avrdude -c ?
# to get a full listing.
#
-AVRDUDE_PROGRAMMER = avrisp2
+AVRDUDE_PROiGRAMMER = arduino
# com1 = serial port. Use lpt1 to connect to parallel port.
-AVRDUDE_PORT = /dev/tty.usbmodem00034091 # programmer connected to serial device
+AVRDUDE_PORT = /dev/ttyACM0 # programmer connected to serial device
AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex
#AVRDUDE_WRITE_EEPROM = -U eeprom:w:$(TARGET).eep
@@ -278,7 +278,7 @@ AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex
AVRDUDE_FLAGS = -p $(MCU)
AVRDUDE_FLAGS += -P $(AVRDUDE_PORT)
-AVRDUDE_FLAGS += -b 57600
+AVRDUDE_FLAGS += -b 115200
AVRDUDE_FLAGS += -c $(AVRDUDE_PROGRAMMER)
AVRDUDE_FLAGS += $(AVRDUDE_NO_VERIFY)
AVRDUDE_FLAGS += $(AVRDUDE_VERBOSE)
diff --git a/demos/AVR/NIL-ARDUINO-UNO/nilconf.h b/demos/AVR/NIL-ARDUINO-UNO/chconf.h
index 849e20cae..24ddd1520 100644
--- a/demos/AVR/NIL-ARDUINO-UNO/nilconf.h
+++ b/demos/AVR/NIL-ARDUINO-UNO/chconf.h
@@ -15,7 +15,7 @@
*/
/**
- * @file nilconf.h
+ * @file chconf.h
* @brief Configuration file template.
* @details A copy of this file must be placed in each project directory, it
* contains the application specific kernel settings.
@@ -25,8 +25,10 @@
* @{
*/
-#ifndef _NILCONF_H_
-#define _NILCONF_H_
+#ifndef CHCONF_H
+#define CHCONF_H
+
+#define _CHIBIOS_NIL_CONF_
/*===========================================================================*/
/**
@@ -40,7 +42,7 @@
* @note This number is not inclusive of the idle thread which is
* Implicitly handled.
*/
-#define NIL_CFG_NUM_THREADS 2
+#define CH_CFG_NUM_THREADS 2
/** @} */
@@ -55,18 +57,15 @@
* @brief System time counter resolution.
* @note Allowed values are 16 or 32 bits.
*/
-#define NIL_CFG_ST_RESOLUTION 16
+#define CH_CFG_ST_RESOLUTION 16
/**
* @brief System tick frequency.
- * @note This value together with the @p NIL_CFG_ST_RESOLUTION
+ * @note This value together with the @p CH_CFG_ST_RESOLUTION
* option defines the maximum amount of time allowed for
* timeouts.
- * @note Currently the Timer is configured with a prescaler of
- * 1024. Arduinos running at 16MHz will have a frequency
- * of 16MHz/1024. This will provide a resolution of ~64uS.
*/
-#define NIL_CFG_ST_FREQUENCY 15624
+#define CH_CFG_ST_FREQUENCY 15624
/**
* @brief Time delta constant for the tick-less mode.
@@ -76,7 +75,7 @@
* The value one is not valid, timeouts are rounded up to
* this value.
*/
-#define NIL_CFG_ST_TIMEDELTA 2
+#define CH_CFG_ST_TIMEDELTA 2
/** @} */
@@ -88,12 +87,79 @@
/*===========================================================================*/
/**
+ * @brief Semaphores APIs.
+ * @details If enabled then the Semaphores APIs are included in the kernel.
+ *
+ * @note The default is @p TRUE.
+ */
+#define CH_CFG_USE_SEMAPHORES TRUE
+
+/**
+ * @brief Mutexes APIs.
+ * @details If enabled then the mutexes APIs are included in the kernel.
+ *
+ * @note Feature not currently implemented.
+ * @note The default is @p FALSE.
+ */
+#define CH_CFG_USE_MUTEXES FALSE
+
+/**
* @brief Events Flags APIs.
* @details If enabled then the event flags APIs are included in the kernel.
*
* @note The default is @p TRUE.
*/
-#define NIL_CFG_USE_EVENTS TRUE
+#define CH_CFG_USE_EVENTS TRUE
+
+/**
+ * @brief Mailboxes APIs.
+ * @details If enabled then the asynchronous messages (mailboxes) APIs are
+ * included in the kernel.
+ *
+ * @note The default is @p TRUE.
+ * @note Requires @p CH_CFG_USE_SEMAPHORES.
+ */
+#define CH_CFG_USE_MAILBOXES TRUE
+
+/**
+ * @brief Core Memory Manager APIs.
+ * @details If enabled then the core memory manager APIs are included
+ * in the kernel.
+ *
+ * @note The default is @p TRUE.
+ */
+#define CH_CFG_USE_MEMCORE TRUE
+
+/**
+ * @brief Heap Allocator APIs.
+ * @details If enabled then the memory heap allocator APIs are included
+ * in the kernel.
+ *
+ * @note The default is @p TRUE.
+ */
+#define CH_CFG_USE_HEAP TRUE
+
+/**
+ * @brief Memory Pools Allocator APIs.
+ * @details If enabled then the memory pools allocator APIs are included
+ * in the kernel.
+ *
+ * @note The default is @p TRUE.
+ */
+#define CH_CFG_USE_MEMPOOLS TRUE
+
+/**
+ * @brief Managed RAM size.
+ * @details Size of the RAM area to be managed by the OS. If set to zero
+ * then the whole available RAM is used. The core memory is made
+ * available to the heap allocator and/or can be used directly through
+ * the simplified core memory allocator.
+ *
+ * @note In order to let the OS manage the whole RAM the linker script must
+ * provide the @p __heap_base__ and @p __heap_end__ symbols.
+ * @note Requires @p CH_CFG_USE_MEMCORE.
+ */
+#define CH_CFG_MEMCORE_SIZE 0
/** @} */
@@ -105,14 +171,40 @@
/*===========================================================================*/
/**
+ * @brief Debug option, kernel statistics.
+ *
+ * @note Feature not currently implemented.
+ * @note The default is @p FALSE.
+ */
+#define CH_DBG_STATISTICS FALSE
+
+/**
+ * @brief Debug option, system state check.
+ *
+ * @note The default is @p FALSE.
+ */
+#define CH_DBG_SYSTEM_STATE_CHECK FALSE
+
+/**
+ * @brief Debug option, parameters checks.
+ *
+ * @note The default is @p FALSE.
+ */
+#define CH_DBG_ENABLE_CHECKS FALSE
+
+/**
* @brief System assertions.
+ *
+ * @note The default is @p FALSE.
*/
-#define NIL_CFG_ENABLE_ASSERTS FALSE
+#define CH_DBG_ENABLE_ASSERTS FALSE
/**
* @brief Stack check.
+ *
+ * @note The default is @p FALSE.
*/
-#define NIL_CFG_ENABLE_STACK_CHECK FALSE
+#define CH_DBG_ENABLE_STACK_CHECK FALSE
/** @} */
@@ -126,8 +218,8 @@
/**
* @brief System initialization hook.
*/
-#if !defined(NIL_CFG_SYSTEM_INIT_HOOK) || defined(__DOXYGEN__)
-#define NIL_CFG_SYSTEM_INIT_HOOK() { \
+#if !defined(CH_CFG_SYSTEM_INIT_HOOK) || defined(__DOXYGEN__)
+#define CH_CFG_SYSTEM_INIT_HOOK() { \
}
#endif
@@ -135,13 +227,13 @@
* @brief Threads descriptor structure extension.
* @details User fields added to the end of the @p thread_t structure.
*/
-#define NIL_CFG_THREAD_EXT_FIELDS \
+#define CH_CFG_THREAD_EXT_FIELDS \
/* Add threads custom fields here.*/
/**
* @brief Threads initialization hook.
*/
-#define NIL_CFG_THREAD_EXT_INIT_HOOK(tr) { \
+#define CH_CFG_THREAD_EXT_INIT_HOOK(tr) { \
/* Add custom threads initialization code here.*/ \
}
@@ -151,7 +243,7 @@
* should be invoked from here.
* @note This macro can be used to activate a power saving mode.
*/
-#define NIL_CFG_IDLE_ENTER_HOOK() { \
+#define CH_CFG_IDLE_ENTER_HOOK() { \
}
/**
@@ -160,14 +252,14 @@
* should be invoked from here.
* @note This macro can be used to deactivate a power saving mode.
*/
-#define NIL_CFG_IDLE_LEAVE_HOOK() { \
+#define CH_CFG_IDLE_LEAVE_HOOK() { \
}
/**
* @brief System halt hook.
*/
-#if !defined(NIL_CFG_SYSTEM_HALT_HOOK) || defined(__DOXYGEN__)
-#define NIL_CFG_SYSTEM_HALT_HOOK(reason) { \
+#if !defined(CH_CFG_SYSTEM_HALT_HOOK) || defined(__DOXYGEN__)
+#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \
}
#endif
@@ -177,6 +269,6 @@
/* Port-specific settings (override port settings defaulted in nilcore.h). */
/*===========================================================================*/
-#endif /* _NILCONF_H_ */
+#endif /* CHCONF_H */
/** @} */
diff --git a/demos/AVR/NIL-ARDUINO-UNO/main.c b/demos/AVR/NIL-ARDUINO-UNO/main.c
index 838d198dc..ea1b470c4 100644
--- a/demos/AVR/NIL-ARDUINO-UNO/main.c
+++ b/demos/AVR/NIL-ARDUINO-UNO/main.c
@@ -15,7 +15,7 @@
*/
#include "hal.h"
-#include "nil.h"
+#include "ch.h"
/*
* Thread 1.