Major rework of the recent changes.- optimized interrupt system (removed aos_interrupt.h/c)- updated AMiRo-LLD submodule- updated all config files to match the latest templates by ChibiOS- fixed several issues regarding the new timer system (intervals)
Added control functions to the channel-based datatypes in AMiRo-OS.
Updated Chibi-OS to version 18.2 and adapted AMiRo-OS accordingly: - Switched to new time conversion macros - Use PAL for interrupts instead of the EXT Driver - Use new kernel tests
Added missing descriptions for the variables introduced in the last commit.
Introduced an mechanism to measure clock skew during operation phase, if AMIROOS_CFG_PROFILE is enabled (non-master modules only).The low-pass filtered skew is printed via the module:info shell command.
RTC date/time is now synchronized on startup from the SSSP master module.Further changes: - several enhancements to the newly introduced module stack initialization procedure - several minor enhancements to core functionality
Introduced SSSP stage 3 of the startup phase (module stack initialization).
Several enhancements to memory structure, naming and code quality.AMiRo-OS is now prepared so the SSSP startup stage 3 (module stack initialization can be implemented).
Introduced the capability to set and get a date&time value via the shell.
prepended several macros with the 'AOS_' prefix
cleaned up include tree
shell thread priority can now be configured via aosconf.h
enhanced hooks in aos_main.cpp: - INIT_HOOK_0 now supports optional arguments like all other hooks - new hook introduced to add custom includes - new hook introduced to add custom static variables - renamed hook for custom thread variables
The main.c was renamed to aos_main.cpp and will compiled as C++ file from now on.This allows to use full C++ capabilities when using any hooks.
FIX: AosShellChannel was not known in main.c if shell was disabled.
AosShellChannel now contains a pointer to a BaseAsynchronousChannel instead of a AosIOCHannel.Fixed an issue with AosIOStreams as well as AosShellStreams regarding multiple reading/writing from/to channels.
Major overhaul to the I/O functionality:
The SequentialStremMultiplexer (SSM) has been replaced by AosIOStream.The AosIOStream class acts like a BaseSequentialStream but consists of multiple AosIOChannels.Each AosIOChannel again implements a BaseAsynchronousChannel and thus is a derived class of BaseSequentialStream as well....
Modified aos_unittest.h/.c files to prevent unnecessary includes.
Major overhaul to AMiRo-OS version 2.0.0