340 likes | 355 Views
Dive into the world of RTOS and File System tools with IAR PowerPac for MSP430. Learn about task scheduling, communication between tasks, task-oriented design, and the features of a file system. Benefit from a commercial RTOS solution with proven code, priority control, and more.
E N D
Getting started with IAR PowerPac for MSP430 Mats Pettersson, IAR Systems • Fast… • Everything can be found on www.iar.com • Evaluation and kickstart versions free to download • Demo after the PowerPoint slides • Feedback and questions to support@iar.com
Support IAR Systems IAR PowerPac forMSP430 RTOSandFile System Tools
IAR Systems • Founded in 1983 in Uppsala, Sweden (Headquarter) • About 140 employees • Offices in the US (3), China, Japan, the UK, Belgium, Germany, Brazil and Sweden • 80.000 application developers • Partner with 16 of the top semiconductor companies
Support IAR Systems IAR PowerPac forMSP430 RTOSandFile System Tools
What is an RTOS?Software that manages the time and other resources of a microprocessor or microcontroller. It breaks down the application into multiple tasks each handling one aspect of the application.It’s like having multiple CPUs! • What is a File System ?Software for storing and organizing data on storage devices. Functions to create and handle files and directories in an application. RTOSandFile System
Why use an RTOS ? • Ensure that high priority tasks run first • Deterministic response • Saves power! • Saves development time • Easy to structure/divide code between developers. • Correctness - easier to understand complex systems • Makes programming more efficient/better structured • Abstracts the hardware-dependence, porting easier • and much, much more… RTOSandFile System
Scheduling • The algorithms that determine which task to execute • Distinguish between tasks that are ready to be executed and other tasks that are suspended • The task which is currently executing is referred to as the active task RTOSandFile System
Tasks • Each task consist of: • The program code, which usually resides in ROM • A stack, residing in a RAM area that can be accessed by the stack pointer • A task control block (TCB), residing in RAM. The TCB is only accessed by the RTOS RTOSandFile System
Communication between tasks • As tasks run in the same application, they sometimes need to communicate with each other to: • exchange data with other tasks • synchronize with other tasks • make sure that a resource is used by no more than one task at a time • Can be achieved by: • Global variables..... • RTOS communication mechanisms RTOSandFile System
Communication mechanisms • EventsTask events are messages to a single, specified recipient • Mailboxes • A buffer that is managed by the real-time operating system • Fixed message size • Queues • Similar to mailboxes, but enable inter task communication with larger messages • Messages of various sizes • Semaphores • Used for managing resources by avoiding conflicts caused by simultaneous use of a resource • Resource semaphore • Counting semaphore RTOSandFile System
Task oriented design • Benefits • Clearer design • Polling is avoided • Adding a lower priority task will not affect the responsiveness of the system to high priority tasks • Code can be modularized, making things easier to maintain and debug • Saves power RTOSandFile System
File System features • Fail-safe operations • The driver makes only atomic actions and takes the responsibility that the data managed by the file system is always valid. • In case of a power loss or a power reset during a write operation, it is always assured that only valid data is stored in the flash. • If the power loss interrupts the write operation, the old data will be kept and the block will not be corrupted. • Wear leveling • makes sure that the number of erase cycles remains approximately equal for each sector RTOSandFile System
Support IAR Systems IAR PowerPac forMSP430 RTOSandFile System Tools
Complete suite of tools IAR Development Kits visualSTATE JTAGdebugger IAR Embedded Workbench Verify, Validate, Implement Compile Debug Deploy Design Target application Idea IAR PowerPac RTOS & Middleware Tools
Support IAR Systems IAR PowerPac forMSP430 RTOSandFile System Tools
Priority controlled Mulititasking Proven code Costs Hard real time Shorter time to market Documentation Visualization Why use a commercial RTOS ? IAR PowerPac forMSP430 Commercial RTOS?
IAR PowerPacTM for MSP430 IAR PowerPac forMSP430 • Fully featured real-time operating system • High performance file system • Innovative business model similar to that of IAR Embedded Workbench • Tight integration with IAR Embedded Workbench • Easy to get started • Board support packages Additional components IAR PowerPac USB IAR PowerPac Source(RTOS + File System) IAR PowerPac Base (RTOS + File System)
Operating system IAR PowerPac forMSP430 • Key features • Small memory footprint (1.7 KByte for typical MSP430 implementation) • Pre-emptive multi-tasking • Round-robin scheduling • Up to 255 priorities • Unlimited number of tasks, semaphores, mailboxes and software timers • Full interrupt support with nested interrupts • Very fast context switch times • Power Management
RTOS performance IAR PowerPac forMSP430
RTOS performance IAR PowerPac forMSP430
Support for MSP430 Low Power Modes IAR PowerPac forMSP430 • Task oriented design is very useful if you want to save power • Peripherals can be switched of when not used • Wake up is possible through all enabled interrupts • Efficient OS causes minimum CPU overhead -> maximizing idle time -> reducing power consumption
Support for MSP430 Low Power Modes IAR PowerPac forMSP430 • PowerPac RTOS fully supports all MSP430 low power modes. • RTOS always brings CPU into lowest power mode possible whenever CPU is idle • Peripheral clock requirements are taken into account • Lifts a lot of the burden for power management from the programmer
Support for MSP430 Low Power Modes IAR PowerPac forMSP430 • The idle task • The idle task is only active when no other task has something to do. • Other tasks need to make operating systems calls to let the system know when shared resources are or are not in use. • OS_POWER_UsageDec(OS_UINT Level) • OS_POWER_UsageInc(OS_UINT Level) • The idle task will depending on which resources are used, enter the lowest possible power mode.
IAR PowerPac file system IAR PowerPac forMSP430 • Small footprint, e.g. 12 KByte ROM / 1.6 KByte RAM • MS-DOS/MS-Windows compatible FAT12, FAT16 and FAT32 support • Multiple device driver support • Multiple media support • Caching functionality • Check disk functionality • Device drivers available for a number of media types
Application API Layer PowerPac File System File System API Storage API File System Layer Storage Layer Device Driver Hardware Layer PowerPac File System API layers IAR PowerPac forMSP430 • File System API layer • - Contains functions in ANSI C stdio style, FS_FOpen(), FS_FWrite() etc. • - Translates file operations to logical block (sector) operations. • Storage API layer • - Optimized for applications which do not require file system functionality. • - Allows sector read and write operations to a storage medium • - A typical application: USB mass storage device, data has to be stored on a medium, but all file system functionality is handled by the host PC.
Integration with IAR Embedded Workbench IAR PowerPac forMSP430 • Example projects available from the startup screen • Links to IAR PowerPac for MSP430 documentation in the Help menu • Template projects within IDE for new library projects • RTOS aware debugging via C-SPY plug-in • Board Support packages
IAR PowerPac for MSP430 - evaluation version IAR PowerPac forMSP430 • Works with all EW430 product variants with the following limitations: • IAR PowerPac RTOS can either work without a time limit with a maximum of three tasks or create more than three tasks and work with a time limit of 15 minutes. • IAR PowerPac File System can only handle one open file at any given time • Time limited version will also be available
IAR PowerPac business model IAR PowerPac forMSP430 • Principle • Base product in object code format • Licensing model • Seat license - per developer and CPU • Full source code upgrade • Group license (up to 20 developers) • Site license (unlimited on the same site) • No royalty fees • Result • Low-risk licensing model • A license can be used in unlimited number of projects and products • Affordable site license for unlimited number of developers
Support IAR Systems IAR PowerPac forMSP430 RTOSandFile System Tools
Customer support Support • Support and Update Agreement (SUA) • Free software updates • First class world-wide technical support by telephone, e-mail and fax • VIP Support contracts available • ”My Pages” at www.iar.com • Read about new product releases • Download product updates • Transfer licenses to co-workers • Manage your contact information
Technical Resources Support • www.iar.com • Tecnical notes • Application notes • My Pages with latest product updates • Documentation • User Guides for EW430 and PP430 • Reference Guides for all EW430 components • Reference Guides for PP430 RTOS and FS.
Support IAR Systems • Demonstration on MSP-EXP430F5438 IAR PowerPac forMSP430 RTOSandFile System Tools
Summary • A tightly integrated RTOS, file system, and tools for developing embedded applications • Our offering • Perfect compliment to IAR Embedded Workbench • Innovative ”low-risk” price model • Continuous ”add-ons” for more middleware’s • Upgrade path • Same license management system as IAR Embedded Workbench • Local support across the globe.
Thank you! Please send feedback and questions to support@iar.com