嵌入式系统结构实验报告_第1页
嵌入式系统结构实验报告_第2页
嵌入式系统结构实验报告_第3页
嵌入式系统结构实验报告_第4页
嵌入式系统结构实验报告_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE8《嵌入式系统结构》课程实验报告学期:2012-2013学年第二学期专业:计算机科学与技术专业班级:姓名:学号:

实验一ADS1.2集成开发环境练习日期教师签名实验地点电子信息实验楼707实验成绩一、实验目的1.了解ADS1.2集成开发环境的使用方法。二、实验设备1.硬件:PC机 1台。2.软件:1)Windows98/2000/XP操作系统;2)ADS1.2集成开发环境。三、实验内容1.建立一个新的工程;2.建立一个汇编源文件,并添加到工程中;3.设置文本编辑器支持中文;4.设置编译链接控制选项;5.编译链接工程;6.调试工程。四、实验步骤(1)在D:\新建一个目录,目录名为experiment。(2)启动ADS1.2IDE集成开发环境,选择【File】->【New…】,使用ARMExecutableImage工程模板建立一个工程,名称为ADS,目录为D:\experiment。(3)选择【File】->【New…】建立一个新的文件TEST1.S,设置直接添加到项目中。输入如程序代码,并保存,此时在工程窗口中可以看到TEST1.S文件。(4)选择【Edit】->【Perferences…】,在Font选项设置字体是Fixedsys,Script是CHINESE_GB2312。(5)选择【Edit】->【DebugRelSettings…】,在DebugRelSettings对话框的左边选择ARMLinker项,设置链接地址。(6)选择【Project】->【Make】,或者按下快捷键F7,将编译链接整个工程。(7)选择【Project】->【Debug】,或者按下快捷键F5。IDE环境就会启动AXD调试软件,接着可以执行单步、全速运行调试。五、实验结果及分析

