mbed hands-on instructor workshop esweek 2013

27
1 mbed Hands-On Instructor Workshop ESWEEK 2013

Upload: yeriel

Post on 11-Jan-2016

50 views

Category:

Documents


4 download

DESCRIPTION

mbed Hands-On Instructor Workshop ESWEEK 2013. Agenda. mbed Hands-On Instructor Workshop The ARM University Program - Khaled Benkrid, ARM UP Manager Introduction to mbed – Professor James Hamblen Georgia Tech Hands-on Lab 1: mbed registration and Hello World demo - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: mbed Hands-On Instructor Workshop ESWEEK 2013

1

mbed Hands-OnInstructor Workshop

ESWEEK 2013

Page 2: mbed Hands-On Instructor Workshop ESWEEK 2013

Agenda

• mbed Hands-On Instructor Workshop– The ARM University Program - Khaled Benkrid, ARM UP Manager– Introduction to mbed – Professor James Hamblen Georgia Tech– Hands-on Lab 1: mbed registration and Hello World demo– Hands-on Lab 2: Bubble Level on mbed application board– Hands-on Lab 3: Interfacing with a temperature sensor & PC I/O– Hands-on Lab 4: RTOS and Threads– Instructor Demo Lab 5: Internet Clock– Instructor Demo Lab 6 : HTML5 Web sockets– Instructor Demo Lab 7 : Debugging and Breakpoints in offline compiler– Q&A with Khaled Benkrid and Joe Bungo ARM University Program

Page 3: mbed Hands-On Instructor Workshop ESWEEK 2013

3

Introduction to mbedJames Hamblen

Georgia Tech ECEAtlanta, GA USA

Page 4: mbed Hands-On Instructor Workshop ESWEEK 2013

What’s happening in Microcontrollers?

• Microcontrollers are getting cheap– 32-bit ARM Cortex-M3 Microcontrollers @ $1– 32-bit ARM Cortex-M0+ Microcontrollers @ $0.50

• Microcontrollers are getting powerful– Lots of processing, memory, I/O in one package

• Microcontrollers are getting interactive – Internet connectivity, new sensors and actuators

• Creates new opportunities for microcontrollers

Page 5: mbed Hands-On Instructor Workshop ESWEEK 2013

Rapid Prototyping

• Rapid Prototyping helps industries create new products– Control, communication and interaction increasingly define products – Development cycles for microelectronics have not kept pace

3D Moulding 3D Printing 2D/3D Design Web Frameworks

Page 6: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed.org - Rapid Prototyping for MCUs

• Fastest way to get started with ARM microcontrollers– Plug ‘n’ Play Hardware, Online Compiler– Get setup and run “Hello World!” in 60 seconds– Removes entry barriers to MCU technology

• Focused on rapid prototyping for a diverse audience– DIP form-factor, High-level APIs, Developer website– Technology and trade-offs to enable fast experiments– Creates new applications for MCU technology

• Launched at ESC Boston with live demo– Internet-enabled “Twittering Billy” read out tweets– An embedded internet device, prototyped in ½ day– Over ¼ million video views in first week!

Page 7: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed Rapid Prototyping Platform

• Complete Hardware, Software and Web 2.0 Solution

Lightweight Online Compiler

Prototyping Form-Factor

Dedicated Developer Website

High-level Peripheral APIs

Page 8: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed Website

• Dedicated Developer Web Platform– Custom Web 2.0 tools and environment focused on developers– Simple route to get started, comprehensive resources and support

http://mbed.org

Page 9: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed Compiler• Lightweight Online C/C++ Compiler

– Web 2.0 browser-based IDE with personal workspace “in the cloud”– Nothing to install or configure, login from anywhere– Industry leading RVCT 4.1 back end. It is a real tool!– Very easy to use, great for students!

Page 10: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed SDK

• C/C++ SDK for ARM Microcontrollers – High-level APIs and standard environment – Low level control as needed – Portable across different ARM silicon vendor MCUs

• Built on industry standard technology – ANSI/ISO C/C++ – CMSIS Compliant – Compatible with all major professional MCU tools

• Open Source – Released under permissive Apache 2.0 license – Suitable for commercial and non-commercial use – Managed, maintained and tested by ARM

Page 11: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed API Library• High-level Peripheral APIs using C++ Classes

– Trading a bit of memory and CPU performance for ease of use– Abstract software interfaces for controlling microcontroller hardware– Intuitive peripheral access, encapsulation of implementation details – Treat hardware and software the same

Page 12: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed-enabled Hardware• Expanding range of off-the-shelf mbed-enabled hardware

– ARM Cortex-M0, M0+, M3 all represented; M4 TBA– All boards implement the mbed HDK– Hardware is designed and/or made by ARM or 3rd parties– mbed HDK enables anyone to build alternate board designs

Page 13: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed LPC1768 Microcontroller• Cortex-M3 MCU in a Prototyping Form-Factor

– 0.1” pitch DIP with “USB Flash Drive” interface and support components

– Nothing to install or configure, practical for breadboard and PCBs

Page 14: mbed Hands-On Instructor Workshop ESWEEK 2013

What IO is there?

Page 15: mbed Hands-On Instructor Workshop ESWEEK 2013

Courses that could utilize an embedded computer

• C/C++ Programing Class – Need easy to use full C++ support• Computer Architecture – Need C and ARM? Assembly Language• Microprocessor/Embedded Systems Design - Need C/C++, most

common I/O interfaces, Networking and OS support. • Senior Design Projects– Needs to be easy to add custom hardware

