Differences Between FTF and FAE/DFAE Training Sessions
Download
Report
Transcript Differences Between FTF and FAE/DFAE Training Sessions
Processor Expert™ Tips and Tricks
Ruth Rhoades
Sr. Product Manager
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
Agenda
►Processor
•
•
Expert Overview
What is Processor Expert?
CodeWarrior / Processor Expert Support
►Processor
Expert Terminology/Windows
►LAB1—Blinking
►LAB2—
LED (Timer and I/O)
Keyboard Interrupt (KBI)
►LAB3— Analog
►Managing
(ADC) and Pulse Width Modulation (PWM)
Code Generation
►Using
External Libraries
►Embedded Bean Store
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
What is Processor Expert?
A rapid application design tool with …
► Graphical
User Interface which allows an application to be specified by the
functionality needed
► Automatic code generator which creates tested, optimized C code tuned to
the application needs and selected Freescale MCU
► Built-in knowledgebase, which immediately flags resource conflicts and
incorrect settings
Creating…
Layer (HAL) – hardware-dependent, low-level drivers
with a known application programming interface (API)
► Hardware Abstraction
Benefits
► Eases
migration between Freescale devices
► Designers don’t have to be intimately familiar with every page of a specification
► Errors are caught early in design cycle; therefore, designers get to market
faster with higher quality product
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Unique in the Market
► Processor
Expert delivers functionality that is unique in the market.
CodeWarrior Processor
Expert
RealView Tools
Suite
Green Hills
IAR
(VisualSTATE
6.1)
HITEX
(startEasy)
Keil
Yes
Yes
Yes
Yes
Yes
Yes
Configurable
Application Notes
Yes
No
No
Yes
Yes
No
Integrated
Knowledgebase
Yes
No
No
No
No
No
Generates Initialization
Code
Yes
No
No
Yes
Yes
No
Generates Low Level
Drivers
Yes
No
No
Yes
No
No
Tools to Add Higher
Level Drivers
Yes
No
No
No
No
No
Integration with UML
Modeling Tools
Yes
Yes
Yes
Yes
No
Yes
Graphical Interface
* Software support for ARM competitors
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert Tools
Several approaches
•
Low level
Device
Initialization
Use ASM/C (Assembler Support
Routines)
Code is specialized
•
Classical approach
Processor
Expert
Use primarily C
Reuse of existing code
Use SDK (Software Development Kit) and
libraries
–
•
Components
Abstraction
State
Builder
Formal description of the algorithm
Modeling (State charts)
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
CodeWarrior / Processor Expert Support
Processor Expert is integrated into the following CodeWarrior
tool suites with support for the indicated Freescale silicon
families.
►CodeWarrior
•
•
Development Studio for Microcontrollers
RS08: KA, SA
HC08: AB, AP, AS, AZ, BD, EY, GP, GR, GT, GZ, JB, JG, JK, JL, KX, LB,
LD, LJ, LK, LT, LV, MR, QB, QC, QL, QT, QY, RF, SR
• HCS08: MC1321x, AC, AW, DE, DN, DV, DZ, EL, EN, GB, GT, JM, JR, JS,
LA, LC, LL, QA, QB, QD, QE, QG, RC, RD, RE, RG, SG, SH, SL
• ColdFire V1: AC, JM, QE
►CodeWarrior
•
•
Development Studio for HCS12(X)
HCS12: A, B, C, D, DB, DG, DJ, DP, DT, E, GC, H, KG, KT, NE, Q, P, UF
HCS12X: A, D, DG, DP, DQ, DT, EA, EG, EP, EQ, ES, ET, F, HZ, S
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
CodeWarrior / Processor Expert Support
Processor Expert is integrated into the following CodeWarrior tool
suites with support for the indicated Freescale silicon families.
►CodeWarrior
Development Studio for 56800e Digital Signal
Controllers
•
•
56800: 5680x, 5682x, 5685x
56800e: 56801x, 56802x, 56803x, 5681xx, 5683xx
►CodeWarrior
•
•
•
Development Studio for ColdFire Architectures
V2: MCF520x, MCF521x, MCF5221x, MCF5222x, MCF5223x, MCF5225x
V3: MCF532x, MCF5301x,
V4: MCF545x
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Terminology and Windows
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
Processor Expert Terminology
What is an Embedded Bean?
•
Embedded Beans encapsulate the initialization and functionality of an
embedded system’s basic elements, such as CPU core, CPU on-chip
peripherals, FPGAs, stand-alone peripherals, virtual devices and pure
software algorithms.
•
Embedded Beans provide a hardware abstraction layer (HAL), which
eases migration between devices.
What is a template?
•
Templates are Embedded Beans, which have
already been either partially or completely configured
•
Templates can be used to share pre-defined
settings with a team of designers
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert™ Windows
Processor Expert is integrated into the HC(S)08/RS08, HCS12(X) and
DSC CodeWarrior tool suites. It adds the following windows to those
tool suites:
•
Processor Expert Panel in
Project Manager
•
Target CPU
•
Bean Selector
•
Bean Inspector
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert™ Windows
Target CPU Window:
• Displays selected target microcontroller
with its peripherals and pins
• Displays current resource usage by
selected beans (i.e. peripherals, pins)
• Data directions of single pins are indicated
by blue arrows when configured by a bean
• Pins associated with a peripheral are
highlighted when mouse hovers over a
peripheral
• Help is available for pins and peripherals by
moving the mouse over the item
• Several display modes are supported. To
change mode - push a button in the left
side menu.
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert™ Windows
Bean Selector Window:
• Shows supported Embedded
Beans including CPU beans and
bean templates.
• Allows an Embedded Bean or
template to be added to the
project.
• Embedded Beans can be listed
by categories, alphabetically or
on-chip peripherals.
• Right-click on a bean to add it to
the project or to get help.
• An assistant is also available to
guide bean selection
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert™ Windows
Bean Inspector Window –
Properties Tab:
• Double-clicking on an Embedded
Bean opens the Bean Inspector
window
• A red exclamation point means one
of the bean’s properties is either
blank or in conflict with another.
• Help is available for the fields by
moving the mouse over them.
• The Basic, Advanced and Expert
buttons at the bottom of the window
control the level of detail visible.
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert™ Windows
Bean Inspector Window –
Methods Tab:
• Shows functions available for the
Embedded Bean
• Allows designer to select functions to be
included in his application
• Code is only generated for
selected functions
• The code will appear in the .c file
for this Embedded Bean in the
“Generated Code” folder
• Holding the mouse over a
“method” causes a description
of the function’s parameters and return
values to be displayed
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert™ Windows
Bean Inspector Window –
Events Tab:
• Shows the events for the current
Embedded Bean
• Allows events to be renamed
• Events are usually called by
interrupts
• Events are defined in Events.c in
the “User Modules” folder
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Lab 1
Blinking LED (Timer and I/O)
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
LAB 1 – Blinking LED
►
This demonstration shows how to create a project with Processor
Expert.
It shows how to…
•
•
•
Add and configure Embedded Beans to support selected peripherals
Generate the code
Test the functionality on a simple application
►
The demonstration uses a DEMOQE128 board.
►
The application uses a timer to blink a LED every 250 ms.
•
•
Set Timer (TPM10) to generate an interrupt every 250ms
Configure output on LED1 (PTC0)
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Processor Expert Project Design Workflow
Create a new project
Build and debug
Select Embedded Beans
from library and add them
to project
Write application code
Generate source code
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
Configure it
… and verify settings
TM
LAB 1 - Blinking LED
►Click
“Create New Project”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Select
“MC9S08QE128”
► Select
“P&E
Multilink/Cyclone Pro
► Click
“Next”
► Type
“Lab1.mcp” in the
Project name box
► Set
the Sub-Directory in the
Location box
► Click
“Next”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
►Select
►Click
“Next”
►Leave
►Click
“Processor Expert”
everything as default
“Next”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Leave
► Click
as default
“Finish”
► Wait
for CW to bring up the
Project Windows
► Check
all the boxes as
shown
► Click
“OK”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
►You
should have a screen that looks like this at this time
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
►Select
the “TimerInt” bean in the Bean Selector Window
►Select “TPM10” for the Period interrupt source
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Select
the pre-calculated
value of 250ms
► Click
“OK”
► In
the Bean Inspector window,
you should see Interrupt
period has been updated with
250ms
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Select
“BitIO” bean in the
Bean Selector window
► Configure
as shown:
PTC0_TPM3CH0
No Pull-up
Drive Strength = High
Direction = Output
► Select
“Methods” tab
► Select
“Generate code” for
the “NegVal” function
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Click
“Generate Code” from the
Processor Expert tab
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Select
► Open
“Files” tab
the “Event.c” file
► Scroll
down to function
TI1_OnInterrupt
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Select
“Processor
Expert ” tab
► Expand
the “Bit1:BitIO” bean
► Drag
and Drop the “NegVal”
function over to here
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Click
the “Debug” button
This will launch the
Debugger
► Click
“Connect” to
connect to the P&E
Multilink BDM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 1 - Blinking LED
► Click
“Yes” to load image
► Click
green “Run” button
► Is
your Demo Board light
blinking?
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2
Keyboard Interrupt (KBI)
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
LAB 2 – KBI
►
This demonstration shows how to create a project with
Processor Expert. It shows how to…
•
•
•
Add and configure Embedded Beans to support selected peripherals
Generate the code
Test the functionality on a simple application
►
The demonstration uses a DEMOQE128 board.
►
The application uses a switch to toggle the LED.
•
•
Configure keyboard interrupt on PTA2
Configure output on LED2 (PTC2)
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2 – KBI
► Select
“KBI” bean in the
Bean Selector window
► Enable
Pin 2 (PTA2)
► Enable
Pull-up
► Interrupt
Polarity set for
Low level/Falling Edge
► Enable
KBI request
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2 – KBI
► Select
“BitIO” bean in the
Bean Selector window
► Configure
as shown:
PTC2_TPM3CH2
No Pull-up
Drive Strength = High
Direction = Output
► Select
“Methods” tab
► Select
“Generate code” for
the “NegVal” method
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2 – KBI
► Select
CPU bean in the
Project window
► Select
the Methods Tab
► Select
generate code
for Delay100US
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2 – KBI
► Click
“Generate Code” in
the Processor Expert menu
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
► Open
“Files” tab
“Event.c”
► Scroll
to
“KBI_OnInterrupt”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2 – KBI
► Select
Processor Expert Tab
► Expand
CPU bean
► Drag
and drop Delay100US
► Enter
30 as the delay parameter
Cpu_Delay100uS(30);
► Expand
► Drag
the BitIO bean
and drop NegVal
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2- KBI
► Click
the “Debug”
button. This will launch
the Debugger
► Click
“Connect” to
connect to the P&E
Multilink BDM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 2 – KBI
► Click
“Yes” to load image
► Click
green “Run” button
► Press
the SW (PTA2)
to see LED (PTC2) toggle
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3
Analog (ADC) and Pulse Width Modulation (PWM)
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
LAB 3 – ADC & PWM
►This
demonstration shows how to create a project with
Processor Expert. It shows how to…
•
•
•
Add and configure Embedded Beans to support selected peripherals
Generate the code
Test the functionality on a simple application
►The
demonstration uses a DEMOQE128 board.
►The
application uses a potentiometer to dim/brighten an LED.
•
•
•
Configure ADC input to Port A0 (Blue POT).
Configure the PWM to LED (Port C1).
Use the ACD value to configure the duty cycle of the PWM.
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
“ADC” Bean from Bean
Selector Window.
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
Port A0
► Use
5.7uSec for
Conversion time.
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
the “Method” Tab
► Toggle
to “Generated Code”
to “Start” (Continuous Mode)
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
► Use
Port C1
“1ms” for Period.
► Use
“1uSec” for
Starting Pulse width
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Click
“Generate Code” in
the Processor Expert menu
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
► Open
“Files” tab
“Event.c”
► Scroll
to
“AD1_OnEnd”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
“Processor
Expert” tab
► Add
code to
“AD1_OnEnd”
► Drag
n Drop
AD1_GetValue16(&x)
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Drag
and Drop
PWM1_SetRatio16(x)
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
“Files” tab
► Open
“Lab3.c”
► Scroll
to “main”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Select
“Processor
Expert” tab
► Add
code to “main”
► Drag
n Drop
AD1_Start()
► Uncomment
the
example “for loop”
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Click
the “Debug”
button. This will launch
the Debugger
► Click
“Connect” to
connect to the P&E
Multilink BDM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
LAB 3 – ADC & PWM
► Click
“Yes” to load image
► Click
green “Run” button
► Turn
the Blue Knob on
the Demo Board to dim
LED2
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Managing Code Generation
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
Code Generation
►C
code is generated when…
“Generate Code” is selected in the
Processor Expert menu, or
• MAKE is selected, or
• DEBUG is selected
•
► Code
in “Generated Code” folder
CANNOT be modified and includes…
•
C module for every Embedded Bean in
the project
• IO_map.c file containing register
definitions
• Vectors.c, containing the constant
interrupt vector table
► Code
in “User Modules” folder CAN
be modified and includes…
•
C module containing the main( )
function
• Events.c and Events.h for interrupt
service routines
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Managing Code Generation
►Processor
•
•
•
•
For one module
For one Embedded Bean
For whole project
Completely disable Processor Expert
►Allows
•
•
Expert has the ability to stop code generation
you to control code generation
Generate initial code with Process Expert
Disable code generation
Allows you to modify the generated code
Processor Expert will NOT overwrite changes
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Disabling Code Generation
►Disable
►Click
code generation for one module
the right button on module and select
•
Code Generation -> Don’t Write
•
The bean module can’t be disabled
Disable code generation for Embedded Bean instead
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Disabling Code Generation
►Disable
►Click
•
code generation for one bean
the right button on Embedded Bean and select
Code Generation -> Don’t Write Generated Bean Modules
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Disabling Code Generation
►Disable
►Use
code generation for whole project
the command Processor Expert -> Freeze Generated Code
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Disabling Code Generation
► “Freeze
generated code” freezes the Processor Expert settings and
disables code generation
•
•
•
It is still possible to see the settings
Settings cannot be changed or manipulated (IDE items are grayed)
It’s recommended to
re-generate the code
when un-freezing
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Disabling Code Generation
► Disable
Processor Expert completely
► Use
command Processor Expert -> Suspend Processor Expert for
<project>.mcp
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Disabling Code Generation
►This
•
•
command:
Stops code generation
Uninstalls the Processor Expert tab from project
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Using External Libraries
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
Add External Library
► Copy
the library and header files
into the <project directory>/CODE
► Right
click on the “User Modules”
folder in the Processor Expert Tab.
► Select Add
Files…
► When
the Add Files dialog
appears, choose the files and they
will be added to the project.
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Configure Processor Expert
►Double
click on the CPU bean
to open the Bean Inspector
►Select
the Used tab
►Expand
►Select
I/O Ports
port PORTTA
►Double
click on the item.
“Used by external device” will
appear
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Summary
►Advantages
•
Existing library code can be used with applications developed with
Processor Expert.
•
For example: driver for a specific external device can be used.
Libraries written in assembly can be easily used in C applications.
►Disadvantages
•
If the source code is not available (only object file is available), then the
application must be developed with the same compiler.
►Conclusions
•
•
Combining existing library code with code generated by Processor
Expert will rapidly decrease cycle time.
Existing solutions can be quickly enhanced
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Embedded Bean Store
TM
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
Embedded Bean Store
► Processor
Expert provides Freescale with an infrastructure to
deliver additional software capability
•
•
Software can be encapsulated using Bean Wizard
Additional Embedded Beans can easily be integrated into CodeWarrior
Development environment
► Embedded
•
•
Bean Store is now available
URL is http://www.freescale.com/BeanStore
Embedded Beans available for following architectures
HC08, HCS08, RS08
ColdFire V1, V2, V3, V4
HCS12(X)
•
Prices start at $125 per bean
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Embedded Bean Store
Bean Categories
•
•
•
•
•
•
•
•
•
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
Analog
Communictions
Data Files
Display
Interrupts
Memory
Operating System
Port I/O
Timer
TM
Embedded Bean Store
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM
Embedded Bean Store
Freescale Semiconductor Confidential and Proprietary Information. Freescale™ and the Freescale logo are trademarks
of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc. 2006.
TM