View
216
Download
0
Category
Tags:
Preview:
Citation preview
ID 310C: Run-Time Visualization on Renesas MCUs
Matt Gordon
Sr. Applications Engineer
Version: 1.2
Micriµm
12 October 2010
2
Matt Gordon
Sr. Applications Engineer Responsible for demos and example projects Multiple articles and white papers Head of Micriµm’s training program
2
Previous Experience Software engineer at Micriµm
– Developed device drivers and kernel ports Bachelor’s degree in computer engineering from Georgia Tech
3
Renesas Technology and Solution Portfolio
Microcontrollers& Microprocessors
#1 Market shareworldwide *
Analog andPower Devices#1 Market share
in low-voltageMOSFET**
Solutionsfor
Innovation
Solutionsfor
InnovationASIC, ASSP& Memory
Advanced and proven technologies
* MCU: 31% revenue basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010
** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis).
44
Renesas Technology and Solution Portfolio
Microcontrollers& Microprocessors
#1 Market shareworldwide *
Analog andPower Devices#1 Market share
in low-voltageMOSFET**
ASIC, ASSP& Memory
Advanced and proven technologies
* MCU: 31% revenue basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010
** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis).
Solutionsfor
Innovation
Solutionsfor
Innovation
55
Microcontroller and Microprocessor Line-up
Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive
Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 uA standby Medical, Automotive & Industrial
Legacy Cores Next-generation migration to RX
High Performance CPU, FPU, DSC
Embedded Security
Up to 10 DMIPS, 130nm process350 uA/MHz, 1uA standbyCapacitive touch
Up to 25 DMIPS, 150nm process190 uA/MHz, 0.3uA standbyApplication-specific integration
Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security
Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 uA standby Ethernet, CAN, USB, Motor Control, TFT Display
High Performance CPU, Low Power
Ultra Low PowerGeneral Purpose
66
Microcontroller and Microprocessor Line-up
Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive
Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 uA standby Medical, Automotive & Industrial
Legacy Cores Next-generation migration to RX
High Performance CPU, FPU, DSC
Embedded Security
Up to 10 DMIPS, 130nm process350 uA/MHz, 1uA standbyCapacitive touch
Up to 25 DMIPS, 150nm process190 uA/MHz, 0.3uA standbyApplication-specific integration
Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security
Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 uA standby Ethernet, CAN, USB, Motor Control, TFT Display
High Performance CPU, Low Power
Ultra Low PowerGeneral Purpose
7
Innovation
7
8
A New Interface to Embedded Systems
Gathering data from a running embedded system can be highly difficult. By making this task easier, Micriµm’s µC/Probe can substantially enhance your development efforts.
8
9
Agenda
Introduction
Seeing Inside Embedded Systems
µC/Probe Features
µC/Probe from the User’s Perspective
How µC/Probe Works
When to Use µC/Probe
µC/Probe Demo
9
10
Key Takeaways
By the end of this session you will…
Be familiar with the capabilities of Micriµm’s µC/Probe
Have a basic understanding of how µC/Probe works
Be prepared to use µC/Probe in your own projects
10
11
Introduction
11
12
Micriµm at a Glance
Founded in 1999 by Jean Labrosse, developer of µC/OS, µC/OS-II, and µC/OS-III
Headquarters in Weston, FL (USA), with a second office in Montréal, QC (Canada)
Mission is to provide high-quality, well-documented software to the embedded community
Micriµm is truly “for the way engineers work” With Micriµm’s products, embedded software developers have a clear time-to-market advantage
12
13
Micriµm’s Software Components
µC/OS-II and µC/OS-III Real-Time Kernels
µC/OS-MMU and µC/OS-MPU
Kernel add-ons
µC/FS File system module
µC/GUI Graphical software for embedded
systems
µC/TCP-IP Highly dependable TCP/IP stack
13
14
Micriµm’s Software Components (Cont.)
µC/USB Device and µC/USB Host
Versatile USB stacks
µC/CAN Robust CAN stack
µC/Modbus High-quality implementation of the
Modbus protocol
µC/FL Easy-to-use bootloader
µC/BuildingBlocks µC/Shell µC/CRC µC/Clk µC/LCD
14
15
Seeing Inside Embedded Systems
16
LEDs
Simple visual indication of an application’s progress
Feedback is binary
Application code must be instrumented
Simple drivers required
16
17
printf()
Detailed information can be displayed
Feedback is in text form
Application code must be instrumented
Performance and memory footprint may be negatively impacted (Heisenberg effect)
17
18
Graphical Displays
Feedback can take the form of words or pictures
Application code must be instrumented
Support code is not trivial
18
19
Debuggers
Typically provide access to variables through a watch window
Variables are displayed as text
Updates occur only at breakpoints
Heisenberg effect is often significant
19
20
µC/Probe
Continuous feedback is provided through a rich graphical interface
Application code does not need to be instrumented
No special hardware needed
Little or no impact on the performance of the target system
20
21
µC/Probe Features
22
Reading Variables
Access to any variable (with the exception of local or automatic variables)
Variables can easily be selected for monitoring via a list
Values can be displayed graphically or as text
22
23
Recording Data
Any variable that can be monitored can also be logged
Data is logged into a simple text file
Speed at which data is logged depends on µC/Probe’s connection to the target
23
24
Writing Variables
Variables can be written as the target runs
Text-based and graphical means of manipulating variables are available
24
25
Graphical Interface
µC/Probe can be used to create a custom graphical interface for an embedded system
No programming is necessary
Developers can simply drag and drop components onto data screens
25
26
Non-Intrusive Debugging
µC/Probe gathers data from running embedded systems
Effects on the behavior of application code are minimal
Changes to a user interface created in µC/Probe do not necessitate changes to application code
26
27
Support for Almost Any MCU
µC/Probe was designed to be a universal tool
Micriµm’s customers have used µC/Probe with a wide variety of hardware platforms
CPU architecture is not an issue
27
28
Popular Communication Protocols
µC/Probe can connect to a target via RS-232, USB, or TCP/IP
Device drivers are required on the embedded side
No special debug hardware is needed
28
29
Compatibility with Other Tools
µC/Probe accepts an executable file as input
Any compiler that produces executable files of the ELF format can be used with µC/Probe
In many cases, µC/Probe can be used simultaneously with other tools
29
30
Kernel Awareness
µC/Probe is a perfect match for Micriµm’s newest kernel µC/OS-III
µC/OS-III data screens are provided with µC/Probe
Since it is a universal tool, µC/Probe is not dependent on any kernel
30
31
Free Evaluation
Two evaluation versions of µC/Probe are available from http://micrium.com/page/downloads/windows_probe_trial
Full-featured, 30-day evaluation version 5-symbol evaluation version (no time limit)
The 5-symbol version allows the use of kernel awareness
Free µC/Probe licenses are available to FAEs
31
32
µC/Probe from the User’s Perspective
33
µC/Probe Views
µC/Probe users can switch between two different views
Design View facilitates the development of a user interface Graphical components can be dragged and dropped onto data screens
In Run-Time View, the interface becomes active µC/Probe updates components with values gathered from a running embedded system
33
34
Design View
34
Data screen
Symbol Browser
Workspace Explorer
Program Options
Start Button
Toolbars
35
Graphical Components
35
36
Configuring Components
Each graphical component is configurable
What characteristics can be configured varies from component to component
36
37
µC/Probe Options
The Options dialog allows the communication protocol to be specified
Each protocol has its own configurable parameters
37
38
How µC/Probe Works
39
Implementation Overview
µC/Probe is made up of two components A Windows program that serves as a customizable interface to running embedded systems Embedded code that responds to requests from the Windows program
39
PC Embedded Target
RS-232, TCP/IP, or USB
40
Communicating with the Target
µC/Probe users associate variables with graphical components in the Design View
40
PC Embedded Target
RS-232, TCP/IP, or USB
App_FileSel
41
…0x80004000 App_FileSel
…
Communicating with the Target (Cont.)
The ELF file supplied to µC/Probe as input lists the address of each variable
41
PC Embedded Target
RS-232, TCP/IP, or USB
Example.out
42
µC/Probe uses these addresses to formulate read and write requests
Communicating with the Target (Cont.)
42
PC Embedded Target
RS-232, TCP/IP, or USB
Read 0x80004000
43
The requests are sent to the target in packets
Communicating with the Target (Cont.)
43
PC Embedded Target
RS-232, TCP/IP, or USB
Read 0x80004000
44
Communicating with the Target (Cont.)
µC/Probe updates graphical components based on the target’s responses to the requests
44
PC Embedded Target
RS-232, TCP/IP, or USB
Value at 0x80004000:0x00000003
45
Target-Resident Code
The target-resident code can be divided into two groups Hardware-independent code Device drivers and protocol stacks
The hardware-independent portion of the target-resident code has a tiny footprint
A few kBytes at the most
The amount of additional code required depends on the communication protocol being used
45
46
Update Rates
The speed at which requests are sent from the PC to the target varies according to communication protocol
Via µC/Probe’s Options dialog, the delay between requests can be adjusted
46
Communication Method
Transmission Speed
RS-232 1,000 symbols/second
TCP/IP 11,000 symbols/second
USB 4,000 symbols/second
47
When to Use µC/Probe
48
Debugging
µC/Probe can be used to supplement a conventional debugger
Especially helpful for detecting stack overflows
Kernel awareness aids in debugging µC/OS-III-based applications
48
49
Demonstrations
µC/Probe facilitates the development of eye-catching presentations
No on-board display hardware is needed for a µC/Probe-based presentation
Presentations are highly portable
49
50
Demonstrations (Cont.)
50
51
In the Field
µC/Probe is not solely a development tool
Technicians can use µC/Probe to gather status information from a product
Product performance is usually not affected by target-resident code
51
52
µC/Probe Demo
53
Questions?
53
54
Innovation
54
5555
Thank You!
Recommended