1 / 39

Micrium’s μ C/OS for Makers A Hands-on Course

Micrium’s μ C/OS for Makers A Hands-on Course. Class 2: The Micrium Maker Program. January 31, 2017 Charles J. Lord, PE President, Consultant, Trainer Blue Ridge Advanced Design and Automation. This Week’s Agenda. 1/30 Introduction to μ C/OS II/III 1/31 The Micrium Maker Program

mmarjorie
Download Presentation

Micrium’s μ C/OS for Makers A Hands-on Course

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Micrium’s μC/OS for Makers A Hands-on Course Class 2: The Micrium Maker Program January 31, 2017 Charles J. Lord, PEPresident, Consultant, TrainerBlue Ridge Advanced Design and Automation

  2. This Week’s Agenda 1/30 Introduction to μC/OS II/III1/31 The Micrium Maker Program 2/1 Setting up our Development System 2/2 Writing Our Tasks and Establishing Scheduling 2/3Mutexes, Messages, and Semaphores, Oh My!

  3. This Week’s Agenda 1/30 Introduction to μC/OS II/III1/31 The Micrium Maker Program 2/1 Setting up our Development System 2/2 Writing Our Tasks and Establishing Scheduling 2/3Mutexes, Messages, and Semaphores, Oh My!

  4. Agenda Introduction What Is a Maker? Brief RTOS Introduction Free Commercial Embedded Software Free Professional-Grade Tools IoT Summary

  5. Introduction

  6. Micriµm RTOS Education Debug Tools

  7. What Is a Maker?

  8. Someone Who: • Has an idea for a new product or gadget • Learns by doing • Is a Hobbyist • Is an Inventor • Is a Hacker • Is in Startup Mode • In most cases: • Must minimize costs for tools, boards and embedded software • Is often a professional engineer (i.e. Maker Pro) working on an idea • Nights and Weekends

  9. Example Hobbyist / Maker Projects • Smart Garage Door Opener • Weather Station • 3D Printer • Drone • Home Automation • R/C Vehicles • Robots • Games • Teaching Aids • IoT Question 1 – Working on hobby / entrepreneur projects?

  10. Brief RTOS Introduction

  11. Operating System vs Kernel • An operating system is a collection of software components that provides useful services to your application code • A kernel is a subset of an operating system Application File System GUI TCP/IP Kernel USB RTOS Bluetooth RS-232 Hardware

  12. What is a Real-Time Kernel? • Software that manages the time of a CPU • Application is split into tasks • Each task has its own CPU registers • Each task has its own stack • Each task has its own priority • A task typically manipulates variables/arrays/etc. • A task can manage I/O devices Variables Arrays Structures (RAM) CPU Registers Task (Priority) Stack (RAM) I/O Devices (Optional)

  13. Tasks in a Kernel-Based Application Task Each Task Task High Priority Task Event Task Importance Task Task Infinite Loop Task Low Priority Task

  14. Most Kernels are Preemptive Via a kernel call, the ISR makes the high priority task ready Interrupt Occurs ISR completes and the kernel switches to the high-priority task ISR ISR The kernel switches to the low-priority task High-priority task Low-priority task Time

  15. Free µC/OS-II Kernel for Makers • Available since 1999 • Book available from amazon.com • Real-time multitasking kernel • Works on just about any 8-, 16-, 32-, 64-bit CPUs and DSPs • Manages up to 250 tasks • Small footprint (5-20KB code, > 500B RAM) • Semaphores, queues, mutexes, event flags, etc. • Certified for safety-critical applications • Full source code download: https://www.micrium.com/download/µcos-ii-source-code/

  16. Free µC/OS-III Kernel for Makers • Available since 2009 • Book available from amazon.com • Free book in PDF format: • Real-time multitasking kernel • Works on just about any 8-, 16-, 32-, 64-bit CPUs & DSPs • Unlimited number of tasks • Small footprint (6-24KB code, > 1KB RAM) • Semaphores, queues, mutexes, event flags, etc. • Certified for safety-critical applications • Full source code download: https://www.micrium.com/books/ucosiii/ https://www.micrium.com/download/µcos-iii-source-code/

  17. FREE Commercial Embedded Software

  18. FREE for makers, hobbyists, educators, students and startups • Includes: • µC/OS-III kernel • TCP/IP v4 and v6 (with DHCPc, DNSc, HTTPc, HTTPs, WebSocket, MQTTc, SMTPc, SNTPc, etc.) • USB-Host (with CDC, HID, MSC and FTDI classes) • USB-Device (with Audio, CDC, HID, MSC, PHDC and Vendor classes) • File System (FAT32, journaling, and drivers: SD, NAND, RAM disk, MSC) • Modbus (RS-232C/RS-485, ASCII and RTU, master and slave, etc.) • µC/Probe • Need to register (i.e. license to use for FREE) • Registration link: https://www.micrium.com/ucos_for_makers/

  19. Does not include technical support … but: Free books (PDF): Online Documentation: 100s of example projects: Blogs: Application Notes: Videos: Training: https://www.micrium.com/books/ucosiii https://doc.micrium.com/display/welcome/Welcome https://www.micrium.com/downloadcenter/ https://www.micrium.com/blogs/ https://www.micrium.com/support/applicationnotes/ https://www.micrium.com/training/videos/ https://www.micrium.com/training/livetraining/

  20. Free Micrium Platform Builder(Available Q1-2017)

  21. FREE Professional-Grade Tools Question 2 – Preferred tool chain(s) (IDEs)?

  22. Tool Chain for Renesas RX – e2Studio • Eclipse-based • Supports all RX cores • C/C++ Compiler • Assembler • Linker • Debugger • µC/Probe proxy plug-in http://am.renesas.com/products/tools/ide/ide_e2studio/

  23. Tool Chain for ARM – Atollic True Studio • Eclipse-based • Supports a wide range of devices • C/C++ Compiler • Assembler • Linker • Debugger • µC/Probe proxy plug-in http://timor.atollic.com/truestudio/

  24. Tool Chain for ARM – Segger EmbeddedStudio • Multi-platform IDE (Windows, MAC OS and Linux) • Supports all ARM Cortex-M cores • C/C++ Compiler • Assembler • Linker • Debugger • µC/Probe compatible through J-Link debug probe https://www.segger.com/embedded-studio.html

  25. µC/Probe • Windows-based universal dashboard • Gauges, graphs, indicators, LEDs, sliders, buttons, oscilloscope, kernel awareness • Work with ANY CPU • 8-, 16-, 32-, 64-bit and DSPs • Interface to target: • J-Link, CMSIS-DAP • Proxy through debuggers • RS232C, TCP/IP, USB • Free 1-year license for makers https://www.micrium.com/tools/ucprobe/software-and-docs/

  26. µC/Probe Debugger Code Download .ELF Your Code Target (8, 16, 32, 64-bit & DSP) ANY Compiler Assembler Linker RTOS or No-RTOS µC/Probe Libraries .ELF JTAG SWD RS232C TCP/IP USBEtc.

  27. Percepio – TraceAlyzer for µC/OS-III • Real-time kernel profiler • Works with µC/OS-III • Real-time recording • Works with µC/Probe • Cycle accurate profiling • Free version – limited features • Paid version – feature rich • TraceAlyzer for µC/OS-II: Q1-2017 https://www.micrium.com/tools/uctrace/overview/

  28. Segger – SystemView for µC/OS-III • Real-time kernel profiler • Works with µC/OS-III • Continuous real-time recording • Requires Segger j-link • Live analysis • Cycle-accurate profiling • Free – no strings attached • SystemView for µC/OS-II: Q1-2017 https://www.segger.com/systemview.html

  29. IoT

  30. Amazon Web Services (AWS) – Cloud Provider https://aws.amazon.com/free Freedeveloper sandbox Device SDK Rules engine DynamoDB - NoSQL database Kinesis - Real-time data streaming Lambda - Execute scripts (Node.js, Python, Java) AWS IoT - Republish inside the broker S3 - Log to a file SNS - Send a notification (Email, SMS, etc.) SQS - Queue the message to be consumed by another service Kinesis Firehose - Stream large amounts of data directly to a bucket Etc.

  31. MediumOne – Cloud Provider https://www.mediumone.com/product Free developer sandbox Identity management Real-time analytics Data storage Dashboard and visualization REST and MQTT API Workflows (Python scripts)

  32. Renesas Wireless Demo Kit + MediumOne https://www.micrium.com/download/iot-m1-ywireless-rx111-smart-home-garage/ http://am.renesas.com/applications/boards_kits/device/YWIRELESS-RX111.jsp Renesas RX111 at 32 MHz 512K Flash / 64K SRAM Qualcomm GT202 WiFi Module on PMOD 4x PMOD Pre-Loaded Micrium Spectrum IoT solution MediumOne cloud

  33. Renesas IoT Starter Kit + AWS or MediumOne https://www.micrium.com/aws-iot-starter-kit/ https://www.micrium.com/download/iot-m1-yrdkrx63n-smart-home-garage/ Renesas RX63N at 96 MHz 2MB Flash / 128KB SRAM Ethernet (PMOD-based WiFi module available) MicroSD 96x96 Graphics display (B&W) Build-in Segger j-link Smart Home Gateway IoT Demo: AWS Cloud Smart Garage Door IoT Demo: Medium One Cloud

  34. ST – STM32F746 Discovery + AWS https://www.micrium.com/aws-iot-stm32f7-disco-shg/ ST Cortex-M7 at 216 MHz 1MB Flash / 340 KB SRAM 4.3” Color TFT display w/ touchscreen Ethernet (WiFi module available) MicroSD Build-in ST-Link Smart Home Gateway IoT Demo: AWS Cloud

  35. Summary Question 3 – Attended a Renesas or other Micrium workshop?

  36. Makers have access to: Freecommercial embedded software Freeprofessional grade tools Freecloud providers for IoT Low(or no) cost evaluation boards from semiconductor manufacturers LINK to register: https://www.micrium.com/ucos-for-makers/

  37. This Week’s Agenda 1/30 Introduction to μC/OS II/III1/31 The Micrium Maker Program 2/1 Setting up our Development System 2/2 Writing Our Tasks and Establishing Scheduling 2/3Mutexes, Messages, and Semaphores, Oh My!

  38. Please stick around as I answer your questions! • Please give me a moment to scroll back through the chat window to find your questions • I will stay on chat as long as it takes to answer! • I am available to answer simple questions or to consult (or offer in-house training for your company)c.j.lord@ieee.orghttp://www.blueridgetechnc.comhttp://www.linkedin.com/in/charleslordTwitter: @charleslordhttps://www.github.com/bradatraining

More Related