and build prototypes. Networking and RTOS needed in many cases.

• Elective Courses – Robotics/Mechatronics: Need extensive easy-to-use I/O support– Networking: Need Ethernet TCP/IP support for “Internet of Things” Devices– Operating Systems: Need RTOS (Open Source)

Page 16: mbed Hands-On Instructor Workshop ESWEEK 2013

Using mbed at Georgia Tech

• For the past two years, all undergraduate ECE students purchase their own mbed computer board and a parts kit that is used in several undergraduate classes for hands-on laboratory assignments. Total cost is just under $100.

• Supports full C/C++, ARM Assembly Language, Networking, and an optional Operating System along with a wide range of I/O interfaces.

• The cloud compiler and a C++ I/O API library make it easy to use

• Student breadboards can be used to build custom embedded systems and this also enables use later in design projects.

Page 17: mbed Hands-On Instructor Workshop ESWEEK 2013

Students can work anywhere with mbed• A PC or Mac with a Wi Fi or wired network connection and a web browser

is all that is needed with the cloud compiler• Downloads new C/C++ code files just like a USB flash drive• Breadboard is powered by the USB connection (5V and 3.3V)• A Wi Fi to Ethernet bridge setup can even be used on a laptop for

developing and testing “Internet of Things” applications• Wiki eliminates requirement for a dedicated textbook on the device

ECE students working in hallway A traditional student laboratory setup

Page 18: mbed Hands-On Instructor Workshop ESWEEK 2013

Rapid Prototyping using a Breadboard

GT student mbed Inventor’s Kit

Page 19: mbed Hands-On Instructor Workshop ESWEEK 2013

Internet of Things Example: NTP Clock on a Breadboard

Page 20: mbed Hands-On Instructor Workshop ESWEEK 2013

Experience using mbed at Georgia Tech• The cloud compiler and breadboard approach works well and greatly

reduces the student computer and lab support issues. Breadboarding provides increased flexibility for laboratory and design projects.

• Higher-level I/O support with C/C++ APIs and wiki documentation enables the introduction of embedded systems earlier in the curriculum.

• Assembly Language, RTOS, and networking support enables future use in additional undergraduate courses and senior design projects.

• The majority of students wanted more embedded assignments and felt that the breadboarding experience was worthwhile.

ECE Students working on mbed project HKN mbed inventor’s kit sales

Page 21: mbed Hands-On Instructor Workshop ESWEEK 2013

Breadboard or Baseboard?• A breadboard allows students to generate a custom hardware

design adding new parts as needed. There is some educational value in having students connect parts. Most I/O connections are serial, so few wires are needed.

• The mbed module can also plug into a baseboard with an assortment of parts already hooked up. To use parts on baseboard a breadboard and jumper wires are not needed. Can still run long jumper wires to a breadboard. Less time to get started, but perhaps harder to use in design projects with custom hardware needs.

• The mbed application board is a new low-cost baseboard option for mbed that will be used in the hands-on demos

Page 22: mbed Hands-On Instructor Workshop ESWEEK 2013

mbed application board1. 128x32 Graphics LCD2. 5 way joystick3. 2 x Potentiometers4. 3.5mm Audio jack (Analog Out)5. Speaker, PWM Connected6. 3 Axis +/1 1.5g Accelerometer7. 3.5mm Audio jack (Analog In)8. 2 x Servo motor headers9. RGB LED, PWM connected10. USB-B Connector11. Temperature sensor12. Socket for for Xbee (Zigbee) or RN-XV (Wifi)13. USB-A Connector14. RJ45 Ethernet connector15. 1.3mm DC Jack input

http://mbed.org/cookbook/mbed-application-board

Page 23: mbed Hands-On Instructor Workshop ESWEEK 2013

Connecting up the TextLCD

• The LCD module has an SPI interface and a few digital outputs for reset, chips select and so on

• mbed keeps it simple– Libraries in Cookbook Wiki for many common I/O devices– Standard C/C++ interface via printf– Hello World : http://mbed.org/users/chris/code/app-board-LCD

Page 24: mbed Hands-On Instructor Workshop ESWEEK 2013

Hands-On Labs

• First Connect to Wi-Fi – needed for cloud compiler!– Connect to “Marriot_CONF” using auth code: 98HKM– If above not working, try “Marriot_GUEST” using room number and

last name

• Open the page below in a web browser:https://mbed.org/users/4180_1/notebook/mbed-application-

board-hands-on-demos/

Note: Keep this web page open while using the compiler in another browser tab for links to import demo projects and follow along instructions throughout the demos

Page 25: mbed Hands-On Instructor Workshop ESWEEK 2013

ARM University Program -mbed workshop videos

• http://www.youtube.com/playlist?list=PLgyFKd2HIZlaJM1b0Yq0tvWnddQ7D6Dae

• Application boards and mbeds are available at: www.sparkfun.com/products/11695

• Other sources at:• mbed.org/cookbook/mbed-application-board#where-to-buy

Page 26: mbed Hands-On Instructor Workshop ESWEEK 2013

Summary• There is huge opportunity for microcontroller applications

– A major barrier to adoption is simple experimentation

• mbed helps with getting started and rapid prototyping– Fast turnaround of experiments and prototyping new ideas– Try out new technology and new ideas– Easy for students to use– Handbook and Cookbook Wiki provide documentation and examples

• Makes the technology very accessible for students – Hands-on demos will show a start to finish prototyping example– From getting a user started to enabling an application experiment

Page 27: mbed Hands-On Instructor Workshop ESWEEK 2013

Q&A