lab i real-time embedded operating system for a soc system

Post on 04-Jan-2016

220 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Lab ILab I

Real-Time EmbeddedReal-Time EmbeddedOperating System for a SoCOperating System for a SoC

SystemSystem

How to use ADS & Multi-How to use ADS & Multi-ICEICE

How to use CodeWarrior IDEHow to use CodeWarrior IDE

AXD and Multi-ICEAXD and Multi-ICE

Needless

How to use ADS & Multi-How to use ADS & Multi-ICEICE

How to use ADS & Multi-How to use ADS & Multi-ICEICE

How to use CodeWarrior How to use CodeWarrior IDEIDE

MakeDebug Run

How to use CodeWarrior How to use CodeWarrior IDEIDE

Creating a new project ARM Executable Image

How to use CodeWarrior IDHow to use CodeWarrior IDEE

Files view

How to use CodeWarrior IDHow to use CodeWarrior IDEE

Targets view

AXD & AXD & Multi-ICE server

Starting the Multi-ICE server Select Start → Programs → ARM Multi-IC

E v2.2 → Multi-ICE Server. Select File → Auto-configureSelect File → Auto-configure

AXD & AXD & Multi-ICE server

AXD connects Multi-ICE configurationAXD connects Multi-ICE configuration Select Configure TargetSelect Configure Target Select the Multi-ICE.dll file. Select the Multi-ICE.dll file.

AXD & AXD & Multi-ICE server Configure processoConfigure processo

rr Clear AllClear All

AXD & AXD & Multi-ICE server

Load your program to target by ICELoad your program to target by ICE

Startup code’s flowStartup code’s flow

Reset

Undefined

FIQ

ResetUndefined

SWIPrefetch

DataAbortIRQFIQ

Reset_Handler

Undefined_Handler

FIQ_Handler

Exception Exception Vector Exception Handler

LabⅠFabonacci sequence

B .

B .

ResetHandlerResetHandlerAREA inits, CODE, READONLY IMPORT _main

ENTRYLDR PC,Addr_Reset ;B ResetHandler LDR PC,Addr_Undefined ;B UndefinedHandler …以下省略

Addr_Reset DCD ResetHandlerAddr_Undefined DCD UndefinedHandler…以下省略

ResetHandler…Coding

B Initial_SP

Initial_SPLDR r1,=0x0 ;Grows up from 0x0

;IRQ_MODEMOV r0,#(0x12|0x80|0x40)MSR cpsr_cxsf,r0MOV sp,r1ADD r1,r1,#0x5000;Stack Size

;FIQ_MODEMOV r0,#(0x11|0x80|0x40)MSR cpsr_cxsf,r0MOV sp,r1ADD r1,r1,#0x5000;Stack Size

;SVC_MODEMOV r0,#(0x13|0x80|0x40)MSR cpsr_cxsf,r0MOV sp,r1ADD r1,r1,#0x10000 ;Stack SizeMOV r4,r1; ########## Enter user's main()'B _main

END

Lab ILab I

Writing Arm code of Fibonacci for FWriting Arm code of Fibonacci for F(n) n=10(n) n=10

Downloading to DRAM of TargetDownloading to DRAM of Target Running your program by ICE.Running your program by ICE. Besides, watching the value of register.Besides, watching the value of register.

Reference Reference

ADS_CodeWarriorIDEGuideADS_CodeWarriorIDEGuide ADS_AssemblerGuideADS_AssemblerGuide ADS_DeveloperGuideADS_DeveloperGuide User Manual for Sansung 4510User Manual for Sansung 4510

top related