在一般ARM编程教学和实验环境里,一般采用 ADS加+并口转Jtag板+H-Jtag的开发环境。但是这种方法最大缺点是需要机器上有一个并口。现在无论PC还是笔记本都很难有并口,因此采用USB接口调试器就大行其道。其中Segger的JLink是比较有名和方便的调试器。

     
      ADS 1.2 ,可以如下链接下载
      硬件可以参考这个
一.J-Link的安装
      首先要安装驱动。可从官方网站下载http://www.segger.com/cms/jlink-software.html
     
      我下载最新驱动4.14d ,http://www.segger.com/cms/admin/uploads/userfiles/file/J-Link/Setup_JLinkARM_V414d.zip (最后测试这一个版本在AXD无法使用,总是程序死掉)
     
      我最后成功是老的版本4.02d,这个版本基本上可以保证是正常使用。
     
      关于segger的老版本都集中放在这里
      我用的是4.02d这个驱动
      图形安装程序一路next即可。
   1.1 测试PC机与J-Link的联接
      驱动安装后在主菜单会有Segger->J-Link ARM 4.02d 的菜单。
      将JLink的USB接口接在PC机上(jtag那一头可先不接开发板),正常情况下,Windows会提示发现硬件并自动安装硬件。运行J-Link  GDB Server程序。会有如下界面
    
1.此时再将J-Link上的Jtag线转接到开发板,我用的是TQ2440;
2.开发板上电后不要进入操作系统(Arm-Linux或WinCE),因此它可能会与仿真软件有冲突,比较简单方法是切换到Nor
flash启动模式
,这个模式通常不会进入OS;
3.接入JLink后,LCD将不会有显示,这是正常现象。
再次运行GDB Server.正常联接会有如下提示
并且联接上开发板时,J-Link GDB 会自动执行J-Link Control Panel 界面如下。
(注意要正常用gdb,一般要手工把字节序调成Little Endian,这里一下用不上,就无所谓了)
经过这样测试表示,J-Link整体工作正常。
 
二.ADS中用J-Link调试程序

2.1 用ADS打开项目源码
在ADS上用打开测试项目,我一般用教学的LED项目。编译后,选择调试按钮进入AXD调试界面,第一次使用AXD一般会出错,可以不管错误直接按2.2,2.3步来配置即可
2.2 配置AXD interface (必须配置!)
选择AXD主菜单的Options->Configure Interface ...。
配置两项,一是General 通用页标签中,Target connection选择HALT模式
二是AXD初始化时,配置SDRAM的地址。
可以把配置命令写在一个脚本里。在AXD中设为初始化脚本。
方法,选择configure Interface -->Session File--> Run Configuration  Script.
添入SDRAM初始化脚本2440init.txt全路径(注意路径不要带中文,为防止格式错误最好用附件自带的)
 
2440init.txt内容如下

setmem 0x53000000,0x00000000,32

setmem 0x4a000008,0xffffffff,32

setmem 0x4a00001c,0x00007fff,32

setmem 0x48000000,0x2212d110,32

setmem 0x48000004,0x00000f40,32

setmem 0x48000008,0x00002e50,32

setmem 0x4800000c,0x00002e50,32

setmem 0x48000010,0x00002e50,32

setmem 0x48000014,0x00002e50,32

setmem 0x48000018,0x00002e50,32

setmem 0x4800001c,0x00018005,32

setmem 0x48000020,0x00018005,32

setmem 0x48000024,0x00960542,32

setmem 0x48000028,0x00000032,32

setmem 0x4800002c,0x00000030,32

setmem  0x48000030,0x00000030,32

