资源描述:
《arm linux 入门与实践》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ARMLinux入门与实践ARMLinux入门与实践作者:阿南欢迎光临书友会:http://group.ednchina.com/999/6.7基于RealViewMDK的实验6.7.1基础知识概述1.RealViewMDK的安装我们可以向深圳英蓓特公司购买完整版或者从官网(www.realview.com.cn)下载评估版本的RealViewMDK软件,它的安装和其它软件的安装没有太大的区别,按照提示一步步安装即可。如果是完整版软件还需要利用光盘中的PSN号到KEIL网上申请LIC后才能使用。软件安装完成后,点击菜单Help->uVisionHelp可打开中文版
2、的用户指南,详细介绍了软件的使用、注册等各种操作指南。2.启动代码RealViewMDK在创建工程时可以自动生成所选处理器对应的启动代码,而且可以进行图形化的代码设置,朋友们可以将自动生成的启动代码与之前提到的启动代码2410init.s进行比较,分析他们的相同和不同之处。3.分散加载的链接脚本文件在ADS中一般要在工程的链接控制选项中设置ROBASE和RWBASE,这样就在编译链接产生的映象文件中指定了RO、RW和ZI所在的区域位置,并用Image$$RW$$Base、Image$$RW$$Limit、Image$$RO$$Base、Image$$RO$$Lim
3、it、Image$$ZI$$Base和Image$$ZI$$Limit等6个段地址描述符表示,用户可以在程序中引用。而RealviewMDK链接程序使用了链接控制命令选项(类似于ADS,但最终还是会生成链接脚本文件*.sct)和分散加载链接脚本文件*.sct两种方式控制程序的链接。在链接脚本文件中,段地址描述符格式为:Image$$段名$$区域名$$Base和Image$$段名$$区域名$$Limit。下面是由下一节的LED实例中如图6.20所示的控制选项生成的分散加载链接脚本文件LED.sct。;*********************************
4、****************************;***Scatter-LoadingDescriptionFilegeneratedbyuVision***;*************************************************************LR_ROM10x300000000x01000000{;loadregionsize_regionER_ROM10x300000000x01000000{;loadaddress=executionaddress*.o(RESET,+First)*(InRoot$$Sectio
5、ns).ANY(+RO)}RW_RAM10x310000000x01000000{;RWdata.ANY(+RW+ZI)}RW_IRAM10x400000000x00001000{.ANY(+RW+ZI)}}我们可以在汇编文件中引入这些段描述符,在该脚本中:
6、Image$$ER_ROM1$$RO$$Base
7、值为0x30000000,对应ADS1.2中的
8、Image$$RO$$Base
9、;
10、Image$$ER_ROM1$$RO$$Limit
11、值为与实践编译的Code有关,如果Code=1000,十六进制值为0x3e8,则
12、Image$$ER_ROM1$$RO$$L
13、imit
14、值就为0x300003e8,对应ADS1.2中的
15、Image$$RO$$Limit
16、;
17、Image$$RW_RAM1$$RW$$Base
18、值为0x31000000,对应ADS1.2中的
19、Image$$RW$$Base
20、;如果代码中的RW-data=8,则
21、Image$$RW_RAM1$$RW$$Limit
22、和
23、Image$$RW_RAM1$$ZI$$Base
24、值为0x31000008,分别对应ADS1.2中的
25、Image$$RW$$Limit
26、和
27、Image$$ZI$$Base
28、;
29、Image$$RW_RAM1$$ZI$$Limit
30、值为
31、Image$$
32、RW_RAM1$$ZI$$Base
33、加上代码实践中的ZI-data数,对应ADS1.2中的
34、Image$$ZI$$Limit
35、。另外在该脚本中还有RW_IRAM1段,它和RW_RAM1一样也有RW和ZI区域。4.调试脚本文件在ADS中,通常是在调试器的命令窗口中装载如2410.ini等配置文件对SDRAM等进行初始化,然后装载*.axf影像文件进入源代码的仿真调试。而RealViewMDK则使用了*.ini的调试脚本文件对软硬件的调试环境进行初始化和控制仿真目标映像文件的装载。如表6.1所示为RealviewMDK预定义的一些常用命令和函数的用法。表6.1常用的预
36、定义命令和