S3C44B0X开发板软件使用说明.doc

上传人:da****u 文档编号:1194954 上传时间:2018-12-18 格式:DOC 页数:16 大小:1,018KB
下载 相关 举报
S3C44B0X开发板软件使用说明.doc_第1页
第1页 / 共16页
S3C44B0X开发板软件使用说明.doc_第2页
第2页 / 共16页
S3C44B0X开发板软件使用说明.doc_第3页
第3页 / 共16页
S3C44B0X开发板软件使用说明.doc_第4页
第4页 / 共16页
S3C44B0X开发板软件使用说明.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、ARM 开发软件使用教程作者:龚俊Email: QQ:63505043创建日期:2003 年 1 月 21 日修改日期:2003 年 1 月 24 日版本:1.2说明:本文是根据我学习 ARM 开发以来的一些经验总结,以自己设计的 S3C44B0X 板为例,给出入门上手的最基础知识。有些东西只是个人的主观认为,不一定准确,算作抛砖引玉吧,欢迎大家指正!Emai 或 QQ 联系,希望广交各位朋友,共同提高!一、 安装 SDT2.51点击 SDT2.51 安装程序中的 setup.exe,出现如下安装界面:一路点击 next 继续,一般默认设置就行了,不需作任何修改了,最后完成安装,我是安装在 C

2、:ARM251 下面;二、 启动 SDT2.51安装完毕,点击程序组中的 ARM Project Manager 启动主程序:之后出现主程序界面如下:三、 利用模板创建自己的项目很多初学者会遇到这样一个问题:自己写了程序,编译也通过了,结果怎么也生成不了二进制格式的目标代码(*.bin ) 。如何生成目标代码需要参考SDT2.51安装文件夹pdf中的userguide.pdf,在它的392页有详细说明,教你怎么Converting ARM linker ELF output to binary ROM formats。为了减少大家的麻烦,我提供一个模板Project,你打开我这个 Projec

3、t,然后点击菜单File下的 Save As Template:然后在弹出的窗口中随意选择一个目录下,新建一个自己的文件夹,随便取一个Project名称,确认即可在主程序上出现新Project界面。现在可以在刚才建立的文件夹下面编辑代码,包括汇编代码和C程序代码。注意汇编代码必不可少,它是用来进行系统初始化和C程序入口的,这些范例代码可以在三星网站去下载,网上也有很多相关资源,如果找不到也可以找我要。四、 添加自己的源码点击菜单 Project 下的 Add File To Project,在弹出的窗口中,浏览自己的 Project 文件夹下面的程序代码,将代码添加到创建的项目。这时依次点击

4、rom、debug、Sources 前面的十字架,就会看到自己刚才添加成功的代码,双击任何一个代码文件就可以打开它进行编辑:五、 修改 SDT2.51 设置以生成 Flash 代码过来刚才一关,还有一只拦路虎,很多朋友是在这里没设置对,导致屡屡失败,信心大失!SDT2.51 代码生成是有一个代码定位的,以我设计的 S3C44B0X 板为例,启动 Flash片选引脚是接在 nGCS0 的,它的地址空间是从 0X00000000 开始的。如果你要将代码烧写到这片 Flash,那么必须正确设置 SDT2.51,使它将目标代码定位在 0X00000000,设置过程如下:先单击一下主程序窗口 ROM 下

5、的 Debug,然后点击如下菜单中的 set:弹出如下窗口:点击 Entry And Base,在 Readonly 下面的框里面输入 0X00000000,确认即可:六、 编译项目生成初始化目标代码(放在 Flash 中)现在选择菜单 build 或者点击快捷图标就可以编译代码,点击 Force build 之后就生成了二进制目标代码(*.bin) ,这可以在项目文件夹下面找到。在主程序窗口下面的信息框可以看到编译的情况,包括警告和错误信息,最终代码生成的情况等等;七、 ARM 板硬件准备下面以我自己的 S3C44B0X 板为例,说明初次写目标代码到 Flash 中的准备工作。首先当然是板子

6、加电,电源指示灯亮了;内部一对一、一头公一头母的并口延长线分别连接PC 机并行口和 JTAG 下载板,JTAG 下载板通过扁平排线连接 ARM 板。这里面要注意一个复位问题,S3C44B0X 有两个复位引脚,其中 nRESET 是 CPU 复位引脚,nTRST 是 JTAG 单元复位引脚,一般的 S3C44B0X 系统都有一个跳线,用短路块将两个复位端连在一起,这样一按复位按键,两个复位引脚都复位了。而 JTAG 下载板上面也有一个跳线,这个跳线是 JTAG 单元复位引脚。在烧写 Flash 的时候,PC 机会通过 JTAG 下载板上的那个跳线来复位 ARM 板的JTAG 单元,所以应该用短路

7、块将 JTAG 下载板上的跳线短路,而 ARM 板上的跳线(连接nRESET 和 nTRST)的则不应该短路;如果你是自己设计 ARM 板,第一次烧写 Flash,那么你可以检查一下系统:首先看看CPU 的电压是否正常,主要芯片是否发烫?如果有怪味、冒烟可就要急刹车了!CPU 的IO 电压是 3.3V,内核电压是 2.5V。可以看看系统时钟输入的波形,32768 晶体的一个引脚上应该能看到 32768 的正弦波。如果是刚焊新的 Flash,那么一般 Flash 里面数据都是0Xff,用示波器可以看到数据线都是高电平,地址线上面有规则的方波信号。你一按复位按键,方波立马消失变成低电平。八、 将初