实验二ARM汇编指令实验实验时间教师签名实验地点电子信息实验楼707实验成绩一、实验目的1.掌握ARM数据处理指令的使用方法;2.了解ARM指令灵活的第2个操作数。二、实验设备1.硬件:PC机 1台。2.软件:1)Windows98/2000/XP操作系统;2)ADS1.2集成开发环境。三、实验内容1.使用MOV和MVN指令访问ARM通用寄存器;2.用ADD、SUB、AND、ORR、CMP、TST等指令完成数据加减运算及逻辑运算。四、实验步骤(1)启动ADS1.2,使用ARMExecutableImage工程模板建立一个工程Instruction2。(2)建立汇编源文件TEST3.S,编写实验程序,然后添加到工程中。(3)设置工程链接地址ROBase为0x40000000,RWBase为0x40003000。设置调试入口地址Imageentrypoint为0x40000000。(4)编译链接工程,选择【Project】->【Debug】,启动AXD进行软件仿真调试。(5)打开寄存器窗口(ProcessorRegisters),选择Current项监视各寄存器的值。五、实验结果及分析实验三C语言程序实验实验时间教师签名实验地点电子信息实验楼707实验成绩一、实验目的1.通过实验了解使用ADS1.2编写C语言程序,并进行调试。二、实验设备1.硬件:PC机 1台。2.软件:1)Windows98/2000/XP操作系统;2)ADS1.2集成开发环境。三、实验内容1.编写一个汇编程序文件Startup.S和一个C程序文件Test.c。汇编程序的功能是初始化堆栈指针和初始化C程序的运行环境,然后调跳转到C程序运行,这就是一个简单的启动程序。C程序使用加法运算来计算1+2+3+...+(N-1)+N的值(N>0)。四、实验步骤(1)启动ADS1.2,使用ARMExecutableImage工程模板建立一个工程ProgramC。(2)建立源文件Startup.S和Test.c,编写实验程序,然后添加到工程中。(3)设置工程链接地址ROBase为0x40000000,RWBase为0x40003000。设置调试入口地址Imageentrypoint为0x40000000。(4)设置位于开始位置的起始代码段为Startup.o的代码段。(5)编译链接工程,选择【Project】->【Debug】,启动AXD进行软件仿真调试。(6)在Startup.S的跳转到C程序入口的代码处设置断点,然后全速动行程序。(7)程序在断点处停止。单步运行程序,判断程序是否跳转到C程序中运行。五、实验结果及分析实验四μC/OS-II基础实验-图形液晶控制实验实验时间教师签名实验地点电子信息实验楼707实验成绩一、实验目的1.掌握图形液晶的绘点函数的使用。2.掌握μC/OS-II操作系统的事件标志组的概念。二、实验设备1.硬件:1)PC机1台;2)MagicARM2410教学实验开发平台1台。2.软件:1)Windows98/2000/XP操作系统;2)ADS1.2集成开发环境。三、实验内容实验通过信号量控制2个任务共享串口0打印字符串。为了使每个任务的字符串信息(句子)不被打断,因此必须引入互斥信号量的概念,即每个任务输出时必须独占串口0,直到完整输出字符串信息才释放串口0。四、实验步骤(1)为ADS1.2增加DeviceARM2410专用工程模板(若已增加过,此步省略)。(2)连接WigglerJTAG仿真器和MagicARM2410实验箱,然后安装WigglerJTAG仿真器(若已经安装过,此步省略),短接蜂鸣器跳线JP9。(3)启动ADS1.2,使用ARMExecutableImageforDeviceARM2410(uCOSII)工程模板建立一个工程LCD_uCOSII。(4)在ADS文件夹中新建arm、Arm_Pc、SOURCE文件夹。将μC/OS2.52源代码添加到SOURCE文件夹,将移植代码添加到arm文件夹,将移植的PC服务代码添加到Arm_Pc文件夹。(5)在src组中的main.c中编写主程序代码。(6)选用DebugRel生成目标,然后编译链接工程。(7)将MagicARM2410实验箱上的蜂鸣器跳线JP9短接,将启动方式选择跳线JP8短接,然后按RST键复位系统。(8)选择【Project】->【Debug】,启动AXD进行JTAG仿真调试。(9)全速运行程序,程序将会在main.c的主函数中停止(因为main函数起始处默认设置有断点)。(10)单击ContextVariable图标按钮(或者选择【ProcessorViews】->【Variables】)打开变量观察窗口,通过此窗口可以观察局部变量和全局变量。(11)可以单步运行程序,可以设置/取消断点,或者全速运行程序,停止程序运行,观察变量的值,按下KEY1,观察LCD是否出现刷屏。五、实验结果及分析

实验二ARM汇编指令实验五、实验结果及分析指令指令分析;使用MOV、ADD指令实现:R8=R3=X+YSTART MOV R0,#X ;R0<=X,X的值必须是8位图数据MOV R1,#Y ;R1<=Y,Y的值必须是8位图数据ADD R3,R0,R1 ;即是R3=X+YMOV R8,R3 ;R8<=R3;使用MVN、SUB指令实现:R5=0x5FFFFFF8-R8*8MVN R0,#0xA0000007;0xA0000007的反码为0x5FFFFFF8SUBR5,R0,R8,LSL#3 ;R8左移3位,结果即是R8*8 ;使用CMP指令判断(5*Y/2)>(2*X)吗?若大于则R5=R5&0xFFFF0000,否则R5=R5|0x000000FFMOV R0,#YADD R0,R0,R0,LSL#2;计算R0=Y+4*Y=5*YMOV R0,R0,LSR#1 ;计算R0=5*Y/2MOV R1,#X MOV R1,R1,LSL#1 ;计算R1=2*XCMP R0,R1 ;比较R0和R1,即(5*Y/2)和(2*X)进行比较LDRHIR2,=0xFFFF0000 ;若(5*Y/2)>(2*X),则R2<=0xFFFF0000ANDHI R5,R5,R2 ;若(5*Y/2)>(2*X),则R5=R5&R2ORRLSR5,R5,#0x000000FF;若(5*Y/2)≤(2*X),则R5=R5|0x000000FF ;使用TST指令测试R5的bit23是否为1,若是则将bit6位清零(使用BIC指令)TST R5,#BIT23BICNE R5,R5,#0x00000040实验三C语

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论