版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 ARMDeveloperSuitetoARMIAREmbeddedWorkbenchMigrationGuidePartno:IntroductionThisguideexaminesthedifferencesbetweenusingtheARMDeveloperSuite(ADS)developmenttoolsIDEandtheIARSystemsARMdevelopmenttoolsIDE.Theissuesrelatedtoassemblerconversionrangefrombasictopicssuchascommandlineoptions,systemsegment/ar
2、eanames,listing/outputoptions,codegenerationoptions,registernamingdifferences,assembleroperators,assemblerdirectives,pseudo-instructions,andotherassemblerdifferences,toadvancedtopicssuchaspredefinedsymbols,conditionalassembly,macros,andmodules.Linkerrelatedtopicssuchascommandlineoptionsandimagememor
3、ymappingarealsodocumented.Thefeatures,options,descriptions,andexamplesspecifiedinthedocumentarebasedontoolsassociatedwithARMDeveloperSuiteVersion1.2andARMIAREmbeddedWorkbenchVersion4.20A.InformationabouttheARMdevelopmenttoolswasobtainedfromtheARMDeveloperSuiteVersion1.2AssemblerGuide(ARMDUI0068B)the
4、ARMDeveloperSuiteVersion1.2LinkerandUtilitiesGuide(ARMDUI0151A)andtheARMDeveloperSuiteVersion1.2DeveloperGuide(ARMDUI0056D).InformationabouttheIARSystemsdevelopmenttoolsisbasedontheARMIARAssemblerReferenceGuide(AARM-6),theARMIARC/C+CompilerReferenceGuide(CARM-10)andtheIARLinkerandLibraryToolsReferen
5、ceGuide(XLINK-459I).IAREmbeddedWorkbenchIDEoverviewTheIAREmbeddedWorkbenchIDEconsistsoftoolssuchasacompiler,assembler,linker,librarybuilder,librarian,editor,projectmanager,commandlineinterface,debugger,andsimulator.ARMDeveloperSuiteincludescommand-linedevelopmenttools(whichincludesacompiler,ARMassem
6、bler,linkerandvarioussupportlibraries),GUIdevelopmenttools(whichincludesadebugger,editorandprojectmanager),alibrarianandasimulator.Equivalenttoolsfrombothdevelopmentenvironmentsarelistedintable1togetherwiththecommandlinecommandsforinvokingthem:ToolsARMDeveloperSuiteAREmbeddedWorkbenchIDECompilerADSC
7、/C+compiler,armccorarmcppARC/C+Compiler,iccarmAssemblerADSARMassembler,armasmARARMAssembler,aarm-inkerADSARMlinker,armlinkARXLINKLinker,xlinkbrarybuilderARXARLibraryBuilder,xar-ibrarianADSARMlibrarian,armarARXLIBLibrarian,xlibDebuggerADSARMeXtendedDebugger(AXD)ARC-SPYDebuggerSimulatorADSARMulatorARC
8、-SPYSimulator1.ARMDeveloperSuiteandIAREmbeddedWorkbenchIDEequivalentsTheARMIARC/C+Compilerfeaturesefficientcodegenerationwithdebuginformation,C/C+languagesupportfacilitiesandtypechecking.TheARMIARAssemblerfeaturesabuilt-inCpreprocessorandsupportsconditionalassembly.TheIARXLINKLinkerlinksobjectfilesp
9、roducedbythecompilerorassemblertoproducemachinecodefortheARMcore,whiletheIARXARLibraryBuilderandIARXLIBLibrarianallowmanipulationoflibraryobjectfiles.TheIARC-SPYDebuggerisahigh-levellanguagedebuggerthatisintegratedintotheIDE,socorrectionsaremadedirectlyinthesamesourcecodewindowusedtocontrolthedebugg
10、ing.TOOLSCOMPARISONAnimmediatedifferencebetweenthetoolsetsisthelevelofintegrationofthedevelopmentenvironment.InIAREmbeddedWorkbench,theC-SPYDebuggeriscompletelyintegratedwiththeIDE,whereasinARMDeveloperSuite,theCodewarriorIDEbyMetrowerksandtheARMeXtendedDebugger(AXD)areseparatetoolsthatformacomplete
11、GUI-baseddevelopmentenvironment.However,essentialprojectmanagementoptionsandtools,andmake/build/debugmenusaresimilar.MetrowerksCodewarriorIDEisaprojectmanagementtoolformanagingsourcefilesandbuildingsoftwaredevelopmentprojects,whiletheAXDdebuggerprovidesanenvironmentfordebuggingC,C+andassemblylanguag
12、esourcecode.Bydefault,theAXDdebuggeriscalledtodebugandrunimagesbuiltfromtheCodewarriorIDE.TheAXDdebuggerisavailableforMicrosoftWindowsandUNIX,buttheCodewarriorIDEisonlyavailableforWindows.Generaldebuggerfeatureslikesourceanddisassemblyleveldebugging,sourcestepping,settingbreakpoints,variable,registe
13、randexpressionmonitoring/watching,callstackinformationandfacilitiesforthird-partyextensions(RTOSawareness,simulationmodules,emulatordrivers,etc.)areavailableinbothtoolsets.Bothsourcecodeeditorsprovidetypicalutilitiessuchascoloredkeywordsandsearchandreplace.ARMalsoprovidesanIDEcalledtheRealViewDevelo
14、perSuite.ProjectfilescreatedwiththeCodewarriorIDEhavethefilenameextension.mcp,comparedtoRealViewDeveloperSuiteprojectfilesthathavetheextension.prj.NotethatifyoumigratefromtheCodewarriorIDEtotheRealViewDeveloperSuitetoolsorviceversa,theprojectfilewillneedtobere-createdandrelevantsourcefilesre-added.N
15、oautomaticconversiontoolsexist.GettingstartedThissectiondiscusseshowtogetstartedwithconvertingCandassemblerprojectsfromARMDeveloperSuitetoIAREmbeddedWorkbench.FilenameextensionsInARMDeveloperSuite,projectslistallassociatedsourcefilesrequiredbythetargetapplication.Theseprojectfileshavea.mcpfilenameex
16、tension.InIAREmbeddedWorkbench,workspacesareusedfororganizingmultipleprojects.Thisisusefulwhenyouaresimultaneouslymanagingseveralrelatedprojects.Workspacefileshavethefilenameextension.eww,andprojectfileshavetheextension.ewpinIAREmbeddedWorkbench.ThefilenameextensionsofCsourceandheaderfilesare.cand.h
17、,respectively,inbothARMDeveloperSuiteandIAREmbeddedWorkbench,whichincludesstandardlibraryfilesanduser-specificfiles.ThefilenameextensionofassemblersourcefilesinARMDeveloperSuiteis.s.IAREmbeddedWorkbenchuses.s79bydefault,butinadditionacceptsthe.sextension.Theobjectfilesproducedbythecompilerorassemble
18、rhavethefilenameextensio.no(inARMDeveloperSuite)or.r79(inIAREmbeddedWorkbench).ConvertinganADSprojecttoanIARprojectTheguidelinesbelowdescribehowtoconvertanexistingARMDeveloperSuiteproject,extracttheoptionsusedforbuildingandconverttheprojectintoanIARproject.Asanexample,theCodewarriorIDEprojectfiletes
19、t.mcpinthefollowingfigurecontainsmain.candcounter.csourcefilesinC,acounter.hheaderfileinCandaload.sassemblyfile.Thissimplemainfunctioncallsacounterfunctionthatdelaysuptothevalueofindexandassignsthetempvariablethevalueoftheexternalvariablevaluefromload.s.2.TheMetrowerksCodewarriorIDEwindowTheprojects
20、ettingswindowislocatedunderEdit-“Debug/DebugRel/Release”Settings(Alt+F7)andisshowninthefollowingfigure.3.TheprojectsettingswindowoftheCodewarriorIDESettingsforeithertheARMDeveloperSuitecompiler,assembler,linkerordebuggercanbeselectedfromtheTargetSettingsPanelattheleftofthewindow.Thecommandlineoutput
21、sforeachofthesetoolscanbefoundundertheirrespectiveEquivalentCommandLinefieldsintheirprojectsettingswindow.Whentheprojectsettingshavebeenselected,build/make/compiletheproject.Anyerrorsorwarningswillbedisplayedinthewindowbelow.4.ThemakewindowoftheCodewarriorIDEOncethisprocessissuccessful,toruntheAXDde
22、bugger,gotoProject-Debug(F5).ARM71DMIReSearchPKKes&tx血略SyssmViews-ExeaceOpifonE-WriowH0p理J盟岸|澎1P|论囲|03呵国|11(10|丙0匾园匚1丄*利乔疗FF厂E|M常W4T1DMCtS.asfASYWCRD!FTdroilCan*阳HgtADSy1.2EjidrurrterSOE.CkipynglTic)AEMUmrl&j2CDIra-gfil|ffljgiFila冲|曲ARMFmi-併记碎齐nbr匚JO國oooofde(Oss?ffcicnadel0K*7ff0010;7nd*finedl*C0007
23、id;OxflBCDaSOafiTJTlArQH1Elljrll-pcjjC0007f*EOxa7ffOOiaOKfiTffOOlD-j9U3n.fifCduOTf-el:OKefld(fe0OOist-ndarGP1ErllrrlJ-pcJicciuoif-e:CiKe?ff001OdelCiKt7ffCiOlQ1;7und-e-finedEOOOTfiiOxfiBCDaSOatQ,1tlljrl3-pcjjCOOOTftCOx?ffoc!iaHaOxa7f0010-丿*?口wafCduOTfHl:OKsflQ(be0OOist-ndarGP1Erllrrl3-pc?Cdu-jffej:iK
24、e?ffCii:ilOdel0Kt7ff0010;7und-e-finedCOOOTffiOEQBCDaSOCraHElljElJ-pcj!0E4i2Bf8a9CAdd.rSpijtOK&C/tDxHC9Scciuosoa-3l:0ssflEl000fidniiar8Fr0-r3;lo*oooemC0k600006addrQPrGrrScoooscc.OxoCBLIOOaAdd.rliEljt8C000SC1C0XQCB22C!0aAdd.r2H2jr8aoooeoi4CIOB3-3003addr3Pr-3rr6C0008016lOBOhOOlsubrllpErOrtlcooosni-Oxa2
25、41aOOlsubrl2.e2jiliVmra-gOxcilEDOOOlenprgtl00008024:0s0a0&000ebeqzeroreg-ion00008026jLiKeShDCiOTO2dniazOIfr4-rtCO005Ci-(dxai&dOOOSiznp74,.E&C0008D3COKUArrmabQq_movNew-Workspaceandtocreateanewproject,gotoProject-CreateNewProject.ADDSOURCEFILESNext,addtheCsourceandassemblerfiles(i.e.main.c,counter.can
26、dload.s)fromtheARMDeveloperSuiteprojectintothenewIAREmbeddedWorkbenchproject.Toaddprojectfiles,gotoProject-AddFiles.Notethattheassemblerfile,load.sneededtobeconvertedaccordingtotheguidelinesdescribedintheremainderofthisguide.Inthisexample,theAREAandDCBdirectivesforcreatinganewcode/datasectionandfora
27、llocatingabyteofmemoryrespectively,neededtobeconvertedtotheirequivalentIARdirectives,whichareRSEGandDC8.FibJ.*Re&fcWewp*映Options(Alt+F7).Awindowasshownattherightofthefollowingfigureshouldappear.Intheexampleproject,theARM7TDMIprocessorcorehasbeenselected.Acomparisonscreencaptureforselectingaprocessor
28、coreinARMDeveloperSuiteisshownattheleftofthefigure.ThisoptioncanbeviewedbyselectingARMCCompilerfromtheTargetSettingsPanelattheleftoftheprojectsettingswindow(whichcanbeopenedfromEdit-“Debug/DebugRel/Release”Settings(Alt+F7)asmentionedpreviously).ForIAREmbeddedWorkbench,thetargetcorecanbeselectedfromt
29、heProcessorvariantpanelunderGeneralOptionsintheCategory:panelwhentheprojectoptionswindowisopened.ADSIAR7.SelectingaprocessorcoreforthecompilerinARMDeveloperSuiteandIAREmbeddedWorkbenchSETCCOMPILERARM/THUMBMODETodefineARMorThumbmodefortheCCompilerinARMDeveloperSuite,gototheFileMappingsoptioninTargetS
30、ettingsPanelsandselecttheappropriatecompilerwiththeCompiler:multipleselectionboxfortheassociatedfileextensions.Intheexampleproject,theARMCCompilerwillbeusedforthe.cand.hsourcefiles.ForIAREmbeddedWorkbench,theoptiontochooseARMorThumbmodecanbefoundintheProcessorModepanelunderGeneralOptionsintheCategor
31、y:panel.ThefollowingscreencapturesdemonstratehowtotelltheCcompilertogenerateARMorThumbinterworkcodeinARMDeveloperSuite.ChooseeithertheARMCCompilerorThumbCCompileroptionsfromTargetSettingsPanels,selecttheATPCStab,thenselecttheARM/ThumbinterworkingcheckboxintheARM/ThumbProcedureCallStandardOptionspane
32、l.ToperformARM/ThumbinterworkinginIAREmbeddedWorkbench,selecttheGenerateinterworkcodecheckboxfromGeneralOptionsintheCategory:panelasshowninthepreviousfigure.ADSADS9.SettingARM./ThumbinterworkingmodefortheCcompilerinARMDeveloperSuiteSETCCOMPILERINCLUDEDIRECTORIESIncludedirectoriesforARMDeveloperSuite
33、projectscanbefoundbyselectingSourceTreesfromTargetSettingsPanelsintheprojectsettingswindow.Fortheexampleproject,theADSINCvariablecontainsthedirectorypathtotheincludefiles.InIAREmbeddedWorkbench,includepathscanbedefinedbyselectingC/C+CompilerfromtheCategory:panelattheleftoftheprojectoptionswindow,sel
34、ectingthePreprocessortabandaddingthepathstotheIncludepaths(oneperline)panel.ADSIAR10.SettingincludedirectoriesfortheCcompilerinARMDeveloperSuiteandIAREmbeddedWorkbenchSETCCOMPILERPREDEFINEDSYMBOLSThefigurebelowshowsthelocationofpredefinedcompilersymbolsandvariablesforARMDeveloperSuiteandIAREmbeddedW
35、orkbench.InARMDeveloperSuite,thepredefinedsymbolsarelocatedunderthePreprocessortabintheARMCCompileroptioninTargetSettingsPanels,whileinIAREmbeddedWorkbench,thevariablesarelocatedintheDefinedsymbols(oneperline)panelunderthePreprocessortabintheC/C+CompileroptionintheCategory:panel.SETASSEMBLERCORETYPE
36、Asmentionedpreviously,theexampleprojectusestheARM7TDMIprocessorcore.TochangeaprocessorcoretypefortheADSDeveloperSuiteassembler,gotoARMAssemblerfromTargetSettingsPanelsandselectthedesiredcoretypefromtheArchitectureorProcessormultipleoptionsbox.ForIAREmbeddedWorkbench,thetargetcorefortheassemblerisset
37、inthesamelocationasthecompiler.ThisislocatedintheProcessorvariantpanelunderGeneralOptionsintheCategory:panelasshowninthecomparisonfiguresbelow.ItisnotpossibletoselectadifferentcoretypefortheCcompilerandassemblerinIAREmbeddedWorkbench.ADSIAR12.SelectingaprocessorcorefortheassemblerinARMDeveloperSuite
38、andIAREmbeddedWorkbenchSETASSEMBLERARM/THUMBMODEInordertodefineeitherARMorThumbmodefortheassembler,refertothefigurebelow.InARMDeveloperSuite,thisisdefinedintheInitialStatepanelintheTargettaboftheARMAssembleroptioninTargetSettingsPanels.ForIAREmbeddedWorkbench,thisoptionisdefinedintheProcessormodepan
39、eloftheTargettabinGeneralOptionsintheCategory:panel.ThisissimilartosettingARM/ThumbmodefortheIAREmbeddedWorkbenchCcompiler.SETASSEMBLERINCLUDEDIRECTORIESThisstepsetstheincludedirectoriesfortheassembler.InARMDeveloperSuite,theincludedirectoriesaresetinthesamelocationintheprojectsettingswindowasthecom
40、piler,i.e.undertheSourceTreesoptioninTargetSettingsPanels.ForIAREmbeddedWorkbench,includepathscanbedefinedintheIncludepaths(oneperline)panelintheIncludetabfromtheAssembleroptionintheCategory:panel.Thefigurebelowshowsthecomparisonscreencaptures.SETASSEMBLERPREDEFINEDSYMBOLSThelistofassemblerpredefine
41、dsymbolsorvariablesforbothARMDeveloperSuiteandIAREmbeddedWorkbenchareshowninthefigurebelow.InARMDeveloperSuite,thesymbolsarelocatedinthePredefinestabunderARMAssemblerinTargetSettingsPanelsandforIAREmbeddedWorkbench,theycanbefoundinthe#undeftabundertheAssembleroptionintheCategory:panel.NotethattheARM
42、DeveloperSuiteallowspredefinedvariablestobeedited.SETLINKERCODEANDDATABASEADDRESSESTheexampleprojecthasamemorymapwithread-onlyandread-writebaseaddressesof0 x0000and0 xA000respectively.IntheARMDeveloperSuite,thisinformationcanbeinputtothelinkerbyselectingtheOutputtabfromtheARMLinkeroptioninTargetSett
43、ingsPanelsandfillingintheROBaseandRWBasefieldsasshown.AlthoughtheIAREmbeddedWorkbenchdoesnothaveanequivalentfieldstoinputthisinformation,theCmdOpttab(selectedfromtheLinkeroptionintheCategory:panel)canbeused.SelecttheUsecommandlineoptionscheckboxandaddinthecommandsasshowninthefigurebelow.Adiscussiono
44、fspecifyingamemorymapofanimagetothelinkercanbefoundfurtherintheguide.NotethatinARMDeveloperSuite,thefromELFutilityofthelinkermaybeusedtotranslateexecutableimagefilesgeneratedbythelinkerintootheroutputformatssuchasplainbinary.ADSIAR16.SelectingaprocessorcorefortheassemblerinARMDeveloperSuiteandIAREmb
45、eddedWorkbenchSTARTIARC-SPYDEBUGGERAftersettingtherelevantprojectoptions,compile/make/buildtheprojectandgotoProject-Debug(Ctrl+D)tostarttheIARC-SPYDebuggerasshowninthefigurebelow.OnceintheIARC-SPYDebugger,toreturntotheeditorgotoDebug-StopDebugging.17.TheIARC-SPYDebuggerwindowConvertingassemblersourc
46、efilesTheguidelinesinthefollowingsectionsdescribehowtoaccuratelyandsystematicallyconvertassemblersourcefilesfromARMDeveloperSuitetoIAREmbeddedWorkbench.BASICASSEMBLERCONVERSIONForbasicassemblerconversion,usethefollowingsteps,shownwithasimpleexample:Afterstep1RSEGtest:CODE:NOROOT(2)indexRN9LDRrO,inde
47、x,#4LDRr1,=&FF00RSEGhash:DATA:NOROOT(2)DCFD12.3valueEQU8LDRr5,=value|0 xF9ENDRemoveuseoftheARMDeveloperSuiteRNdirective.Renameregisters(ifrequired).Beforestep2RSEGtest:CODE:NOROOT(2)indexRN9LDRr0,index,#4LDRr1,=&FF00RSEGhash:DATA:NOROOT(2)DCFD12.3valueEQU8LDRr5,=value|0 xF9ENDAfterstep2:RSEGtest:C0D
48、E:N0R00T(2)LDRr0,r9,#4LDRr1,=&FFOORSEGhash:DATA:NOROOT(2)3)Modifyunaryandbinaryassembleroperators,whilenotingoperatorprecedence.TheexampleshowsthemodificationofthebitwiseORoperatorfrom|(inARMDeveloperSuite)to|(inIAREmbeddedWorkbench).Beforestep3:RSEGtest:C0DE:N0R00T(2)LDRr0,r9,#4LDRr1,=&FFOORSEGhash
49、:DATA:NOROOT(2)DCFD12.3valueEQU8LDRr5,=value|0 xF9ENDAfterstep3RSEGtest:CODE:NOROOT(2)LDRr0,r9,#4LDRr1,=&FF00RSEGhash:DATA:N0R00T(2)DCFD12.3valueEQU8LDRr5,=value|0 xF9END4)ModifyassemblerdirectivesBeforestep4:RSEGtest:CODE:NOROOT(2)LDRr0,r9,#4LDRr1,=&FF00RSEGhash:DATA:NOROOT(2)DCFD12.3valueEQU8LDRr5
50、,=value:OR:0 xF9ENDAfterstep4RSEGtest:CODE:NOROOT(2)LDRr0,r9,#4LDRr1,=&FF00RSEGhash:DATA:NOROOT(2)5)Modifyassemblersymbols,numericliteralsandnumericexpressions(ifrequired).Notethatassemblerpseudo-instructionsandlabelsdonotneedtobemodified.Theexamplebelowshowsthemodificationofanumericliteral.Beforest
51、ep5RSEGLDRtest:CODE:NOROOT(2)r0,r9,#4LDRr1,=&FFOORSEGhash:DATA:N0R00T(2)DF6412.3valueEQU8LDRr5,=value:OR:0 xF9ENDAfterstep5:RSEGtest:CODE:NOROOT(2)LDRr0,r9,#4LDRr1,=0 xFF00RSEGhash:DATA:NOROOT(2)DF6412.3valueEQU8LDRr5,=value:OR:0 xF9ENDCOMPLEXASSEMBLERCONVERSIONFormorecomplexassemblerconversions,fol
52、lowthestepsoutlinedbelow.(DetaileddescriptionsandassociatedexampleshavebeenprovidedinthesectionAdvancedconversion24.)Modifypredefinedsymbols.Modifyconditionalassemblydirectives.Convertmacros.Createmodules(ifrequired).MakefilesARMDeveloperSuitetoolsmayalsobeusedwithmakefiles.Ifmakefilesarerequired,th
53、efollowingstepsdescribethemethodofconvertingmakefilesfromARMDeveloperSuitetoIAREmbeddedWorkbench.Asimpleexampleofamakefileconversionisprovided.1)Changetheassemblertousefromarmasm(ARMDeveloperSuite)toaarm(IAREmbeddedWorkbench)Beforestep1:#AssemblertouseAS=armasm#0ptionsDtoDpassDtoDtheDassemblerAFLAGS
54、=-gD-bigend-list=testhello.o:Dhello.sDDD$(AS)D$(AFLAGS)Dhello.sBeforestep1:clean:innnrmn-rfn*.oAfterstep1:#AssemblertouseAS=aarm#0ptionsntonpassntonthenassemblerAFLAGS=-g-bigend-list=testhello.o:nhello.snnn$(as)i$(aflags)dhello.sclean:nnnnrmn-rfn*.o2)Modifycommandlineoptions.Theexampleshowshowtochan
55、geth-egoptionusedforgeneratingdebuginformationinARMDeveloperSuitetotheequivalentoptioninIAREmbeddedWorkbench-,r.Beforestep2:#AssemblertouseAS=aarm#0ptionsntonpassntonthenassemblerAFLAGS=-gn-bigend-list=testhello.o:nhello.snnnn$(As)n$(aflags)ihello.sclean:nnnnrmn-rfn*.oAfterstep2:#AssemblertouseAS=aa
56、rm#0ptionsntonpassntonthenassemblerAFLAGS=-r-bigend-list=testhello.o:hello.s$(AS)$(AFLAGS)hello.sclean:rm-rf*.o Modifycodegenerationoptions.TheexampleshowshowtochangetheARMDeveloperSuiteoptionforgeneratingbig-endianorderedcodeanddatatotheequivalentoptioninIAREmbeddedWorkbench.Beforestep3:#Assemblert
57、ouseAS=aarm#OptionsQtoQpassQtoQtheQassemblerAFLAGS=-rQ-bigend-list=testhello.o:Qhello.sQQQ$(AS)Q$(AFLAGS)Qhello.sclean:QQQrmQ-rfQ*.oAfterstep3:#AssemblertouseAS二aarm#0ptionsQtoQpassQtoQtheQassemblerAFLAGS=-rQ一一endianQbig-list=testhello.o:Qhello.sQQQ$(AS)Q$(AFLAGS)Qhello.sclean:QQQQrmQ-rfQ*.oModifyli
58、sting/outputoptions.TheexampleshowshowtochangetheARMDeveloperSuiteoptionforproducingalistingoutputfiletotheequivalentoptioninIAREmbeddedWorkbench.Beforestep4:#AssemblertouseAS二aarm#0ptionsQtoQpassQtoQtheQassemblerAFLAGS=-rQ-endianQbig-list=testiello.o:Qhello.sQQQ$(AS)Q$(AFLAGS)Qhello.sclean:QQQrmQ-r
59、fQ*.oAfterstep4:#AssemblertouseAS二aarm#0ptionsQtoQpassQtoQtheQassemblerAFLAGS=-rQ-endianQbig-ltesthello.o:Qhello.sQQQ$(AS)Q$(AFLAGS)Qhello.sclean:QQQQrmQ-rfQ*.oLinkerFilesConvertinglinkerfilesfromARMDeveloperSuitetoIAREmbeddedWorkbenchissimilartotheconversionofmakefiles.RefertothesectionLinkerandoth
60、ertools28foradetaileddescriptionoflinkeroptionsandthememorymappingmechanism.Followthesesteps:1)Modifylinkercommandlineoptions.2)Changethememorymappingmethodfromusingscatterloading(ARMDeveloperSuite)tosegmentcontrol(IAREmbeddedWorkbench).6)MigrationreferenceThissectionliststhedifferencesinassembler,c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年高校图书馆文化展览策划岗面试题库
- 2026年挑战杯及创青春赛事组织测试题
- 2026年高铁车站消防员招聘面试消防设备
- 2025年甘肃省兰州工业学院招聘考试试卷真题
- 临时排水施工方案(一)
- 丽水市知识产权专利、商标、地理标志类示范企业申报表
- 投标用工作方案
- 阳光护蕾工作方案
- 铁路党建品牌实施方案
- 朝鲜汤粉店团队建设方案
- 2026年医疗三基三严知识考前冲刺测试卷含完整答案详解(必刷)
- 2026年综治网格中心业务知识考核题库
- (2025年)无人机考试复习题库附答案详解
- 2026年全国标准化知识竞赛真强化训练高能及参考答案详解(综合题)
- 2026建安杯信息通信建设行业安全竞赛核心考点试题库(选择题)
- 造价审核时效工作制度
- 2026年智慧矿山整体解决方案商业计划书
- 河北沧州市八县联考2025-2026学年高三下学期3月阶段检测英语试题(含解析)
- 河北邯郸市2026届高三第一次模拟检测 化学试卷
- 2026年全国统一税务执法资格考试模拟试卷(附答案)
- 医药公司反贿赂管理制度
评论
0/150
提交评论