嵌入式实验指导书.doc

嵌入式实验指导书.doc

ID:51019401

大小:140.35 KB

页数:20页

时间:2020-03-17

嵌入式实验指导书.doc_第1页
嵌入式实验指导书.doc_第2页
嵌入式实验指导书.doc_第3页
嵌入式实验指导书.doc_第4页
嵌入式实验指导书.doc_第5页
资源描述:

《嵌入式实验指导书.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、嵌入式实验指导书  1.1.2实验内容1.观看ADS安装视频文件“ADS安装视频文件.avi”;2.观看实验一视频文件“实验一.avi”;3.编写程序实现如下目的从汇编语言切换到C语言代码,然后在C代码中分别使用内嵌汇编语言和汇编子函数的方法实现同一功能(加函数功能)。  1.1.3预备知识1.ARM汇编语言基础知识;2.C语言基础知识;3.程序调试的基础知识和方法。  1.1.4实验设备1.硬件JXARM9-2410教学实验箱、PC机;2.软件PC机操作系统Windows98(  2000、XP)+ADTIDE集成开发环境+AD

2、S1.2集成开发环境。  1.1.5实验原理1.ADS1.2的安装  1、运行ADS光盘中的setup.exe程序,出现如下图所示界面,并点击“Next”按钮。  2、出现下图所示对话框,电机“Yes”按钮。  3、出现下图所示对话框,在“DestinationFolder”中电机“Browse”按钮选择ADS1.2的安装路径,此处选择缺省安装路径,然后选择“Next”按钮。  4、如下图所示,选择“Typical”,然后点击“Next”按钮。  5、如下图所示选择“Next”按钮。  6、如下图所示选择“Next”按钮。  7、

3、如下图所示选择“Next”按钮。  8、将开始安装,如下图所示。  9、程序安装完成之后将提示如下对话框。  10、点击“下一步”将提示下图所示对话框。  11、在“LicenseFileToBeInstalled”中点击“Browse”按钮选择您的License文件位置,然后点击“下一步”。  12、点击“完成”。  13、点击“Finish”。  14、至此,安装完成,如下图所示,从开始菜单中选择运行ADS。  15、ADS运行界面如下图所示。  2.汇编语言和C语言混合编程在ARM编程中,一个程序往往采用汇编语言和C语言混合

4、编程。  本实验的目的就是为了讲解ARM中C语言和汇编语言混合编程的方法。  1)汇编语言切换到C语言的方法C语言中定义的函数名在汇编语言中可以作为标号使用,因此,在汇编语言中可以使用程序分支指令直接转移到C语言中定义的标号(函数)中。  下面代码实现从汇编语言跳转到C语言的Main函数中汇编代码ENTRY;markthefirstinstructiontocall_startMOVsp,#0x33000000;/*建立栈指针(r13)*/BMain;/*跳转到C语言程序*/C代码voidMain(){}在上面的代码中,ENTRY

5、指定程序的入口点为其后的第一条有效指令,此处为MOV指令,该MOV指令设置栈指针r13,在正确调用C语言之前必须正确设置栈指针到系统的ram中,否则调用C语言函数之后肯能会产生异常。  接下来调用Main函数,直接进入C语言调用。  2)汇编语言中函数的实现ARM编程中不同语言的程序只要遵守ATPCS规则就可实现不同语言间的相互调用。  程序间的相互调用最主要的是解决参数传递问题。  应用程序之间使用中间寄存器及数据栈来传递参数,其中,第1~4个参数使用r0~r3传递,多于4个参数则使用数据栈进行传递。  输出参数由r0传递。  

6、下面的代码就是用汇编语言写的一个简单函数。  asse_addADDr0,r0,r1/*r0=r0+r1*/MOVpc,lr/*函数返回*/它相当于如下声明的C语言函数intasse_add(intx,inty);在汇编语言中可以使用BLasse_add指令调用该函数。  输入时,r0为x参数,r1为y参数,输出r0,该函数实现功能很简单,返回参数x与y的和。  3)C语言调用汇编文件中的函数以上面的asse_add函数为例,在C语言中声明该函数在其他文件中实现externintasse_add(intx,inty);然后就可以象

7、调用C函数一样调用该函数x=asse_add(10,20);4)C语言中内嵌汇编语言GCC支持大部分基本的内嵌汇编语言。  如下示例为C语言中采用内嵌汇编语言的方式实现asse_add相同的功能。  intembed_add(intx,inty){inttmp;__asm{addtmp,x,y};returntmp;}3.建立一个新的工程打开ADS1.2,点击“File->New菜单”,弹出New对话框,如下图所示设置。  在“Project”页中的左边一栏选择“ARMExecutableImage”,在“ProjectName”

8、中输入工程名“leddemo”,在Location中选择工程保存路径,此处为“D:workexamples_adsleddemo”,请注意,输入工程名后,在Location路径的后面将自动将工程名最为一个目录追加到Location后面。  

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。