本帖最后由 smallbright 于 2014-4-7 20:54 编辑
大家刚开始接触ARM时,肯定是先建立开发环境。如果你用keil 时会发现,你在此基础上你如果装了51版本的编译器的话,会发现无法装ARM版本的编译器,这就会很尴尬。用了51就无法用ARM,用ARM就无法用51。我之前装了KEIL2当做51的编译器,keil4当做ARM的,实际用的时候特别不方便。好了,不废话了,切入正题吧。
不管你之前装的是51的还是ARM这都没关系。其实很简单的,下面介绍步骤:
一:先将51的文件夹或者ARM的文件夹,放到你安装keil的目录中,路径是注意是C:\keil。最好还是把目录装在C盘上。
如图1
图1
这两个文件夹是编译程序所需要的,非常重要。
二:打开TOOLS.INI的这个文件,将文件中加点东西。
打开后如果你是想在ARM下加入51功能,那么你把这一段复制下来
[UV2]
ORGANIZATION="微软中国"
NAME="微软用户", "dsf"
EMAIL="sad"
BOOK0=UV4\RELEASE_NOTES.HTM("uVision Release Notes",GEN)
SOCKETPORT=1
[C51]
PATH="C:\Keil\C51\"
VERSION=V9.00
BOOK0=HLP\Release_Notes.htm("Release Notes",GEN)
BOOK1=HLP\C51TOOLS.chm("Complete User's Guide Selection",C)
TDRV0=BIN\MON51.DLL ("Keil Monitor-51 Driver")
TDRV1=BIN\ISD51.DLL ("Keil ISD51 In-System Debugger")
TDRV2=BIN\MON390.DLL ("MON390: Dallas Contiguous Mode")
TDRV3=BIN\LPC2EMP.DLL ("LPC900 EPM Emulator/Programmer")
TDRV4=BIN\UL2UPSD.DLL ("ST-uPSD ULINK Driver")
TDRV5=BIN\UL2XC800.DLL ("Infineon XC800 ULINK Driver")
TDRV6=BIN\MONADI.DLL ("ADI Monitor Driver")
TDRV7=BIN\DAS2XC800.DLL ("Infineon DAS Client for XC800")
TDRV8=BIN\UL2LPC9.DLL ("NXP LPC95x ULINK Driver")
RTOS0=Dummy.DLL("Dummy")
RTOS1=RTXTINY.DLL ("RTX-51 Tiny")
RTOS2=RTX51.DLL ("RTX-51 Full")
LIC0=GEGKP-MSCX1-YLXC6-DKBC1-ZJPCT-SL63G
TDRV9=BIN\STCMON51.DLL ("STC Monitor-51 Driver")
如果你是想在51下装ARM,那么你把这一段复制下来粘贴到你的TOOLS文件下
[UV2]
ORGANIZATION="微软中国"
NAME="微软用户", "dsf"
EMAIL="sad"
ARMSEL=1
BOOK0=UV4\RELEASE_NOTES.HTM("uVision Release Notes",GEN)
CDB0=UV4\STC.CDB ("STC MCU Database")
[ARM]
PATH="C:\Keil\ARM\"
VERSION=4.70a
PATH1="C:\Program Files\GNU Tools ARM Embedded\4.7 2012q4\"
TOOLPREFIX=arm-none-eabi-
CPUDLL0=SARM.DLL(TDRV0,TDRV5,TDRV6,TDRV10) # Drivers for ARM7/9 devices
CPUDLL1=SARMCM3.DLL(TDRV1,TDRV2,TDRV3,TDRV4,TDRV5,TDRV7,TDRV8,TDRV9,TDRV11,TDRV12,TDRV13,TDRV14,TDRV15) # Drivers for Cortex-M devices
CPUDLL2=SARMCR4.DLL(TDRV7) # Drivers for Cortex-R4 devices
BOOK0=HLP\RELEASE_NOTES.HTM("Release Notes",GEN)
BOOK1=HLP\ARMTOOLS.chm("Complete User's Guide Selection",C)
BOOK2=CMSIS\index.html("CMSIS Documentation",GEN)
BOOK3=Signum\Docs\SigUV3Arm.htm("Signum Systems JTAGjet Driver Documentation",GEN)
TDRV0=BIN\UL2ARM.DLL("ULINK2/ME ARM Debugger")
TDRV1=BIN\UL2CM3.DLL("ULINK2/ME Cortex Debugger")
TDRV2=BIN\AGDIRDI.DLL("RDI Interface Driver")
TDRV3=BIN\ABLSTCM.dll("Altera Blaster Cortex Debugger")
TDRV4=BIN\lmidk-agdi.dll("Stellaris ICDI")
TDRV5=Signum\SigUV3Arm.dll("Signum Systems JTAGjet")
TDRV6=Segger\JLTAgdi.dll("J-LINK / J-TRACE ARM")
TDRV7=Segger\JL2CM3.dll("J-LINK / J-TRACE Cortex")
TDRV8=STLink\ST-LINKIII-KEIL.dll ("ST-Link (Deprecated Version)")
TDRV9=BIN\ULP2CM3.DLL("ULINK Pro Cortex Debugger")
TDRV10=BIN\ULP2ARM.DLL("ULINK Pro ARM Debugger")
TDRV11=NULink\Nu_Link.dll("NULink Debugger")
TDRV12=SiLabs\SLAB_CM_Keil.dll("SiLabs UDA Debugger")
TDRV13=STLink\ST-LINKIII-KEIL_SWO.dll ("ST-Link Debugger")
TDRV14=BIN\CMSIS_AGDI.dll("CMSIS-DAP Debugger")
TDRV15=BIN\DbgFM.DLL("Fast Models Debugger")
DELDRVPKG0=ULINK\UninstallULINK.exe("ULINK Pro Driver V1.0")
LIC0=GE7X7-EGEQ5-9WB2E-5T3KT-NA0N1-V0DP8
[ARMADS]
PATH="C:\Keil\ARM\"
PATH1=".\ARMCC\bin\"
CPUDLL0=SARM.DLL(TDRV0,TDRV5,TDRV6,TDRV10) # Drivers for ARM7/9 devices
CPUDLL1=SARMCM3.DLL(TDRV1,TDRV2,TDRV3,TDRV4,TDRV5,TDRV7,TDRV8,TDRV9,TDRV11,TDRV12,TDRV13,TDRV14,TDRV15) # Drivers for Cortex-M devices
CPUDLL2=SARMCR4.DLL(TDRV7) # Drivers for Cortex-R4 devices
BOOK0=HLP\RELEASE_NOTES.HTM("Release Notes",GEN)
BOOK1=HLP\ARMTOOLS.chm("Complete User's Guide Selection",C)
BOOK2=CMSIS\index.html("CMSIS Documentation",GEN)
BOOK3=Signum\Docs\SigUV3Arm.htm("Signum Systems JTAGjet Driver Documentation",GEN)
TDRV0=BIN\UL2ARM.DLL("ULINK2/ME ARM Debugger")
TDRV1=BIN\UL2CM3.DLL("ULINK2/ME Cortex Debugger")
TDRV2=BIN\AGDIRDI.DLL("RDI Interface Driver")
TDRV3=BIN\ABLSTCM.dll("Altera Blaster Cortex Debugger")
TDRV4=BIN\lmidk-agdi.dll("Stellaris ICDI")
TDRV5=Signum\SigUV3Arm.dll("Signum Systems JTAGjet")
TDRV6=Segger\JLTAgdi.dll("J-LINK / J-TRACE ARM")
TDRV7=Segger\JL2CM3.dll("J-LINK / J-Trace Cortex")
TDRV8=STLink\ST-LINKIII-KEIL.dll ("ST-Link (Deprecated Version)")
TDRV9=BIN\ULP2CM3.DLL("ULINK Pro Cortex Debugger")
TDRV10=BIN\ULP2ARM.DLL("ULINK Pro ARM Debugger")
TDRV11=NULink\Nu_Link.dll("NULink Debugger")
TDRV12=SiLabs\SLAB_CM_Keil.dll("SiLabs UDA Debugger")
TDRV13=STLink\ST-LINKIII-KEIL_SWO.dll ("ST-Link Debugger")
TDRV14=BIN\CMSIS_AGDI.dll("CMSIS-DAP Debugger")
TDRV15=BIN\DbgFM.DLL("Fast Models Debugger")
RTOS0=Dummy.DLL("Dummy")
RTOS1=VARTXARM.DLL ("RTX Kernel")
DELDRVPKG0=ULINK\UninstallULINK.exe("ULINK Pro Driver V1.0")
这些代码其实就是keil编译器中单独51或者ARM版本中的TOOLS.Ini中复制下来的,也就是说,要把51中的TOOLS.Ini文件中的内容和ARM中的TOOLS.Ini文件中的内容结合到一块儿。还有一点儿需要特别注意。看图2。
图2
这个是你这个程序编译时需要寻找的路径(PATH),你要先注意下你放C51文件夹或者ARM文件夹的路径是不是和这个文件上边写的是不是正确,如果不正确你要修改一下。这点儿非常重要啊,关乎成败的。
三:再次**keil。
上述工作做完之后,打开keil后你会发现在建立工程时会不管是51的还是ARM的芯片都可选了。但是,这还是不行,需要再次**一下。使用管理员权限打开keil,然后FILE->
License Mangement.再次看图。如图3:
图3
打开后会发现两个Product。复制CID中的代码。然后去注册机去**。就是图1中显示的注册机。一会儿注册机也会放在下面供大家下载。怎么**大家都懂吧,我就不讲了,**以后就可以用了,有什么问题再问我吧,好了就这样吧。
后记:51的文件夹,和ARM的那个文件夹在哪儿可以弄到呢?反正我的那个C51文件夹就是copy的室友电脑中的keil里的。一般都是可以用的,大家试一下。
|