2.3 配置J-Link的RDI接口
在AXD调试界面。选择AXD主菜单的Options->Configure Target...。
选择sigger安装目录下的JLinkRDI.dll。这一步是让AXD调用J-Link的DLL来调试。 RDI是(Remote Debug  Interface 和简称,是ARM公司设计用于其它调试器与AXD通讯的协议
配置完后应该可以直接在J-Link调试,如果你没有相关经验,可以关掉AXD,重新执行2.1步来调试程序
2.4 AXD调用J-Link调试界面
我测试是完整2440测试程序,643k的axf测试程序一瞬间就下载完毕即可调试,这用并口调试时不可想象,用并口可能几分钟都没下完,而且单步调试非常之慢。而且J-Link来调试则完全没有这一个问题。速度非常之快。
在调试时,J-Link的Control panel 将自动打开

Windows下基于ADS+J-Link 的ARM开发环境搭建的更多相关文章

  1. 基于全志H3芯片的ARM开发环境搭建

    基于全志H3芯片的ARM开发环境搭建 最近买了个友善之臂的NanoPi M1板子,又在网上申请了个NanoPi NEO板子,这两个都是基于全志H3芯片的Crotex-A7四核ARM开发板,两个板子可以 ...

  2. 在windows环境下基于sublime text3的node.js开发环境搭建

    首先安装sublime text3,百度一堆,自己找吧.理论上sublime text2应该也可以.我只能说一句:这个软件实在是太强悍了. 跨平台,丰富的插件体系,加上插件基本上就是一个强悍的ide了 ...

  3. Windows下,配置VS Code的Java开发环境

    Windows下,配置VS Code的Java开发环境 前言 最近痴迷于VS Code的开发环境配置,原因就在于它的轻巧和免费,还能当一个非常棒的文本编辑器.如果之前你配置过VS Code并且失败了, ...

  4. 基于WDF的PCI/PCIe接口卡Windows驱动程序(1)-WDF概述及开发环境搭建

    原文出处:http://www.cnblogs.com/jacklu/p/4619110.html 本科毕业设计是这方面的工作,所以想开几篇博客来介绍使用WDF开发PCI/PCIe接口卡的驱动程序方法 ...

  5. Ubuntu下Django初体验(一)——开发环境搭建

    一.开发 环境搭建 1. linux下一般有自带的python,如果对版本不满意,可以再自行安装. 2. 安装ipython(推荐) sudo apt-get install ipython sudo ...

  6. windows下golang实现Kfaka消息发送及kafka环境搭建

    kafka环境搭建: 一.安装配置java-jdk (1)kafka需要java环境,安装java-jdk,下载地址:https://www.oracle.com/technetwork/java/j ...

  7. 嵌入式ARM开发环境搭建

    1. 安装,配置,启动FTP服务 安装FTP: sudo apt-get install vsftpd 修改vsftpd的配置文件/etc/vsftpd.conf,将下面两行的'#'去掉#local_ ...

  8. 基于vlc sdk的二次开发--环境搭建、编译

    前言 关于 搭建.编译VLC,不同的平台有不同的方法,可以参考wiki. 其中在windows下编译VLC有两种方式,MSYS+MinGW和CygWin.通过测试,最后决定采用MSYS+MinGW搭建 ...

  9. LINUX下QT FOR ARM开发环境搭建过程 (使用qt-x11-opensource-src-4.5.2.tar.gz进行编译)

    在PC上,我们需要得到两个版本的Qt,分别是:Qt-4.5.2和QtEmbedded-4.5.2-arm.前者包括了Qt Designer等基本工具,用于在PC上对程序的开发调试,使我们能确保程序放到 ...

随机推荐

  1. Sql Server的艺术(七) SQL 数据插入操作

    --用INSERT插入单行数据 在SQL中,可以通过INSERT...VALUES语句直接向数据库表中插入数据.可以整行,也可以部分列. 基本语法: INSERT INTO table_name [c ...

  2. BZOJ 1396&&2865 识别子串[后缀自动机 线段树]

    Description 在这个问题中,给定一个字符串S,与一个整数K,定义S的子串T=S(i, j)是关于第K位的识别子串,满足以下两个条件: 1.i≤K≤j. 2.子串T只在S中出现过一次. 例如, ...

  3. 简单实现ASP.Net MVC网页播放音乐

    <div> @*音乐*@ <audio id="warning-sound" loop="loop" src="/Areas/Map ...

  4. 3.C++内联函数,默认参数,占位参数

    本章主要内容: 1)内联函数(替代宏代码段) 2)默认参数 3)占位参数 1.C++的内联函数分析 1.1讲解内联函数之前,首先回忆下之前讲的define宏定义: 之前讲过宏定义会经过预处理器进行文本 ...

  5. 《第一行代码 android》 读书笔记:找出当前界面对应的Activity

    在android开发中找出当前界面对应的Activity,步骤如下: 新建一个BaseActivity继承自Activity,然后在BaseActivity中重写onCreate()方法,通过getC ...

  6. chrome_options

      用法 from selenium.webdriver.chrome.options import Options chorme_option=Options() chorme_option.add ...

  7. .NET图表控件(LightningChart )的用法

    概述 LightningChart (LightningChart Ultimate) 软件开发工具包是微软Visual Studio 的一个插件,专攻大数据可视化呈现问题,用于 WPF(Window ...

  8. 孤立的SQL用户

    问题 最近公司很多数据库在上云,也有一部分在下云.这期间出现了很多问题,其中一个比较恶心的问题就是"孤立用户".当数据库备份还原以后用以前的用户发现不能登录.一开始以为是登录账号没 ...

  9. Thrift入门

    简介 Thrift最初由Facebook研发,主要用于各个服务之间的RPC通信,支持跨语言,常用的语言比如C++, Java, Python, PHP, Ruby, Erlang, Perl, Has ...

  10. nginx的负载均衡集群测试

    分别在3台机子安装nginx和启动nginx服务. dir: 192.168.0.7 另外2台服务器为 192.168.0.5 ,192.168.0.6 在dir  192.168.0.7 上增加配置 ...