Homepage

Introduction

For a great overview of the platform, see:

For more detailed introductions for specific aspects of the mbed platform, see:

For the widely available hardware platforms that already support the mbed HDK, see:

Getting Started

Official mbed C/C++ libraries

The mbed library provides the C/C++ software platform and libraries to build your applications.

All the officially supported libraries are here: mbed Official Code

Digital I/O

  • DigitalOut - Configure and control a digital output pin.
  • DigitalIn - Configure and control a digital input pin.
  • DigitalInOut - Bi-directional digital pins
  • BusIn - Flexible way to read multiple DigitalIn pins as one value
  • BusOut - Flexible way to write multiple DigitalOut pins as one value
  • BusInOut - Flexible way to read/write multiple DigitalInOut pins as one value
  • PortIn - Fast way to read multiple DigitalIn pins as one value
  • PortOut - Fast way to write multiple DigitalOut pins as one value
  • PortInOut - Fast way to read/write multiple DigitalInOut pins as one value
  • PwmOut - Pulse-width modulated output

Analog I/O

  • AnalogIn - Read the voltage applied to an analog input pin
  • AnalogOut - Set the voltage of an analog output pin

Officially supported networking libraries

Communication Interfaces

  • CAN - Controller-area network bus
  • USBDevice - Using mbed as a USB Device
    • USBMouse - Emulate a USB Mouse with absolute or relative positioning
    • USBKeyboard - Emulate a USB Keyboard, sending normal and media control keys
    • USBMouseKeyboard - Emulate a USB Keyboard and a USB mouse with absolute or relative positionning
    • USBHID - Communicate over a raw USBHID interface, great for driverless communication with a custom PC program
    • USBMIDI - Send and recieve MIDI messages to control and be controlled by PC music sequencers etc
    • USBSerial - Create a virtual serial port over the USB port. Great to easily communicate with a computer.
    • USBAudio - Create a USBAudio device able to receive audio stream from a computer over USB.
    • USBMSD - Generic class which implements the Mass Storage Device protocol in order to access all kinds of block storage chips

Time and Interrupts

  • Timer - Create, start, stop and read a timer
  • Timeout - Call a function after a specified delay
  • Ticker - Repeatedly call a function
  • InterruptIn - Trigger an event when a digital input pin changes.
  • wait - Wait for a specified time
  • time - Get and set the realtime clock

File System

  • LocalFileSystem - Using the mbed disk as storage from within a program
  • SDFileSystem - Using the mbed disk as storage from within a program

Real-time Operating System

Digital Signal Processing

Further Technical Topics

  • mbed_official - All the code officially supported by the mbed team

From Prototype to Product

More Information




9 related questions:


38 comments:

» Show archived comment by 4180_1
08 Oct 2010

Should there be a link here for the rtc_time functions?

» Show archived comment by sivagovind
08 Oct 2010

Just powered up mbed board. It is awsome guys!!!

» Show archived comment by chrisbryant
20 Oct 2010

It would be nice to have a clean set of documents, maybe in Texinfo with a variety of formats. Otherwise, nice documentation - plenty of room to grow.

» Show archived comment by chinmay
20 Oct 2010

First Time in India : ARM Industrial training on Mbed platform at Bhubaneswar India for Summer 2011. detail will be post very soon. mbed rocks!!!!!!!!

» Show archived comment by helmut
27 Oct 2010

