精品精品00嵌入式实验报告.docx
- 文档编号:1239766
- 上传时间:2022-10-19
- 格式:DOCX
- 页数:14
- 大小:745.91KB
精品精品00嵌入式实验报告.docx
《精品精品00嵌入式实验报告.docx》由会员分享,可在线阅读,更多相关《精品精品00嵌入式实验报告.docx(14页珍藏版)》请在冰豆网上搜索。
精品精品00嵌入式实验报告
《嵌入式系统》实验报告
学生姓名:
专业班级:
08级计算机科学与技术二班
指导教师:
完成时间:
2011年05月31日
湖南科技大学计算机科学与工程学院
实验一ARMSDT2.5开发环境简介和配置
一、实验目的
熟悉ARMSDT2.5开发环境,学会ARM并行口仿真器的使用。
使用ARMSDT2.5编译、下载、调试并跟踪一段已有的程序。
了解嵌入式开发的基本思想和过程。
二、实验内容
本次实验配置ARMSDT2.5集成开发环境。
新建一个简单的工程文件,并编译这个工程文件。
学习ARM并行口仿真器的使用和开发环境的设置。
下载已经编译好的文件到嵌入式控制器中运行。
学会在程序中设置断点,观察系统内存和变量,为调试应用程序打下基础。
三、预备知识
C语言的基础知识、程序调试的基础知识和方法。
四、实验设备及工具(包括软件调试工具)
硬件:
ARM嵌入式开发平台、JTAG仿真器、PC机Pentium100以上、串口线。
软件:
WinXP、ARMSDT2.5集成开发环境、仿真器驱动程序、超级终端通讯程序。
五、实验步骤
1、运行ARMSDT2.5集成开发环境(ARMProjectManager).选择File|New菜单,在对话框中选择Project,并新建一个工程文件(work1.apj).
2、在新建的工程中,如下图所示,选中工程树的“根部”。
使用菜单Project|ToolConfigurationforwork1.apj|
3、因为开发板上的嵌入式处理器ARM7TDMI没有浮点处理器,所以在弹出的对话框中设置FloatingPointProcessor为none。
注意,要保持其他的设置不变。
4、选中工程树的“根部”,通过菜单Project|ToolConfigurationforwork1.apj|asmlink|Set,对整个工程的连接方式进行设置。
5、在弹出的对话框中,选中EntryBase选项卡,设置连接的Read-Only(只读)和Read-Write(读写)地址。
地址0xC000000是开发板上SDRAM的真实地址,是由系统的硬件决定的;0xC600000指的是系统可读写的内存的地址。
即,在0xC000000-0xC5fffff之间是只读区域,用于存放程序的代码段,在0xC600000开始是程序的数据段。
6、在LinkerConfiguration的ImageLayout选项卡中,设置程序的入口模块,指定程序从44binit.s开始运行的。
7、选中工程树中的DebugRel子树Release子树,用Delete键删除。
8、使用编译器输出bios.bin文件:
(1)选择工程树的“根部”,选择Project->EditVariablesforwork1.apj…在弹出的窗口中,将变量build_target的值<$projectname.axf>改为<$projectme.bin>,单击ok保存并退出。
(2)选择Project->EditProjectTemplate…在弹出的窗口中,单击EditDetails…将标题改为Rom。
单击New…新加一个CreateRome构建过程。
(3)选择Project->EditVariablesforwork1.apj…在Name和Value项中填写,点击OK;在下图窗口中,将$$Projectname的值改为bios。
9、至此,工程文件设置完毕。
为了下次使用方便,所以保存此工程文件,文件名为work1.apj。
如下图所示:
下面在之前工作的基础上,进一步进行实验:
1、导入所需文件,搭建正确的运行环境,在工程中加入工程源文件,如下图所示:
2、选中工程中的Debug子树,通过Project|Buildwork1.apj“Debug”菜单,编译整个工程。
3、把ARM的JTAG仿真器连接到PC机地并行口和开发板上,打开开发板的电源,从老师所给的已有材料中找到jtag文件夹,按照“STD251在线调试方法.pdf”中的要求安装仿真器的驱动程序,然后再开始->运行中输入cmd命令,在弹出窗口中输入cdc:
\jtag,和winntjtag启动仿真器连接程序。
过程截图依次如下所示:
4、运行Project|Debugwork1.apj“Debug”菜单,启动ARMDebugger软件调试程序。
在ARMDebugger中,通过Options|ConfigureDebugger菜单设置仿真器的TargetEnvironment为Remote_A。
5、单击Configure按钮,设置仿真器,添加本机的IP地址。
6、出现如下提示以后,先按开发板的复位键按钮,然后点击YES,ARMDebuger开始通过仿真器装载程序。
7、装载完毕后,通过Option|Addsearchpath设置工程文件路径,然后点击View|Sourcefiles,会看到工程中文件信息,如下图所示:
8、至此,基本上完成了ARMSDT2.5开发环境的配置工作,为以后的实验做好了充分的准备。
六、实验总结
环境配置需要足够的细致,稍微又不留意就会导致下一步的配置无法继续。
就如下图所示,直到编译的时候错误才呈现。
为了排除这个错误,试了很多方法,即使重启集成开发板都没能解决问题,我们不得不回过头去反复检查各个步骤,确保正确无误,从而浪费了很多时间和精力。
最终发现计算机的IP地址不是理所当然的192.168.0.48,而是机房中计算机早已配置好的固定IP地址。
通过这个基本实验,不仅为接下来的实验打好了基础,而且让我们进一步理解了嵌入式系统的开发、编译的一般过程。
实验二 开发基本的嵌入式应用程序
一、实验目的
在实验一的基础上,学会使用ppcboot、tftp和超级终端进行嵌入式应用开发。
二、实验内容
使用VC编辑器编写一段程序,在串口显示“Helloworld”等文本。
利用ppcboot与tftp将程序下载到ARM板。
三、预备知识
ARMSDT2.5集成开发环境、C语言的基础知识、程序调试的基础知识和方法。
四、实验设备及工具(包括软件调试工具)
硬件:
ARM嵌入式开发平台、JTAG仿真器、PC机Pentium100以上、串口线。
软件:
VC6.0 WinXP、ARMSDT2.5集成开发环境、仿真器驱动程序、超级终端通讯程序。
五、实验步骤
1、在ARMSDT2.5中,打开实验一中创建好的工程work1。
2、启动VC6.0,打开main.c。
重点分析Main函数中的代码,可以了解到系统的启动过程。
Voidmain(void)
{
Bsp_Init();
While
(1)
{
Uart_Printf(“HelloWorld!
\n”);
Delay(10000);
}
}
可以知道,系统从bsp\cpu\44binit.s开始执行,进行简单的初始化后即进入main()函数,Bsp_Init()用于初始化ARM板,然后进行while
(1)死循环。
3、编译并下载程序,调试程序。
开启tftp服务程序,设置bios.bin的路径,如下图:
4、运行windows系统下的超级终端(HyperTerminal)应用程序,新建一个终端通讯,取名为arm。
5、选择终端的连接的串口,设置通讯的格式和协议。
6、设置完成超级终端后,就可以和嵌入式开发板中固化的ppcboot建立通讯。
按嵌入式开发板系统的复位按钮,使系统通过BIOS引导,通过PC机键盘可以和嵌入式开发板通讯,按回车键,此时超级终端等待命令输入。
输入tftpc000000,终端显示下载完毕,再输入goc000000开始程序运行。
出现乱码,不能正常显示
显示的不是所要想到的结果
可以看到,初步试验存在错误,不能正常显示“HelloWorld!
”。
经过分析,发现文件编译有错误,归根结底是运行环境没有配置好,重新试了几次,最终达到了如下效果:
六、实验总结
这个试验的编程环节不算太难,关键还在环境配置和搭建。
开始不懂为什么要用超级终端,而且让它怎么显示内容等等。
通过请教会的同学,我们才慢慢了解到“交叉编译”的实质内容,并在自己的机子上,通过实战实现了相关内容。
实验三ARM的串行口实验
一、实验目的
掌握ARM的串行口工作原理。
学习编程实现ARM的UART通讯。
掌握CPU利用串口通讯的方法。
二、实验内容
学习串行通讯原理,了解串行通讯控制器,阅读ARM芯片文档,掌握ARM的UART相关
寄存器的功能,熟悉ARM系统硬件的UART相关接口。
编程实现ARM和计算机实现串行通讯:
ARM监视串行口,将接收到的字符再发送给串口(计算机与开发平台是通过超级终端通讯的),即按PC键盘通过超级终端发送数据,开发平台将接收到的数据再返送给PC,在超级终端上显示。
三、预备知识
用ARMSDT2.5集成开发环境,编写和调试程序的基本过程。
ARM应用程序的框架结构。
了解串行总线。
四、实验设备及工具(包括软件调试工具)
硬件:
ARM嵌入式开发平台、用于ARM7TDMI的JTAG仿真器、PC机Pentium100以上、串口线。
软件:
WinXP、ARMSDT2.51或ADS1.2集成开发环境、仿真器驱动程序、超级终端通讯程序。
五、实验原理及说明
1.异步串行I/O异步串行方式是将传输数据的每个字符一位接一位(例如先低位、后高位)地传送。
数据的各不同位可以分时使用同一传输通道,因此串行I/O可以减少信号连线,最少用一对线即可进行。
接收方对于同一根线上一连串的数字信号,首先要分割成位,再按位组成字符。
为了恢复发送的信息,双方必须协调工作。
在微型计算机中大量使用异步串I/O方式,双方使用各自的时钟信号,而且允许时钟频率有一定误差,因此实现较容易。
但是由于每个字符都要独立确定起始和结束(即每个字符都要重新同步),字符和字符间还可能有长度不定的空闲时间,因此效率较低。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 00 嵌入式 实验 报告