海同教育-嵌入式培训专家 ARM开发培训班实验指导V1.0
实验四、Thumb汇编指令练习
【实验内容】
建立一个汇编工程,要求完成两个变量求和,两个变量相加的子程序用Thumb指令
编写。编译通过后,调试结果。
【实验目的】
通过实验掌握简单的Thumb指令及 ARM、Thumb交互。 【实验步骤】
参看“ThumbTest”目录下的代码
按照实验一的方法,新建一个project,名字为Thumb_test工程;添加Thumb_code.s文件到项目中。
31
海同教育-嵌入式培训专家 ARM开发培训班实验指导V1.0
实验五、ARM处理器工作模式练习
【实验内容】
建立一个汇编工程,要求通过ARM汇编指令在各个处理器模式下切换并观察各个模
式下处理器的区别。编译通过后,调试结果。
【实验目的】
通过实验掌握学会使用MSR/MRS指令实现AMR处理器工作模式的切换,观察不同模式下的寄存器,加深对CPU结构的理解。 【实验步骤】
参看“armmode”目录下的代码
按照实验一的方法,新建一个project,名字为armmode工程;添加armmode.s文件到项目中。
32
海同教育-嵌入式培训专家 ARM开发培训班实验指导V1.0
实验六、简单C语言程序实验
【实验内容】
建立一个简单的C语言代码,完成延时功能。编译通过后,调试结果。
【实验目的】
学会使用realview MDK编写简单的C语言程序并调试运行。 【实验步骤】
参看“CTest1”目录下的代码
按照实验一的方法,新建一个project,名字为C_test1工程;添加C_CALL.C文件到项目中。
33
海同教育-嵌入式培训专家 ARM开发培训班实验指导V1.0
实验七、汇编与C语言的相互调用实验
【实验内容】
使用汇编完成一个随机数产生函数,通过C语言调用该函数,产生一系列随机数,存放到数组中。
【实验目的】
学会使用realview MDK编写汇编和C语言相互调用的程序,学会使用sct连接脚本文件。
【实验步骤】
参看“explasm”目录下的代码
按照实验一的方法,新建一个project,名字为explasm工程;添加randtest.c、startup.s、random.s文件到项目中。注意在linker下选择.\\explasm.sct文件
在Debug下选择.\\DEBUGINImap.ini文件
34
海同教育-嵌入式培训专家 ARM开发培训班实验指导V1.0
实验八、C语言中内联汇编程序实验
【实验内容】
建立一个简单的C语言代码,加入内联汇编代码。编译通过后,调试结果。
【实验目的】
学会在C语言程序中内联汇编语言。 【实验步骤】 参看“CTest2”目录下的代码
按照实验一的方法,新建一个project,名字为CTest2工程。添加CCode.c startup.s文件到项目中。使用CTest2.sct脚本文件
35