XMC1200 Boot Kit Getting Started

XMC1200 Boot Kit
Getting Started
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
2
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
3
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
4
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
5
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
6
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
7
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
8
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
9
Agenda (1/2)
1
Kit Overview
2
Hardware Overview
3
Tooling Overview
4
– Boot Modes
5
– DAVETM
6
Getting Started
7
– Example – Blinky based on XMC Lib
8
– Example – Blinky based on DAVETM APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
10
Kit Overview (1/2)
› XMC1200 Boot Kit
– Consists of an XMC1200 CPU Card
– Supported Application Card examples: Colour LED Card, White
LED Card
(Application Cards are orderable separately or as part of another Application Kit)
Colour LED Card
White LED Card
XMC1200 CPU Card
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
11
Kit Overview (2/2)
› XMC1200 CPU Card
Micro USB
5 User LEDs
On-board COM
and Segger
J-Link debugger
Connectors
according to pin-out
XMC1200 Edge connector for
Application cards
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
12
Hardware Overview
› Connect XMC1200 CPU Card to PC via USB cable
› CPU Card is powered up (as indicated by LED on the card)
CPU Card powered
via USB cable
› Note: Supported Application Card may be additionally connected to
the CPU card
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
13
Tooling Overview –
Boot Modes
› Boot Modes available
–
–
–
–
UART Bootstrap-Loader Mode
User Mode (Halt After Reset)
User Mode (Debug) Default Mode of device on Boot Kit
User Mode (Productive)
› Boot Modes can be configured via:
– DAVETM
– Download DAVETM
DAVETM v4.1.2 download
– MemTool
– Download MemTool
MemTool v4.65.exe download
› For more information on how to configure the BMI value, please
refer to the XMC1000 Tooling Guide.
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
14
Tooling Overview –
DAVETM (1/5)
› DAVETM download package is available at:
http://infineon-community.com/LP=400
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
15
Tooling Overview –
DAVETM (2/5)
› After registration, download and unzip the installer package
› Run DAVE-4.1.2-Setup.exe to install
DAVETM IDE and SEGGER J-Link drivers
› Open DAVETM
› Update DAVETM and DAVETM libraries
– Help  Check for Updates
– Help  Check for DAVE APP Updates
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
16
Tooling Overview –
DAVETM (3/5)
› Install DAVETM APPs libraries and Device Description
– Help  Install DAVE APP/Example/Device Library
› Note: You may skip the above step if you are not using DAVETM
APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
17
Tooling Overview –
DAVETM (4/5)
› Select DAVE Apps Library Manager in the drop-down menu
› Select DEVICE_PACK, Library_DAVEDeviceDescriptions
(XMC1200 Device) and DAVE APPs
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
18
Tooling Overview –
DAVETM (5/5)
› Accept terms of the license agreements and click Finish
› DAVETM APPs libraries and Device Description are installed
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
19
Getting Started – Example –
Blinky based on XMC Lib (1/6)
1. Open DAVETM
3. Select the device accordingly
2. Create a new “Simple Main”
project:
– File New DAVE Project
– Enter project name e.g.
“XMC1200_Blinky”
– Select “Simple Main Project” as
Project Type
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
20
Getting Started – Example –
Blinky based on XMC Lib (2/6)
› For this project, we will use
– System clock frequency of 8MHz
– LED on Port pin 0.0
– System timer, SysTick, as the time base for interrupt
› Next, we will show you how to
1. Set up the System or Main Clock (MCLK)
2. Configure Port pin
3. Configure SysTick and define its exception service routine
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
21
Getting Started – Example –
Blinky based on XMC Lib (3/6)
1. Set up System or Main Clock (MCLK) using XMCLib
–
Include the header files required for MCLK and GPIO configuration
–
MCLK configured via IDIV and FDIV bit fields in
XMC_SCU_CLOCK_CONFIG data structure
–
Initializes clock generators and clock tree in Main.c
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
22
Getting Started – Example –
Blinky based on XMC Lib (4/6)
2. Configure Port pin
–
GPIO to toggle the LED is configured via mode and output_level
of XMC_GPIOC_CONFIG structure.
–
Initializes port pin P0.0 as general purpose output pin in Main.c
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
23
Getting Started – Example –
Blinky based on XMC Lib (5/6)
3. Configure SysTick and define its exception service routine
–
SysTick exception handler is defined in startup_XMC1200.s
–
Initialize the SysTick in Main.c
–
Define the SysTick exception handler routine in Main.c
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
24
Getting Started – Example –
Blinky based on XMC Lib (6/6)
› Build project
1. Click
2. Wait for Build to finish
› Download code
1. Click
2. Switch to Debug perspective
3. Click
to run code
› LED blinks every 0.2s
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
25
Getting Started – Example –
Blinky based on DAVETM APPs (1/7)
1. Open DAVETM
3. Select the device accordingly
2. Create a new “DAVE CE”
project:
– File New DAVE Project
– Enter project name e.g.
“XMC1200_Blinky_withApps”
– Select “DAVE CE Project” as
Project Type
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
26
Getting Started – Example –
Blinky based on DAVETM APPs (2/7)
› For this project, we will use
– System clock frequency of 8MHz
– LED on Port pin 0.0
– System timer as the time base for interrupt
– Time base of 0.2s
› Next, we will show you how to
1. Set up the System or Main Clock (MCLK)
2. Configure Port pin
3. Configure System Timer and define its exception service
routine
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
27
Getting Started – Example –
Blinky based on DAVETM APPs (3/7)
1. Set up System or Main Clock (MCLK)
– Click
to add new APP
– Double-click CLOCK_XMC1 APP and
close window
– Open APP configuration editor
– In APP Dependency view, double-click
CLOCK_XMC1
– Configure APP instance
– In APP configuration window, set Main
clock (MCLK) to 8MHz
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
28
Getting Started – Example –
Blinky based on DAVETM APPs (4/7)
2. Configure Port pin
– Click
to add new APP
– Double-click DIGITAL_IO APP and
close window
– Open APP configuration editor
–
In APP Dependency view, doubleclick DIGITAL_IO
– Configure APP instance
–
In APP configuration window, set Pin
direction to Input/Output and set
Initial output level to High
– Assign pin to P0.0
–
Click
to open Manual Pin
Allocator
–
Set Pin Number (Port) to #17
(P0.0)
– Solve and Save
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
29
Getting Started – Example –
Blinky based on DAVETM APPs (5/7)
3. Configure System Timer and define its
exception service routine
– Click
to add new APP
– Double-click SYSTIMER APP and close window
– Open APP configuration editor
– In APP Dependency view, double-click SYSTIMER
– Configure APP instance
– In APP configuration window, under General
Settings tab, set System timer tick interval to
100000us (0.1s)
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
30
Getting Started – Example –
Blinky based on DAVETM APPs (6/7)
– Create software timer using SYSTIMER Apps.
– Define exception handler routine in Main.c
– Define the toggle interval (in usec)
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
31
Getting Started – Example –
Blinky based on DAVETM APPs (7/7)
› Generate code
1. Click
› Build project
1. Click
2. Wait for Build to finish
› Download code
1. Click
2. Switch to Debug perspective
3. Click
to run code
› LED blinks every 0.2s
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
32
General Information (1/2)
› Where to buy kit:
– http://ehitex.com/starter-kits/for-xmc1000
– Order Number: KIT_XMC12_BOOT_001
› Infineon parts utilized on kit:
Infineon Parts
Order Number
XMC1200 Microcontroller
XMC1200-T038F0200
XMC4200 Microcontroller
XMC4200-Q48F256
3V3 regulator
IFX25001MEV33
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
33
General Information (2/2)
› Kit documentation:
– Boot Kit XMC1200
– Video Series: XMC1000 Boot Kit Getting Started
– Introduction
– DAVE™ Setup
– Boot Mode Index Configuration via DAVE or MemTool
– XMC1200 Hardware Setup
– Simple Blinky Example
– Blinky Example based on DAVE™ Apps
– Example Projects Download
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
34
References –
Where to find XMC Lib documentation?
1. Go to DAVETM Version 4 website
4. Click on Modules or Files
http://www.infineon.com/dave/v4
2. Download XMC Lib and unzip file
3. Open XMC1_Peripheral_Library
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
35
References –
Where to find DAVETM APP documentation?
1. In DAVETM, go to Help  Help Contents
2. Expand DAVE Apps  Click on CLOCK_XMC1  Overview
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
36
References –
Where to download DAVETM Example Projects?
1. Example Project library within DAVETM
2. DAVETM website
3. Example from XMC Lib package
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
37
References –
How to load Example Project in DAVETM? (1/4)
› Example Project library within
DAVETM
3. Select Examples in the
Libraries window  Click Next
1. Help  Install DAVE
APP/Example/Device Library
4. Accept terms of the license
agreements Click Finish
2. Select DAVE Project Library
Manager
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
38
References –
How to load Example Project in DAVETM? (2/4)
› DAVETM website
1. Go to DAVETM Version 4
website
5. Select Archive File  Browse to
downloaded project zip file
http://www.infineon.com/dave/v4
2. Download DAVETM EXAMPLES
3. In DAVETM, go to File  Import
4. Select DAVE Project  Next
2015-05-22
6. Click Finish
Copyright © Infineon Technologies AG 2015. All rights reserved.
39
References –
How to load Example Project in DAVETM? (3/4)
› Example from XMC Lib
package
3. Example code (main.c) can be
found within XMC Lib package
1. Go to DAVETM Version 4
website
http://www.infineon.com/dave/v4
2. Download XMC Lib and unzip
file
2015-05-22
4. Create new “Simple Main
Project” in DAVETM
Copyright © Infineon Technologies AG 2015. All rights reserved.
40
References –
How to load Example Project in DAVETM? (4/4)
5. Select target device of
selected main.c example
7. Click
to Build project
8. Click
to download and run
project on target board
6. Delete main.c in the newly
created DAVE project
7. Copy main.c from XMC Lib
example into DAVE project
Home
2015-05-22
Copyright © Infineon Technologies AG 2015. All rights reserved.
41