一、目标工具选项(Target Options …)
µVision可以设置目标硬件的选项。通过下图1中的工具栏2区域按钮或1区域菜单项Project -> Options for Target打开Options for Target对话框。
图1
二、设备选项卡(device )
在 Target页中设置目标硬件及所选CPU片上组件的参数。如图2所示。
图2
在图2中,各区域说明如下:
1:显示当前选定的CPU的厂商名,CPU的型号,和编译工具。
2:是该cpu 的一些描述。
3:更改所使用的CPU,
三、硬件目标设置选项卡(Target),见图3 所示。
在图3中,各区或详细说明如下:
1:指定用晶振频率,可以用于模拟调试,仅反映外部振荡频率。
2:可以选择KEIL集成的实时操作系统RTX Kernel。
针对复杂的嵌入式应用,MDK内部集成了由ARM开发的实时操作系统(RTOS)内核RTX,它可以帮助用户解决多时序安排、任务调度、定时等工作。值得一提的是,RTX可以无缝集成到MDK工具中,是一款需要授权的、无版税的RTOS。RTX程序采用标准C语言编写,由RVCT编译器进行编译。
4:片外ROM设置,最多支持3块ROM(Flash),在Start栏输入起始地址,在Size栏输入大小。若是有多片片外ROM,需要在7区域设置一个作为启动存储块,程序从该块启动;有几块ROM需要选中对应的3区域。
6:片内ROM设置。设置方法同片外ROM,只是程序的存储区在芯片内集成。
9:使用 Cross-Module优化。
10:使用MicroLib库。它旨在与需要装入到极少量内存中的深层嵌入式应用程序配合使用. 这些应用程序不在操作系统中运行. MicroLib进行了高度优化以使代码变得很小. 它的功能比缺省 C 库少,并且根本不具备某些 ISO C 特性. 某些库函数的运行速度也比较慢,例如,memcpy(). 与缺省 C 库之间的差异MicroLib与缺省 C 库之间的主要差异是: MicroLib不符合 ISO C 库标准. 不支持某些 ISO 特性, 并且其他特性具有的功能也较少. MicroLib不符合 IEEE 754 二进制浮点算法标准. MicroLib进行了高度优化以使代码变得很小. 无法对区域设置进行配置. 缺省 C 区域设置是唯一可用的区域设置. 不能将 main() 声明为使用参数,并且不能返回内容. 不支持 stdio,但未缓冲的 stdin,stdout 和 stderr 除外. MicroLib对 C99 函数提供有限的支持. MicroLib不支持操作系统函数. MicroLib不支持与位置无关的代码. MicroLib不提供互斥锁来防止非线程安全的代码. MicroLib不支持宽字符或多字节字符串. 与 stdlib 不同, MicroLib不支持可选择的单或双区内存模型. MicroLib只提供双区内存模 型,即单独的堆栈和堆区. 可以合理地将MicroLib与 --fpmode=std 或 --fpmode=fast 配合使用. MicroLib中的函数负责: 创建一个可在其中执行 C 程序的环境. 这包括: 创建一个堆栈创建一个堆(如果需要) 初始化程序所用的库的部分组成内容.
11:指令集中也分为高字节结尾,大端模式。编译器默认都是小端模式,所以该项变成了灰色。三星的S3C2440既支持大端也支持小端,这样的处理器该项就可以选择了。
16:利用交叉模块优化创建一个链接反馈文件以实现全局代码优化。
13:片外RAM设置。基本同片外ROM,只是若选中19、20区域后,对应的RAM不会被默认初始化为0。
15:片内RAM设置。设置方法与片外RAM相同,只是数据的存储区域在芯片内集成。
通过设置2,4,5,6,7,8区域和12,13,14,15,17,18区域可以产生分散加载描述文件。必需设置LinkeràUse Memory Layout for Target Dialog选项。
四、输出选项卡(Output),见图4所示。
图4
在图4中,各区或详细说明如下:
1:输出文件到指定的文件夹。便于文件管理,分析。
2:允许创建3,4,5的输出文件。
3:创建调试信息,可用于调试。
4:创建HEX文件,用于下载程序。
5:产生浏览信息。用于查看原信息。 在代码上点击右键 出现 go to definition of“-----------”。选了 browse information 这个功能才能用。
6:创建库文件。
7: 生成的文件名
8:创建批文件。
[ 本帖最后由 sdjntl 于 2010-11-16 15:29 编辑 ]
五、列表选项卡(Listing)。见图5所示。
图5
1、选择列表文件输出的文件夹。可设置文件页面的宽度,长宽。
2、汇编列表信息选项,可选择生成或禁止产生 .lst文件,生成或禁止对照信息。
3、C编译程序列表选项,可选择生成或禁止生成.txt, .i文件。
4、4、连接器列表选项。可选择生成或禁止生成.map文件。可设置生成代码的详细信息。可选择性的选取输出MAP文件。
六、用户程序选项卡(User),见图6
图6
在图6,各区或详细说明如下:
1、编辑C/C++源文件前,运行用户选取的应用程序。可用DOS16模式运行。
2、编译程序前运行用户选择的应用程序,可用DOS16模式运行。
3、编译程序后运行用户选择的应用程序,可用DOS16模式运行。可选择编译完成后蜂鸣器报警,或者启动调试程序。
七、C/C++选项卡(C/C++)。见图7所示。
图7
1、 定义预处理符号。相当于在程序中使用#define xxxx,这样程序中#if xxxx就可以通过了。
2、使用优化等级,优化程序代码。0不优化,3最高级优化。
3、时间优化。在可能浪费时间的地方,优化执行时间,
4、非对齐数据采用多次访问方式。当LMD/STM指令有4个以上产生时,列分裂LMD和STM指令,以减不中断延迟。
5、每个函数产生一个ELF段。允许优化每一个ELF段。
6、
编译标准ANSI C格式的源文件
枚举值用整形数表示
类型用有符号字符号表示
段中代码和只读数据的地址在运行时可以改变。
段中的可读/写的数据地址在运行期间可以改变。
7、输出报警信息。
8、 头文件路径。
9、备用控件。可以用来指定任何指令。
10、显示当前指令编译器所选的指令集。
八、Asm选项卡(Asm)。 见图8所示。
图8
在图8,各区或详细说明如下:与图7相似,重点看以下两项;
1、指定汇编条件。
2、汇编选项
生成ARM/Thumb指令集的目标代码,支持两种指令之间的函数调用。
段中代码和只读数据的地址在运行时可以改变
段中的可读/写的数据地址在运行时可变
只编译THUMB指令集的汇编源文件
不输出警告信息
软件堆栈检查
非对齐数据采用多次访问方式。
九、连接选项卡(Linker)。见图9所示。
链接选项配置说明如下:
1、选择是否使用分散文件加载对话框Target页面。
2、 RW段运行时可变
3、RO段运行时可变
4、链接时不搜索标准库
5、将might fail报告设置为错误提示输出。
6、R/O段起始地址输入框
7、R/W段起始地址输入框
8、禁止警告。
9、指定打开分散加载文件,编辑此文件。
[ 本帖最后由 sdjntl 于 2010-11-16 15:36 编辑 ]
十、调试选项卡(Debug)。见图10所示。
图10
在图10中,提供了调试器页面,用于调试和测试应用程序,有两种操作模式:仿真模式和GDI驱动模式。图中标示的各区或详细说明如下:
1、选择使用uVision 模拟调试
2、同步PC时钟
3、配制选择目标,例如通信通道和内存缓存
4、在开始仿真之前,下载Output页面指定路径下的可执行文件。
5、在开始调试器后,执行程序到MAIN。
6、指定一个包含调试命令或调试功能的文件,用于配制设置。
7、恢复调试器上次调试时的断点窗口
8、恢复调试器上次调试时的工具箱窗口
9、恢复调试器上次调试时的观察信息窗口
10、恢复调试器上次调试时的内存信息窗口
11、检查模拟器或目标驱动动态连接库的设定,参数不用修改。
12、检查模拟器对话框的设定,参数不用修改。
以上1-12为仿真模式,可以在没有目标系统的情况下进行仿真CPU的很多特性。
执行的顺序如下:
一、当允许下载可执行文件时,先执行区域4下载可执行文件。
二、当允许恢复调试器的部分窗口时,执行区域7,8,9,10。恢复部分调试窗口。
三、有初始化文件设定时,执行区域6,下载初始化文件。
四、当允许开始调试后执行到MAIN标签,执行区域5,运行到MAIN标签。
13-23 为GDI驱动模式,基中同模拟仿真设置相同,可以使用高级GDI驱动器,例如ULINK,JLINK来连接目标硬件。
重点区域13。下拉列表如下:
此列表包含多种GDI驱动器。可用使用TOOLS.INI 文件编辑。
KEIL uVision 4 没有上图最后一项关于LM的驱动,可以用动加入。
修改TOOLS.INI文件如下:
1、CPUDLL1=SARMCM3.DLL(TDRV1,TDRV2,TDRV3,TDRV4,TDRV5,TDRV7,TDRV8,TDRV9)
# Drivers for Cortex-M devices
修改为 :
CPUDLL1=SARMCM3.DLL(TDRV1,TDRV2,TDRV3,TDRV4,TDRV5,TDRV7,TDRV8,TDRV9,TDRV11)
# Drivers for Cortex-M devices
2、TDRV10=BIN\ULP2ARM.DLL("ULINK Pro ARM Debugger")
增加一行
TDRV11=BIN\LMIDK-AGDI.DLL("LM Interface Driver")
如果想使用JLINK,可选择取RDI Interface Driver 项。提示如下:
没有找到AGDIRDI.DLL,可以从以前的版本找一个。拷到指定的目录下。
再打开就会出再以下提示了:
首先要在区域1配制JLINK硬件仿真的驱动路径。
然后就可以通过区域2打开配制介面区域3了。
如果想使用ULINK,设置如下:
首先选择区域1,然后Settings.就会出现ULINK设置介面。
首再连接ULNK,将自动装驱动,区域2显示了ULINK的部分信息。如果要想连接LM3S8962。要将区域3的Port选SW方式。区域4中显示了当前连接的目标板LM3S8962的ID号。
下载FLASH ,设定如下:
通过区域1打开Flash Download 介面,然后用区域2添加对应的型号,从区域3的下拉菜单中选取LM3SXXXX 256K Flash一项。这样就完成了对应型号加入到区域4中。可以利用区域5下载FLASH了.
十一、工具选项卡(Utilities),见图11。
在图11,各区或详细说明如下:
1、允许使用目标驱动器为FLASH编程。
2、选择,设置目标驱动器。
3、在调试之前允许下载更新程序
4、初始化文件设定。此文件必需是公共配制文件或是由调试命令或调试功能命令定义的辅加文件。
5、使用外部工具为FLASH编程。
楼主,希望你能够整理成WORD,方便我们下载~~~~~~~~~~~~