Show
Ignore:
Timestamp:
08/05/08 20:54:37 (5 months ago)
Author:
liamstask
Message:

- update mainpage of doc

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • firmware/trunk/core/makingthings/core.txt

    r748 r779  
    1919  Functions available to the Make Controller Board. 
    2020   
    21   The \b Core module provides an API to devices that are all included on the Make Controller, no matter 
    22   what interface electronics are used around it.  The \ref Libraries module extends the Core module to provide 
     21  \b Core provides the basic functionality of the Make Controller.  The \ref Libraries module extends the Core module to provide 
    2322  additional functionality. 
    2423*/ 
     
    2827  
    2928 \section overview Overview 
    30    
    31   The Make Controller Board is a powerful, flexible, and easy to use microcontroller, based on the Atmel ARM7 SAM7X256. 
    32   It is designed to interface easily to additional circuitry in order to connect with the real world. 
    33    
    34   The Make Controller Board can be plugged into into the Make Application Board which makes use of nearly all the  
    35   devices on the Controller. Alternatively, it can be plugged into a piece of hardware of your creation. 
     29   
     30  The Make Controller firmware API provides a simple software interface to the Make Controller.  The main features 
     31  include an \b OS (operating system), a full \b Ethernet system, a \b USB (virtual serial port) system, and many others. 
     32   
     33  The \ref Core module provides the basic capabilities of the Controller and a variety of \ref Libraries provide 
     34  additional functionality that can easily be added/removed based on the needs of a particular project. 
    3635 
    37   To jump right into browsing the API, click on \b Modules above. 
     36  To jump right into browsing the entire API, click on \b Modules above.  For general info, check the <a href="http://www.makingthings.com/documentation/tutorial/programming-the-make-controller-kit"> 
     37  Programming the Make Controller</a> tutorial on the MakingThings site. 
     38   
     39  \section Tools 
     40  The easiest way to get started programming the Make Controller is with \b mcbuilder, a program that provides  
     41  a simple development environment, compiler and uploader in a single download.  Check the  
     42  <a href="http://www.makingthings.com/resources/downloads">MakingThings download page</a> for details. 
     43   
     44  Otherwise, programs for the Make Controller Kit can be built using the freely available ARM-flavored  
     45  version of the GCC compiler, \b arm-elf-gcc.  Many toolchains are available - OS X and Windows versions can  
     46  be found on the <a href="http://www.makingthings.com/resources/downloads">MakingThings download page</a>. 
     47  Other good options include: 
     48  - GNU-ARM: http://www.gnuarm.com 
     49  - WinARM (Windows-only): http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/#winarm 
     50  - YAGARTO (Windows-only): http://www.yagarto.de 
     51 
     52  To upload new firmware to your Make Controller, you have a few options: 
     53  - Use \b mcbuilder (Make Controller Builder) or \b mchelper (Make Controller Helper), from <a href="http://www.makingthings.com/resources/downloads">MakingThings</a>. 
     54  - Use \b sam7utils, a command line app: http://oss.tekno.us/sam7utils 
     55  - Use a JTAG device. 
     56 
     57  Rowley also provides a very good IDE for ARM7 projects called \b CrossWorks, which supports in-circuit debugging.  There are single user 
     58  licenses available.  Check http://www.rowley.co.uk/arm/index.htm 
    3859     
    39   \section soft_env Software Environment  
     60  \section Licenses 
    4061  The Make Controller Kit software environment is a fusion of four main bodies of code: 
    4162  - User code - the applications that you, the user, create. 
     
    4465  - lwIP - a complete and open source TCIP/IP code library.  See http://www.sics.se/~adam/lwip/ 
    4566 
    46   To ensure that the software environment for the Controller is consistent, regardless of the interface hardware, 
    47   the code for the Controller Board has been kept separate from the code for the Application Board to make this as easy 
    48   as possible: 
    49   - The \ref Core module provides the core routines required for the Make Controller Board. 
    50   - The \ref Libraries module provides routines that work with the Make Application Board, and are often based on or use 
    51   code from the Core module. 
    52   - The \ref OSC module provides a communication interface to the Make Controller Kit from other computers and devices. 
    53  
    54   Software for the Make Controller Kit is open source, and thus subject to the licensing of each module of code.  Be sure to acquaint  
    55   yourself with the licenses for the main bodies of code in the Make Controller firmware codebase: 
     67  This software is all open source, and thus subject to the licensing of each module  
     68  of code.  All MakingThings specific code is licensed under the Apache 2.0 license, which is quite flexible for 
     69  both open source and commercial projects.  Be sure to acquaint yourself with the licenses for the main  
     70  bodies of code in the Make Controller firmware codebase: 
    5671  - MakingThings: http://www.apache.org/licenses/LICENSE-2.0.html 
    5772  - FreeRTOS: http://www.freertos.org/a00114.html 
    5873  - lwIP: http://www.xfree86.org/3.3.6/COPYRIGHT2.html#5 
    5974 
    60   \section Tools 
    61   The firmware for the Make Controller Kit can be built using the freely available ARM-flavored version of the GCC compiler, \b arm-elf-gcc. 
    62   Many toolchains are available - OS X and Windows versions can be found on the MakingThings downloads page: http://www.makingthings.com/resources/downloads 
    63   Other good options include: 
    64   - GNU-ARM: http://www.gnuarm.com 
    65   - WinARM (Windows-only): http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/#winarm 
    66   - YAGARTO (Windows-only): http://www.yagarto.de 
    67  
    68   To upload new firmware to your Make Controller, you have a few options: 
    69   - Use \b mchelper, Make Controller Helper, an app from MakingThings: http://www.makingthings.com/resources/downloads 
    70   - Use \b sam7utils, a command line app: http://oss.tekno.us/sam7utils 
    71   - Use a JTAG device. 
    72  
    73   Rowley also provides a very good IDE for ARM7 projects called \b CrossWorks, which supports in-circuit debugging.  There are single user 
    74   licenses available.  Check http://www.rowley.co.uk/arm/index.htm 
    75  
    7675  \section Community 
    7776  As you begin to create projects with the Make Controller, please consider contributing any potentially helpful material you generate 
    78   or come across.  This could be anything from source code, to schematics, to instructions on how to interface with a particular device. 
     77  or come across.  This could be anything from source code, to schematics, to instructions on how to interface with a particular device.  Particularly good for sharing are additional libraries that provide further functionality. 
    7978 
    8079  The best places to get in touch are: