MMEx with SPI Slave to allow legacy devices to communicate with modern media such as USB, SD cards, the internet and all of the mbed\'s other interfaces

Dependencies:   NetServices MSCUsbHost mbed TMP102 SDFileSystem

Committer:
DeMein
Date:
Sun Feb 27 18:54:40 2011 +0000
Revision:
0:67a55a82ce06
Version as submitted to the NXP Design Challenge

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DeMein 0:67a55a82ce06 1 /* MMEx for MBED - Network Command processing
DeMein 0:67a55a82ce06 2 * Copyright (c) 2011 MK
DeMein 0:67a55a82ce06 3 *
DeMein 0:67a55a82ce06 4 * Permission is hereby granted, free of charge, to any person obtaining a copy
DeMein 0:67a55a82ce06 5 * of this software and associated documentation files (the "Software"), to deal
DeMein 0:67a55a82ce06 6 * in the Software without restriction, including without limitation the rights
DeMein 0:67a55a82ce06 7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
DeMein 0:67a55a82ce06 8 * copies of the Software, and to permit persons to whom the Software is
DeMein 0:67a55a82ce06 9 * furnished to do so, subject to the following conditions:
DeMein 0:67a55a82ce06 10 *
DeMein 0:67a55a82ce06 11 * The above copyright notice and this permission notice shall be included in
DeMein 0:67a55a82ce06 12 * all copies or substantial portions of the Software.
DeMein 0:67a55a82ce06 13 *
DeMein 0:67a55a82ce06 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
DeMein 0:67a55a82ce06 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
DeMein 0:67a55a82ce06 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
DeMein 0:67a55a82ce06 17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
DeMein 0:67a55a82ce06 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
DeMein 0:67a55a82ce06 19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
DeMein 0:67a55a82ce06 20 * THE SOFTWARE.
DeMein 0:67a55a82ce06 21 */
DeMein 0:67a55a82ce06 22
DeMein 0:67a55a82ce06 23 /**
DeMein 0:67a55a82ce06 24 \file nfuncs.h
DeMein 0:67a55a82ce06 25 \brief Commands starting with N for Networking commands
DeMein 0:67a55a82ce06 26 */
DeMein 0:67a55a82ce06 27
DeMein 0:67a55a82ce06 28 #ifndef NFUNCS_H
DeMein 0:67a55a82ce06 29 #define NFUNCS_H
DeMein 0:67a55a82ce06 30
DeMein 0:67a55a82ce06 31 #include "mmex.h"
DeMein 0:67a55a82ce06 32
DeMein 0:67a55a82ce06 33 // definition of the N-functions for Network
DeMein 0:67a55a82ce06 34 #define ninit 'I' // Initialize network
DeMein 0:67a55a82ce06 35 #define nstop 'S' // Stop Network
DeMein 0:67a55a82ce06 36 #define ntime 'T' // Get time through NTP server
DeMein 0:67a55a82ce06 37 #define nget 'G' // Get file data
DeMein 0:67a55a82ce06 38 #define nhttp 'H' // HTTP Server commands
DeMein 0:67a55a82ce06 39
DeMein 0:67a55a82ce06 40 #define MMEx_Hostname "MMEx"
DeMein 0:67a55a82ce06 41
DeMein 0:67a55a82ce06 42 /**
DeMein 0:67a55a82ce06 43 * Global variable to enable/disable the HTTP-Server
DeMein 0:67a55a82ce06 44 */
DeMein 0:67a55a82ce06 45 extern bool network_enabled;
DeMein 0:67a55a82ce06 46
DeMein 0:67a55a82ce06 47 /**
DeMein 0:67a55a82ce06 48 * Global variable to indicate if HTTP Server is running
DeMein 0:67a55a82ce06 49 */
DeMein 0:67a55a82ce06 50 extern bool httpserver_enabled;
DeMein 0:67a55a82ce06 51
DeMein 0:67a55a82ce06 52 /**
DeMein 0:67a55a82ce06 53 * Poll the network (must be called periodically while server is active)
DeMein 0:67a55a82ce06 54 */
DeMein 0:67a55a82ce06 55 void netpoll();
DeMein 0:67a55a82ce06 56
DeMein 0:67a55a82ce06 57 void parse_N();
DeMein 0:67a55a82ce06 58 void do_ninit();
DeMein 0:67a55a82ce06 59 void do_nstop();
DeMein 0:67a55a82ce06 60 void do_ntime();
DeMein 0:67a55a82ce06 61 void do_nget();
DeMein 0:67a55a82ce06 62 void do_nhttp();
DeMein 0:67a55a82ce06 63 void do_ndefault();
DeMein 0:67a55a82ce06 64
DeMein 0:67a55a82ce06 65 #endif