You are viewing an older revision! See the latest version

Homepage

http://mbed.org/media/img/mbedMicrocontroller.jpg

mbed Cookbook Community Wiki

Welcome to the mbed Cookbook, a wiki for publishing user-contributed libraries and resources. This is the community "Handbook" for all the useful component and library building blocks that can be reused to cook up your prototypes.

Please feel free contribute component libraries, building blocks and any reference that could be reused. If you see ways to improve existing resources with extra examples, explanations or insights, please jump in!

Introduction and Help

  • Course Notes - Course notes being developed to support workshops, lectures and self learning

Notebooks

This is the cookbook, which is for documenting components, libraries and tutorials, but for project writeups and tips, also try the Notebooks!

Components and Libraries

This section is for information about different reusable building blocks; primarily components and the libraries, code and information to make use of them. For more about Libraries, see Working with Libraries.

TCP/IP Networking

Network clients and servers

Internet of Things and Websockets

USB

Official USB Libraries can be found in the handbook:

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

Here some other examples:

LCDs and Displays

Audio

Wireless

Motors and Actuators

  • Servo - Control a Radio Control (R/C) model servo
  • Motor - Control a DC motor with PWM and an H-bridge
  • Dynamixel AX12 Servo - Digitally controlled robot servo
  • SimpleSteppers - A software interface to TIMER2 to drive upto four stepper motors
  • SimpleRCservos - A software interface to PWM to control simple radio-control servo units

Sensors

Cameras

  • CameraC328 - C328 (COMedia) - JPEG Color Camera with UART Interface
  • Camera_LS_Y201 - LinkSprite JPEG Color Camera TTL Interface

Accelerometer

Inclinometers

  • SCA61T - Single axis digital SPI inclinometer

Compass

NFC/RFID

Barcode

Temperature

Clocks and Oscillators

  • Si570 - Silicon Laboratories Si570 frequency synthesizer, with I2C interface.

External ADC/DAC

Interfaces and Drivers

Storage, Smart Cards, and Magnetic Cards

Digital Signal Processing

Interfacing with other languages

Utilities for an application

  • ConfigFile - Variable configuration file helper class
  • FirmwareUpdater - Update your application binary via WEB.
  • SerialBuffered - An extension to the Serial library that provides customisable buffering
  • DebounceIn - Extends DigitalIn to add mechanical switch deboucing of inputs.
  • PinDetect - Similar to DebounceIn above but adds "interrupt" style callbacks on pin state change.
  • MODGPS - A library that supports easily adding a GPS module to your project.
  • MODMAX7456 - A library that supports the MAX7456 on-screen display chip.
  • MODSERIAL - An extended version of Serial that provides full IO buffering.
  • MODDMA - A library that manages the GPDMA peripheral as an easy to use library.
  • MAX3100 Additional external serial ports.
  • FunctionPointer - Mbed's callback mechanism explained
  • FPointer - An advanced library callback mechanism
  • ASyncTicker - a ticker not using an ISR, allowing for more complex stuff
  • Localization - a library for storing external / to-be-localized strings
  • TimeZone - TimeZone handling
  • CSV parser - port of Israel Ekpo\'s CSV parser library
  • SPXml parser - Mbed port of the Simple Plain Xml parser.
  • MD5 - port of a simple MD5 library
  • MatrixClass - A class to handle Matrices.

Baseboards

Breadboards & Breakout Boards

Reference, Tutorials and Examples, Events

This section is for the sort of reusable information that can help you get your job done.

Events & Classes

Books

Tutorials and Examples

Internet of Things

Software Development

Hardware Tutorials

Robotics

Reference

PCBs

This section is about PCB design resources

Projects

Cookbook pages or links to notebook pages documenting any projects you are working on.

Community and Support

Other Things

  • Blogroll - Add in your favourite blogs and mentions of mbed
  • Backup - Backup your published programs and libraries



3 related questions:

21 comments:

11 Oct 2010

What is the difference between the LPC2368 & LPC1768,

the only thing i can find is LPC1768 appeas to have more code examples for USB !

11 Oct 2010
20 Oct 2010