to all member of mbed, is there any possebility to debug the MPU? Like TI and Freescale do allow it? Would be good, cause I have a problem. Do read AnalogIn nothing connected but after one round it swiches to it :( please answer

» Show archived comment by Lerche
27 Oct 2010

Helmut: I suggest making a thread in the forum. Lerche

31 Oct 2010

It would be nice to make it possible to download all documentation in a set of pdf-files at this page

05 Nov 2010

Thomas Boje wrote:

It would be nice to make it possible to download all documentation in a set of pdf-files at this page

This is a good idea.

» Show archived comment by ruixuedz
06 Nov 2010

Hi, why do not have usb libary? How can I read or write data through usb? Thanks.

» Show archived comment by Lerche
06 Nov 2010

Jiang: Search the forums for USB.

» Show archived comment by lescronin
13 Nov 2010

About a week ago jiang ruiting asked about a USB library. I too have been looking for a library to use the on chip USB device. I haven't found one. Does one exist? Plenty of info on the serial port USB but not the on chip USB port.

Les

» Show archived comment by Lerche
17 Nov 2010

Les: What are you asking about? Is it the onboard flash? or the USB directly to the LPC1768?

23 Nov 2010

Christian, sorry for the delay in responding. I want to use the USB interface directly on the LPC1768 ic. Refered to in the data sheet (Rev. 6 — 25 August 2010) for the LPC1768 in chapter 7.12. The pins are brought out on pins 31 & 32 of the 40 pin header.

My aim is to use the mbed platform for applications using the LPC1768 or similar devices without the support peripherals on the mbed pcb. I believe that the USB interface on the mbed is realised using the serial port and an external RS232 to USB converter.

I just need to know if this interface has library support, if not will it be supported in the near future?

I appreciate your assistance.

Les Cronin

23 Nov 2010

Les: Search for BlueUSB and you shall find. :-)

24 Nov 2010

Hi,can anyone please tell me how can I register a mbed using different user name and password which has been registered before and details is not known to me.

26 Nov 2010

Compiler and standard library documentation

Hi, while working with RFID tags I needed some information:
1. What is the size of "long" and "long long"? This information is usually stored in macros LONG_MAX and LONG_LONG_MAX in C standard header limits.h
2. Details of C standard library functions strtol() and strtoll()? Particularly error reporting, like the use of "errno" which it seems is NOT available in the mbed system.

In *nix systems either man pages (for standard functions) or examining the header file sources (/usr/include/...) gets me the answers. With locally installed compilers/tool-chain this information is available locally, most probably installed with the compiler and/or development system (binutils).

Is this information available in this environment? i.e. On this web site?
How are standard libraries "included" into program units?
How is this different from the familiar gcc/g++?

The link to ARM RVDS from the /handbook/mbed-Compiler page is just Marketing/Sales info from arm.com. What is really needed is online free (as in beer) access to the User Guides etc. Also, information regarding the output from the compiler that depends upon installation details and any runtime options passed to to the compiler executing on your web site would also be needed to complete the picture.

This type of information is only infrequently needed, but when it is, it is extremely frustrating not to be able to find it.

(And, I do this type of work for a living. So, I guess I have high expectations).

26 Nov 2010

Rick, if you want discussion, you should use the forum. That said, check these links.

ARM® Compiler toolchain Compiler Reference Version 4.1

Basic data types

05 Dec 2010

Are the LPC1768's SSP0 and SSP1 functions (and the associated interrupt and DMA access) formalized anywhere in the mBed site's libraries? Are the device-specific constants and functions (e.g. myled, led(LED1) of the example program) listed anywhere? Thank you.

05 Dec 2010

Hi Whit,

The SSP0/1 are what drive the SPI library interfaces (although they don't use DMA), and LED1-4 are pin enumerations for the onboard LEDs, available to both DigitalOut and PwmOut

07 Dec 2010

Dear Simon, Thank you for your message.

Is there any way to access the additional underlying LPC1768 SPP0 and SPP1 functionality via the existing mBed libraries? Or if not, is there anything stopping me from writing from a C program to the underlying registers to access the SPP functionality? My goal is to capture data from some high speed ADCs.

Is there any central documentation location which illustrates definitions or availability of functions and constants such as led(), myled, LED1? I apologize for asking if I am overlooking some fundamental documentation source.

Simon Ford wrote:

Hi Whit,

The SSP0/1 are what drive the SPI library interfaces (although they don't use DMA), and LED1-4 are pin enumerations for the onboard LEDs, available to both DigitalOut and PwmOut

Posting new comments for this page has been disabled