8、始化目标代码写入 Flash准备妥当,现在可以烧写代码了!网上有一个叫 Fluted.exe 的程序,使用它就可以完成 Flash 烧写。这里面针对不同的 CPU 还需要不同的 Bsd 文件,不同的 Flash 芯片需要对Fcd 文件进行相应的修改。S3C44B0X 的 BSD 文件 S3C44B0X.bsd 可以在三星公司网站找到,适用于 SST39VF160 的 fcd 文件在网上搜索得到。经过艰苦努力,我也搞定了AT49BV1614 的 Fcd 文件。特别说明:这个烧写 Flash 的程序只能在 Windows98 系统下才能运行!不支持Windows2000、WindowsNT 和 W

9、indowsXP,所有你需要切换到 Windows98 下面才能进行这项工作!对于我的板子,使用 SST39VF160,需要的 S3C44B0X.bsd、default.fcd 和 Fluted.exe,将自己的目标代码 model.bin 与上面的三个文件放在同一个目录下面,运行 Fluted.exe 就可以进行 Flash 烧写了。由于 Fluted.exe 要输入相应的配置参数,所以我干脆做了一个批处理文件 f.bat:FluteD a -f model.bin -v -s 0这样运行这个批处理文件就可以开始烧写了,烧写界面如下:这个程序首先打开 fcd 文件和 bin 文件,然后检查设

10、备 ID,如果 ID 错误的话程序会停止运行。这意味着你的硬件系统有问题,或者 JTAG 接线有错误等等。然后开始擦除FLASH 里面的数据,根据 Flash 的大小擦除时间有长有短;擦除完毕就开始对 Flash 编程,将目标代码写进去。编程完毕开始校验,如果出错会给出提示信息的,告诉你在哪个地址区域出错,写进去的数据是什么,读出来的数据又是什么,只有校验完全成功才是烧写OK!有些朋友将目标代码定位在 0X0C000000,结果烧写后校验也完全成功了,但复位之后板子却没有任何反应!这是因为写到 SDRAM 之后校验肯定也是对的,但复位之后程序是从 0X00000000 开始执行的,而不是从 0

11、X0C000000 开始的,所有板子肯定没有反应了!九、 复位运行初始化程序现在按一下复位按键,就我上面的程序而言,可以看到 LED 灯在来回闪烁。在我这个程序中,是完成系统初始化,包括禁止看门狗、禁止所有中断、初始化存储器(包括SDRAM) 、设定锁相环倍频、使能所有单元模块时钟、初始化堆栈、设置中断等等,这些都在汇编程序中完成。主程序完成 IO 端口功能、方向设定,实现一个最简单的 LED 闪烁程序。十、 修改 SDT2.51 设置以生成 SDRAM 代码走到这一步,你已经成功了一大半!不过还要实现硬件 Debug,才能说是完全掌握了ARM 开发的基本软件操作。一般硬件 Debug 都要在

12、 SDRAM 中运行,所以需要定位生成的目标代码在 SDRAM 地址空间。就我的板子而言,SDRAM 的片选引脚接在 nSCS0 上面,它的地址从 0X0C000000 开始,所有要把目标程序定位在这里。如前面所说步骤,先单击一下主程序窗口 ROM 下的 Debug,然后点击菜单中的 set,在弹出的窗口中选择点击 Entry And Base,在 Readonly 下面的框里面输入0X0c000000(程序空间) ,在 Readwrite 下面的框里面输入 0X0c5f0000(这是数据空间) ,确认即可:十一、 编译项目生成调试目标代码(放在 SDRAM 中)如前所述,点击菜单或者快捷图标

13、即可,这里不再重复。十二、 开启 JTAG.exe 后台运行这里面需要说一下:SDT2.51 支持软件仿真和硬件 debug,默认是软件仿真,这个很简单,大家一看就会。关键的是硬件 debug,它支持串口、并口和以太网仿真,串口和并口我不知道怎么玩。我的板子是通过并口 JTAG 进行硬件调试的,但实际上却是通过以太网的。这里面有一个转换软件JTAG.exe,它把发送到以太网的数据拦截下来,遵从 JTAG 协议,转换到并口上面,然后通过 JTAG 接口板,控制 ARM 板上面的 CPU,进行硬件 Debug。JTAG.exe 在王云飞的网页上面有下载,包括并口 JTAG 接口板的电路图,我就是照

14、他的图纸做的板子。需要说明一下:JTAG.exe 只能在 Win98 下运行,Win2000 下不行,所以如果你要进行硬件仿真的话,必须切换到 Win98 系统下面。这很不爽,哪位朋友找到能在 Win2000 下面跑的 JTAG.exe 的话,麻烦告诉我一声!当然如果只是进行程序编写、编译、软件仿真,SDT2.51 在 Win98、Win2000 和 WinXP 都没有问题的!双击 JTAG.exe,它就在后台运行了。十三、 Debug 设置使用这种方式仿真,还要进行一些设置才行。点击 Debug 菜单或者快捷图标,出现ARM Debugger 程序窗口:然后选择菜单 Options 下面的 Config Debugger:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 课件讲义

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。