I was looking for something a bit more in a baseboard than the proto-strips and what is currently available, so put together this schematic and initial layout concept (note the version 0.01 designation). Population changes, and either headers or jumper wires provide some flexibility. Would such a design be of interest to others? /media/uploads/WiredHome/mbed_breakout board sch v0.01.pdf /media/uploads/WiredHome/mbed_breakout board pcb v0.01.pdf

21 Oct 2010
22 Oct 2010

How do I add a library to this page?\

26 Oct 2010

Hi William,

Assuming you are logged in, you can just edit the homepage to add a link. To create a new page, you just enter a new page name in the url as you'd expect it; see About the Cookbook

Simon

11 Jan 2011

The LPC1768 is based on the Cortex M3 core whilst the LPC2368 is based on the ARM7 classic core. This is the major difference.

02 Feb 2011

Does anyone have a schematic for converting a 10baseT to 10base2? I need this for a project I'm developing as it only communicates to an old vintage hardware via a coax connection. I know there are boxes you can buy that do the conversion, but they are expensive and I'd rather put the circuitry within my project.

04 Feb 2011

Does anyone know if there is a faster way to access the analogin port other than using the Analogin library? The problem is that (using the Timer function) the fastest conversion I can get is 72us. The LPC1768 can sample upto 200Khz and I would like to use it at full speed for an oscilloscope. Would it be a matter of writing my own library routine or may I have to go to assembler? Any ideas would be most greatfully received.

04 Feb 2011

Use the forum for these questions. If you search there is another modified AnalogIn lib. The other solution would be to write or adapt the driver yourself , look at the CMSIS package.

» Show archived comment by chinmay
12 Feb 2011

How to run open os using mbed? lik Android, mee go ..

24 Feb 2011

Hi, We want to realize transfering the CAN message through USB. It seems that we cannot find the library of USB as Device. If we try to realize the transfer function,could you give me some advice? Thank you & best regards.

» Show archived comment by QuadHeli
29 Apr 2011
10 May 2011

This project is about taking mbed another step up by using it with SOFT PLC's, so that mbed works as an I/O Card that serve the Soft PLC software on computer, i used a famous Soft PLC Wonderware Incontrol , but you can use the same software with any Soft PLC product that support DDE Connection to the I/O Card Drivers

http://mbed.org/users/mmohamed15/notebook/mbed-io-server-for-soft-plcs/

10 May 2011

[Not found]

14 Jul 2011

hi im doing project to Characterize 10:1SN65LV1023ADB Serializer from Texas instruments.want to capture serial output and since i have ARM mbed how it can b used..in this project

02 Aug 2011

i require a program to demonstrate how to make lpc1768,capture the serial output from 10:1 SN65lv1023ADB serialiser from texas instruments.and report it through USB

18 Jul 2012

Hi! I can't find the library for the accelerometer ADXL335, only for ADXL345, but this doesn't work. Does anybody know where I can get this library? Or is there a different way to program this accelerometer? Thanks.

18 Jul 2012

Hi Tanja,

the ADXL345 delivers its axis values using digital interfaces (SPI or I²C). The ADXL335 offers three analog values which can easily be sampled by using the mbeds analog inputs. It operates at 3,3V.

So just connect the breakout board (you have the Sparkfun board, I assume?) to VOUT, GND and then A1/2/3 each to an analogue input. Use the AnalogIn function of the mbed library.

Start by periodically outputting the three axis' values via printf through the virtual serial port (use e.g. the freeware "HTERM" for displaying the output on your PC).

Happy developing! Stefan.

19 Jul 2012

user Elmicro Computer wrote:

Hi Tanja,

the ADXL345 delivers its axis values using digital interfaces (SPI or I²C). The ADXL335 offers three analog values which can easily be sampled by using the mbeds analog inputs. It operates at 3,3V.

So just connect the breakout board (you have the Sparkfun board, I assume?) to VOUT, GND and then A1/2/3 each to an analogue input. Use the AnalogIn function of the mbed library.

Start by periodically outputting the three axis' values via printf through the virtual serial port (use e.g. the freeware "HTERM" for displaying the output on your PC).

Happy developing! Stefan.

Thank you, it works now :)

17 Sep 2012

Please add Sissors MODI2C Library to the list, if possible: http://mbed.org/users/Sissors/code/MODI2C/

Posting comments for this page has been disabled