Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1261263
  • 博文数量: 254
  • 博客积分: 1586
  • 博客等级: 上尉
  • 技术积分: 2295
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-15 16:38
个人简介

linux学习中

文章分类

全部博文(254)

文章存档

2016年(6)

2015年(2)

2014年(74)

2013年(93)

2012年(12)

2011年(2)

2010年(51)

2009年(14)

分类: 嵌入式

2009-10-20 14:31:48

这个软件有Windows 和 Linux两个版本。我下载了常用的Windows版本。文件大小不到8M (相比TRACE32 500多M要苗条多啊)。下载安装后(PS:需要java virtual machine的支持)在桌面上会有这几个图标:

 

其中OCD Commander就是我们想要的。 OCD Commander – Java是OCD Commander的Java版本。

 

打开OCD Commander

 

如上图,这里可以选择处理器(MIPS),调试用的接口(Wiggler), Wiggler是插在PC的并口上用的,所以需要选择并口号(LPT1)。速度我们选择最快的380KHz。途中的Multiple是选择多个CPU的。这个暂时没有试过。

 

点击OK进入主程序:

 

很简单的一个界面,提供的功能也比较简单。中间的文字说明了命令的简单规则。上面的菜单按钮是一些常用的功能。如reset,step,go,halt,regs等。最下面的是输入命令的地方。这里可以读写一些寄存器,内存等。具体可以看help里的帮助文档。

 

把板子的电源打开,Wiggler的14pin线要正确插在板子的JTAG口上。一切准备好,可以电reset按钮

 

如果板子里有程序,点击go就可以看到串口输出的信息。按halt可以暂停CPU的运行。

点cpu可以看到cpu的PC值,还有PC指向地方的值及汇编指令:

 

 

 

 

点regs可以看到32个通用寄存器的值:

 

 

在Commands菜单下有更多的命令:

 

 

比如重要的memory命令

这样我们可以更改内存或者外设寄存器的值,比如:

 

这样我们可以通过这些命令初始化一些外设寄存器,比如SDRAM控制器的寄存器,使SDRAM可以使用这样我们就可能下载程序到SDRAM然后从SDRAM运行,进而实现bootbase(相当于bootloader)的烧写。

 

还有Download命令。

 

可喜的是这个软件直接支持elf文档(这样我们就不必费心东西会download到哪片空间):

 

 

Download一个bootext的elf文档到SDRAM中 (前提是SDRAM初始化好了):

Download完后:

 

可以看到PC被自动设置到elf的起始地址。

 

接下来可以按go运行试试看了。(注这里的bootext.elf是修改过的特定elf,一般的bootext.elf会读取flash中的内容,而flash没有初始化会出现exception)

哈哈,可以正常运行了:

 

 

关于SDRAM的初始化,一个一个的去敲命令会很麻烦。还好这个软件支持script

就是这个菜单

 

我们把要执行的命令写成一个文件,后缀为.mac就可以了。规则也很简单。直接按照command里的命令写就可以了:

 

 

整个MIPS EJTAG的使用就是这样。是不是很简单。简单的硬件,简单的软件。不再需要昂贵的ICE,庞大的TRACE 32。当然功能也不是太全。但是这个已经能满足我们的要求了。

阅读(2669) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~