Frans Korhonen / Mbed 2 deprecated RMCIOS-Mbed

Dependencies:   mbed mbed-rtos EthernetInterface

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers RMCIOS-Mbed.cpp Source File

RMCIOS-Mbed.cpp

00001 /* 
00002 RMCIOS - Reactive Multipurpose Control Input Output System
00003 Copyright (c) 2018 Frans Korhonen
00004 
00005 RMCIOS was originally developed at Institute for Atmospheric 
00006 and Earth System Research / Physics, Faculty of Science, 
00007 University of Helsinki, Finland
00008 
00009 Assistance, experience and feedback from following persons have been 
00010 critical for development of RMCIOS: Erkki Siivola, Juha Kangasluoma, 
00011 Lauri Ahonen, Ella Häkkinen, Pasi Aalto, Joonas Enroth, Runlong Cai, 
00012 Markku Kulmala and Tuukka Petäjä.
00013 
00014 This file is part of RMCIOS. This notice was encoded using utf-8.
00015 
00016 RMCIOS is free software: you can redistribute it and/or modify
00017 it under the terms of the GNU General Public License as published by
00018 the Free Software Foundation, either version 3 of the License, or
00019 (at your option) any later version.
00020 
00021 RMCIOS is distributed in the hope that it will be useful,
00022 but WITHOUT ANY WARRANTY; without even the implied warranty of
00023 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00024 GNU General Public License for more details.
00025 
00026 You should have received a copy of the GNU General Public Licenses
00027 along with RMCIOS.  If not, see <http://www.gnu.org/licenses/>.
00028 */
00029 
00030 /*
00031  * Changelog: (date,who,description)
00032  */
00033 #define VERSION_STR "Mbed" 
00034  
00035 #include "mbed.h"
00036 #include "RMCIOS-system.h"
00037 #include "std_channels.h"
00038 #include "base_channels.h"
00039 #include "mbed_channels.h"
00040 
00041 #include <stdio.h>
00042 
00043 LocalFileSystem local("local") ;
00044 // data_handle_name,MAX_CLASSES,MAX_CHANNELS
00045 CREATE_STATIC_CHANNEL_SYSTEM_DATA (ch_sys_dat, 80, 180);  
00046 
00047 int main (void)
00048 {
00049    printf ("\nRMCIOS - Reactive Multipurpose Control Input Output Systen\r\n["
00050            "] \r\n");
00051    printf ("Copyright (c) 2018 Frans Korhonen\n");
00052    printf ("\nInitializing system:\r\n");
00053    ////////////////////////////////////////////////////////////////////////
00054    // Init channel system
00055    ////////////////////////////////////////////////////////////////////////
00056    const struct context_rmcios *context;
00057    // init channel api system
00058    set_channel_system_data ((struct ch_system_data *) &ch_sys_dat);     
00059    context = get_rmios_context();
00060 
00061    // Init channel modules:
00062    init_base_channels(context) ;
00063    init_std_channels(context) ;
00064    init_mbed_channels(context) ;
00065    init_mbed_platform_channels(context) ; 
00066    
00067    write_str(context, context->control, 
00068              "read as control file /local/conf.ini\n", 0);
00069    
00070    ///////////////////////////////////////////////////////////////////////
00071    // initial configuration 
00072    ///////////////////////////////////////////////////////////////////////
00073    printf ("\r\nSystem initialized!\r\n");
00074 
00075    /////////////////////////////////////////////////////////////////////////
00076    // reception loop
00077    /////////////////////////////////////////////////////////////////////////
00078    while (1)
00079    {
00080         wait(1) ;
00081    }
00082 }
00083 
00084