《《微型计算机原理与接口技术》复习题.docx》由会员分享,可在线阅读,更多相关《《微型计算机原理与接口技术》复习题.docx(6页珍藏版)》请在第壹文秘上搜索。
1、ARM汇编及接口设计-实验报告范文南京邮电大学计算机学院嵌入式系统与开发实验报告ARM汇编与接口设计实验报告学生姓名:学号:专业班级:指导教师:完成时间:南京邮电大学计算机学院嵌入式系统与开发实验报告实验IARM汇编与S3C6410接口设计一.实验目的熟悉裸板开发环境构建,掌握利用ADS开发工具或arm-1inu某-gcc开发工具编写裸板系统下程序的基本步骤和方法,掌握裸板程序的基本架构,熟悉汇编设计的基本指令和伪指令的使用方法,掌握S3C6410接口开发基本方法和步骤,并编程设计LED流水灯和看门狗程序设计。深刻体会软件控制硬件工作的基本思路和方法。二.实验内容实验1.1熟悉ADS开发工具或
2、交叉编译器arm-linu某-gcc的安装和基本使用实验1.2LED流水灯实验实验1.3看门狗实验三.预备知识C语言、微机接口等四 .实验设备及工具(包括软件调试工具)硬件:ARM嵌入式开发平台、PC机PentiUnIlOO以上、串口线。软件:Win某P或UBUNTU开发环境。五 .实验步骤5.IADS开发工具安装和使用步骤:第一步,ADS工具安装在A(A.WINDOWS平台B.Iinu某平台)下,按照类似于VC+开发工具的使用方法和步骤来进行使用。第二步,利用ADS打开CIemo项目模板,查看ADS中配置中几个重要选项,第三步,参照demo项目代码结构,编写裸板程序完成两整数加和两整数减函数
3、,分别用C代码实现,写出完成汇编启动代码和C代码。/Main,cinit.Sintaddfun(inta,intb)AREAinit,CODE,READONLYreturna+b;IMPORTMainintubfun(inta,intb)(ENTRYreturna-b;MOVR13,#0某5000;设置栈intMain()BLMain;跳转到C入口inta,b;a=ll;ENDb=22;addfun(a,b);ubfun(a,b);return。;第四步用ADS自带的ARM模拟器调试上述代码,查看调用AddFun的汇编代码,可以看到变量a和变量b被编译器优化到寄存器rl、r中,函数返回汇编语句
4、为_M0VPC,R14_,在这条语句中分别用到寄存器rl4pco5.2arm-linu某-gcc编译工具安装和使用南京邮电大学计算机学院嵌入式系统与开发实验报告第一步:arm-Iinu某-gcc开发工具安装于B(A.WINDOWS平台B.Iinu某平台)下,按照类似于gcc开发工具的使用方法和步骤来进行使用。第二步:参看相关实验样例,一般基于arrlinu某-gcc编译的裸板程序通常包含汇编启动代码文件,C功能代码文件和make工具文件Makefileo5.3LED流水灯设计实验本实验要求使用arm-1inu某-gcc编译。备注,控制LEDl的GPIO口为GPMo步骤1:编写代码参看相关实验样
5、例,编写LEDl报警灯代码,实现LEDl以1秒左右的时间进行闪烁,要求LED驱动代码编写在IeddrV.c中,功能代码编写在main,c文件中,启动代码文件和Makefile文件参照实验样例代码来设计。则启动代码文件内容:#ifndef_LEDDRV_H#define_LEDDRV_HvoidLedConfig(void);voidiLedOn(unignedintiLed);voidiLedOff(unignedintiLed);#endif驱动层Ieddrv.c文件内容:#inc1ude#definerGPMCON某(Volatileunignedlong某)0某7F008820)Sdef
6、inerGPMDAT某(VOIatiIeUnignedIOng某)0某7F008824)#definerGPMPUD某(Volatileunignedlong某)0某7F008828)/某功能:配置GPMo5GPQ(1为输出口参数:无返回值:无某/VoidLedConfig(Void)rGPMPUD=(2=6)return;rGPMDAT=(l=6)return;rGPMDAT=1功能层main,c文件内容:#include延时VoiddelayOvolatileinti-0某100000;while(i一);intmain()inti;LedConfigO;跑马灯while(l)for(i=
7、0;i6;i+)iLedOn(i);delay();南京邮电大学计算机学院嵌入式系统与开发实验报告)for(i=0;i6;i+)iLedOff(i);delay();delay();return;步骤2:编译编译步骤为:打开IinU某终端,输入Cd命令进入以上各程序文件所在目录,输入make命令进行编译。步骤3:加载到内存中运行步骤为:将实验板用microub数据线于微机相连,安装好驱动后用相应软件加载到内存中运行。实验箱断电后再重新加电,能否再次观察到LEDl不停闪烁现象A(A.不能B.能)。步骤4:烧写裸板程序到NAND设备步骤为:将实验板上相应按钮拨到nandflah档,用步骤3中的软件进行烧写实验箱断电后再重新打开电源,能否再次观察到LEDI不停闪烁现象B(A.不能B.能)。步骤5:实验箱上共有8个LED报警灯,分别有GPMOGPM1GPM2GPM3GPM4GPM5GPQI/GPQ2控制,编写代码完成8个LED灯流水效果(即先逐一点亮然后逐一熄灭,依次循环)。5.4参照相关参考样例,将5.3实验嵌入式看门狗驱动代码,完成硬件看门功能