ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:547.45KB ,
资源ID:6755384      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6755384.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验1基于ARM核的嵌入式开发环境的使用.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验1基于ARM核的嵌入式开发环境的使用.docx

1、实验1基于ARM核的嵌入式开发环境的使用实验1基于ARM核的嵌入式开发环境的使用一、实验目的熟悉ADS1.2开发环境,学会ARM仿真器的使用。使用ADS编译、下载、调试并跟踪一段已有的程序,了解嵌入式开发的基本思想和过程。二、实验内容本次实验使用ADS集成开发环境。新建一个简单的工程文件,并编译这个工程文件。学习ARM仿真器的使用和开发环境的设置。下载已经编译好的文件到嵌入式控制器中运行。学会在程序中设置断点,观察系统内存和变量,为调试应用程序打下基础。三、预备知识C语言的基础知识、程序调试的基础知识和方法。四、实验设备及工具(包括软件调试工具)硬件:ARM嵌入式开发平台、PC机Pentium

2、100以上、用于ARM920T的JTAG仿真器、串口线。软件:PC机操作系统Win2000或WinXP、ARM ADS1.2集成开发环境、仿真器驱动程序、超级终端通讯程序。五、实验步骤1、建立工程(1)运行ADS1.2集成开发环境(CodeWarrior for ARM Developer Suite)。选择FileNew菜单,在对话框中选择Project,如图1B-1所示,新建一个工程文件。图中示例的工程名为Exp6.mcp。点set按钮可为该工程选择路径如图2-1所示,选中CreatFolder选项后将以图1-1中的ProjectName或图1-2中的文件名为名创建目录,这样可以将所有与该

3、工程相关的文件放到该工程目录下,便于管理工程。在图1-1中工程模板列表中的2410 ARM Executable Image是专为本嵌入式开发板设置的工程模板,后文有具体说明。在此也可选择ARM Executable Image通用模板。 图1-1 新建工程 图 1-2 保存工程(2)在新建的工程中,如图1-3所示,选择Debug版本,使用Edit | Debug Settings菜单对Debug版本进行参数设置。 图 1-3 选择版本 (3)在Debug Settings对话框中选择Target Settings项,如图1-4所示。在Post-linker一栏中选择ARM fromELF。

4、图1-4 Target Settings(4)在Debug Settings对话框中选择ARM Linker项,如图1-5。在Output选项卡的Simple image框中设置连接的Read-Only(只读)和Read-Write(读写)地址。地址0x30008000是开发板上SDRAM的真实地址,是由系统的硬件决定的;0x30200000指的是系统可读写的内存地址。也就是说,在0x300080000x30200000之间是只读区域,存放程序的代码段,在0x30200000开始是程序的数据段。 图1-5 设置连接地址范围图1-5所示的设置只是一种简单设置,如果程序需要用到标准C库函数的话需要

5、按图1-6进行连接地址的设置。标准C中如果使用malloc及其相关的函数,需要使用系统的堆(Heap)空间,可以通过scatter文件来描述系统HEAP段的位置。针对2410-S开发板,把程序的入口定位在0x30008000,并定义scatter文件为scat_ram.scf。在图2-6中选择LinkType为Scattered, 输入scatter文件名scat_ram.scf;然后切换到Options选项卡在Image Entry Point 框中输入0x30008000。也可以在图2-6的Command Line框中直接输入-entry 0x30008000 -scatter scat_

6、ram.scf进行上述设置。 图1-6 通过scatter文件设置连接地址提示:1)程序移植到ADS后,程序最开始首先执行用汇编写的初始化代码包括中断向量和堆栈的初始化。在该段代码中使用IMPORT _main ;注意main前面是两个下划线B _main进行系统内部的标准C函数初始化,然后调用用户在C中定义的main()函数(注意:两个main都是小写),并且在嵌入式应用中用户C的main函数中不能有参数(int main(void))。2)不能有系统定义的软中断,在汇编中可以使用IMPORT _use_no_semihosting_swi 来检测,在C中使用#pragma import(_

7、use_no_semihosting_swi) / ensure no functions that use semihosting3)scatter文件内容如下,创建了一个RAM_LOAD的程序和数据的装载区域,起始地址0x30008000。RAM_LOAD 0x30008000 RAM_EXEC 0 startup.o (init, +First) * (+RO) L0PAGETABLE 0x30200000 UNINIT ;about 2MByte offset SDRAM pagetable.o (+ZI) STACKS +0x100000 UNINIT ;64KByte under

8、L0 pagetable stack.o (+ZI) RAM +0 * (+RW,+ZI) HEAP +0 UNINIT heap.o (+ZI) EXCEPTION_EXEC 0 OVERLAY ;exception region exception.o (+RO) 4)定义retarget.c函数,重新定位标准C库中stdio的一些相关函数。主要有:struct _FILE int handle; /* Add whatever you need here */;FILE _stdout; /文件的定义int fputc(int ch, FILE *f) /fputc函数int ferro

9、r(FILE *f) /ferror函数void _sys_exit(int return_code) /系统退出函数int _raise(int signal, int argument)_value_in_regs struct _initial_stackheap _user_initial_stackheap(unsigned R0, unsigned SP, unsigned R2, unsigned SL)/用户的堆空间和栈空间函数具体定义,可以参考init/retarget.c(5)在第(4)步中如果不选择简单的连接地址设置,则需按图1-7所示设置C编译器。在Debug Sett

10、ings对话框中选择ARM C Compiler项,在ATPCS选项卡中选择ARM/Thump interwork,或者在命令行中添加-apcs /interwork。 图1-7 设置ARM C Compiler(6)在第四步中如果选择简单的地址连接设置,在Debug Settings对话框中选择ARM Linker项,如图1-8。在Layout选项卡的Place at beginning of image框中设置程序的入口模块。指定在生成的代码中,程序是从startup.s开始运行的。Object 设为startup.o,section设为init。图 1-8 设置入口模块(7)在Debug

11、 Settings对话框中选择ARM fromELF项,如图1-9。在Output file name框中设置输出文件名为system.bin,这就是要下载到开发板的嵌入式应用程序文件。 图1-9 设置输出文件名(8)回到如图1-10所示的工程窗口中,选择Release版本,使用Edit | Release Settings菜单对Release版本进行参数设置。(9)参照第(3)、(4)、(5)、(6)、(7)步在Release Settings对话框中设置Release版本的Post-linker、连接地址范围、入口模块和输出文件。(10)回到如图1-3所示的工程窗口中,选择Targets选

12、项卡,如图1-10所示。选中DebugRel版本,按Del键将其删除。DebugRel子树是一个折衷版本,通常用不到,所以在这里删除。图 1-10 删除DebugRel版本(11)设置完成后,可以将该新建的空工程文件作为模板保存以便以后使用。将工程文件名改为2410 ARM Executable.mcp。然后在ADS1.2软件安装目录下的Stationery目录下新建名为2410 ARM Executable Image的模板目录,再将刚设置完的2410 ARM Executable.mcp工程模板文件存放到该目录下即可。这样以后新建工程的时候如图2-1所示就能看到以2410 ARM Exec

13、utable Image为名字的模板了。提示:1)建议用户直接将光盘Template/ADS下的2410 ARM Executable Image子目录直接拷贝到ADS1.2安装目录下的Stationery目录中,这样也能在图1B-1所示的新建工程对话框中看到这个模板,其中具有已经设置好的针对本开发板的参数。注意ARM Linker Linktype设置为Scattered,请参阅第(4)步内容。2)如果用户原来已安装了ARM SDT软件的话,再安装ADS1.2后可能导致ARM SDT不能正常使用,需要用户更改系统环境变量:ARMINC设置为%ARMSDTPATH%INCLUDE,ARMLIB

14、设置为 %ARMSDTPATH%LIB,其中%ARMSDTPATH%指ARM SDT的安装目录。(12)新建工程后,可以执行菜单Project | Add Files把和工程相关的所有文件即除inti的所有文件加入到工程中。ADS1.2不能自动按文件类别对这些文件进行分类,需要的话用户可以执行菜单Project | Create Group创建文件组,然后分别将不同类的文件加入到不同的组,以方便管理。如图2-11所示。更为简单的办法是,在新建工程时ADS创建了和工程同名的目录,在该目录下按类别创建子目录并存放工程文件。选中所有目录拖动到任务栏上的ADS任务条上,不要松开鼠标当ADS窗口恢复后再

15、拖动到工程文件窗口,松开鼠标。这样ADS将以子目录名建立同名文件组并以此对文件分类。 图 1-11 加入工程文件(13)编译并双击图1-11中的Main.c打开该文件,可以查看Main()函数的内容,这时也可运行程序。图1-11的例程是ARM的串口实验。读者可以查看其他源文件的内容以对系统运行有所了解。可以发现ADS的文本编辑器已经有了很大的改善,文本按语法分颜色显示,读者可以根据喜好在Edit菜单下的Preferences窗口中进行设置。并可以很好的支持中文注释。超级终端设置及映象文件下载方法一、超级终端设置1、运行Windows系统下的超级终端(HyperTerminal)应用程序,新建一

16、个通信终端。如果要求输入区号、电话号码等信息请随意输入,出现如图1-12所示对话框时,为所建超级终端取名为arm,可以为其选一个图标。单击“确定”按钮。图1-12 创建超级终端2、在接下来的对话框中选择ARM开发平台实际连接的PC机串口(如COM1),按确定后出现如图1-13所示的属性对话框,设置通信的格式和协议。这里波特率为115200,数据位8,无奇偶校验,停止位1,无数据流控制。按确定完成设置。图1-13 设置串行口3、完成新建超级终端的设置以后,可以选择超级终端文件菜单中的保存,将当前设置保存为一个特定超级终端到桌面上,以备后用。用串口线将PC机串口和平台UART0正确连接后,就可以在

17、超级终端上看到程序输出的信息了,比如本实验的“Hello world!”。二、映象文件下载将开发板重新启动同时按下键盘中任意键,这时在超级终端将会看到下面图1-14的提示,在vivi后键入load flash ucos x然后回车。图1-14 超级终端这时将会进入图1-15的界面,然后打开超级终端上方的“传送”菜单并选择发送文件,如图1-16所示,点击浏览按键,查找并进入到编译生成的映象文件夹下,打开system.bin.然后在发送文件对话框中的协议栏选择Xmodem,最后选择发送。发送结束后,映象文件即下载到flash中,然后,如图1-17键入bootucos命令再回车即可运行ucos程序。

18、 图1-15超级终端图1-16 发送文件图1-17 启动ucos系统提示:system.bin文件是系统通过BIOS引导以后,装入内存中运行的默认文件。所以上文中对工程的设置都使用该文件名作为编译最终文件。ADS环境中,该文件产生在工程路径下的ProjectName_DataDebug和Release目录下。建议将Release下的system.bin文件下载到Flash。三、数据文件下载ucos系统中用到的文件(图片、文本文件等)都是通过启动一个ucos系统的应用程序来下载文件到指定目录的,具体方法如下,以列表框的控件的使用实验为例:1、先打开超级终端,超级终端的设置如前所述。2、运行列表框

19、的控件的使用实验,运行方法a:将列表框的控件的使用实验的映象文件下载到flash中。方法b:用仿真器调试的方式运行列表框的控件的使用实验。3、当列表框的控件的使用实验运行起来以后,在超级终端键入回车键,此时如图118图1184、新建ucos目录,命令是mkdir ucos回车,然后在sys提示符下键入ls,若新建目录成功可看见此文件名,然后进入ucos目录下,在sys提示符下键入cd ucos回车,进入ucos后如图119图1195、将字库u12x12和u16x16下载到ucos目录下,下载命令dl u12x12.fnt -d回车,然后选择超级终端中的传送菜单下的发送文件,如图120,图120

20、在图220中点击浏览,选择要下载的字库,协议选择Xmodem然后点击发送。重复同样的操作再将字库u16x16下载到ucos目录下。注意命令形式dl u16x16.fnt -d回车。6、在ucos目录下键入命令mkdir fj新建fj目录,然后在此目录下下载图片、文本文件test和sys.dat文件。下载方法和下载字库相同,下载图片的命令形式如:dl *.bmp -d下载文本文件的命令形式如:dl test.txt -t,下载sys文件的命令形式如:dl sys.dat -d注意:其他还有删除命令rm或rmdir,改名命令mv 旧文件名 新文件名。下载文本文件用参数-t,下载其他数据文件用参数-d。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1