登录 免费注册 首页 | 行业黑名单 | 帮助
维库电子市场网
技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统
驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe

LPC2214的ISP和JTAG都被我调通了,经验介绍:)

作者:linsf 栏目:ARM技术
lpc2214的ISP和JTAG都被我调通了,经验介绍:)
   本人最近利用lpc2214做了一块板子(四层),这两天把ISP和JTAG都调通了,写下经验,希望对做2214开发的同仁有所帮助:)
   芯片都是自己焊接的,虽然之前我很少焊接表贴元件,不过我在实验室老师的指导下还是自己大胆的焊接了144引脚的lpc2214,焊接好后外观效果还不错,后续调试的时候遇到很多问题,本以为是2214焊接的问题,不过后来发现2214焊接还是很成功的。下面是2214周围电路的简介:

1.项目没有扩展外部RAM和FLASH.
2.电路复位芯片为MAX809S,它输出的复位信号我直接连到了2214的135引脚(/RESET)和43引脚(P1.31/TRST)。没有采用74HC125.
3. Jtag的20管脚和2214的连接关系是:
        Jtag(10*2)                       lpc2214
         3                                43(TRST)
         5                                140(TDI)
         7                                113(TMS)
         9                                126(TCK)
         11 通过4.7K电阻接地并接2214的52(RTCK)引脚
         13                               144(TDO)
         15 接MAX809S的复位输出引脚。
         17,19管脚悬空。
         1,2管脚接3.3V电源。
         其他管脚接地。
4.串口转换芯片为MAX3232CSE.
5.时钟为11.0592M Hz.
5.编程环境为ADS1.2

下面是调试时遇到的问题和心得:
1.电路板加工回来后,首先应该用万用表的二极管档测试一下关键信号,特别是地和电源。(纯属多言的常识)
2.电源部分焊接好后,我又用万用表测试了全板的所有电源点。
3.电路原来设计时,本以为不用ISP下载程序,所以我把P0.14引脚直接用10k电阻上拉到3.3V了,后来发现这样决定是个错误,因为元件焊接好后,JTAG信号比较多非常难调。而ISP只需要两个信号,串口又是很熟悉的通信,所以ISP比较好调试。所以,在设计时,应该把P0.14引脚像开发板似的接一个跳线器,可以方便的使能ISP功能。
4.元件焊接好后,应该首先用示波器测试一下复位信号和时钟信号是否正常。
5.如果复位信号和时钟信号正常,2214焊接没有问题,利用串口进行ISP下载应该就没有问题。具体操作可以仔细看看《ARM与嵌入式系统基础实验教程(1)》这本书46-51页的介绍。如果遇到问题,先检查232芯片是否工作正常和2214的焊接。
6.ISP下载成功的话,说明2214能够正常工作的条件都满足了,就可以进行JTAG的调试了。
7.进行JTAG调试前,先用ISP全片擦除FLASH.
8.我进行JTAG调试所用的下载线是买easyarm2200开发板时附送的,驱动程序我本来用的是V1.06,不过今天上午周工说1.06对2200的支持不是很好,所以我又重新安装了V1.05。
9.我利用ARM Executable Image for lpc22××生成的工程模板,在RelInChip模式下编译程序,之后通过AXD debugger下载,指定lpc2214芯片后,AXD的EDI Log窗口显示:
TTKSimulator for ADS, V1.2, 2003/08
SOFTWARE Supplied by: ZLGMCU
ARM7TDMI-S, Little Endian
然后我点击Load image加载RelInChip目标模式下生成的axf文件,确定后即出现
error 0xffffffff! FLASH Sector 0 write failed!
有时出现的问题和上面的提示类似,用DebugInExram目标模式生成axf后下载调试也不行,大体都是不能对片内的FLASH进行写。
此时进入AXD,打开存储器观察窗口(MEMORY),观察0x40000000地址上的数据全为ff,而且不能进行修改。
我之前在本版也问了好多问题,你可以去搜索一下遇到的问题是否和我类似。
10.今天上午周工提示如果不使用外部总线,可用LPC2100的工程模板。我就去周立功网站下载了2100的工程模板并安装。之后用ARM Executable Image for lpc2100生成工程模板。添加.c程序后,在DebugInRAM目标模式下编译程序生成axf文件,之后用jtag下载,发现程序竟成功的运行起来了!
用RelInFLASH生成的目标文件也能够下载到FLASH中脱机运行。
我的程序功能很简单就是驱动P0.5引脚的喇叭唪鸣(建议调试时尽量用最简单的程序,最好先在开发板上调试好).
今天下午我又按照相同的操作成功的运行了另外一个串口程序。
11.之后我又重新用ARM Executable Image for lpc22××生成的工程模板进行调试,发现还是不行,具体什么原因应该是周工所提供的lpc22xx的工程模版是针对easyarm2210的,在这个开发板上扩展了外部的RAM和FLASH,所以模版的分散加载文件不适用于我的板子,因为我的板子没有扩展外部的RAM和FLASH,分散加载文件所用的资源只有0x00000000-0x00040000的256K内部FLASH和0x40000000到0x400004000的16k内部ram。
   而lpc2100的工程模版的分散加载文件刚好适合这样的应用,所以如果使用2214没有扩展外部ram和FLASH的话,写程序时请用lpc2100的工程模版。但应用lpc2100的工程模版也有不方便的地方,因为lpc2100的工程模版不支持配置PINSEL2和存储器组寄存器(BCFG0-3),不过我们可以自己在初始化程序startup.s中自己添加。
  如果对分散加载文件比较熟悉的话,我们也可以通过改写lpc22xx工程模版的分散加载文件来达到自己的要求。关于分散加载文件请参考清华大学出版社出版的杜春雷《ARM体系结构与编程》一书。
   一个星期内把ISP和JTAG全部调试成功,还算比较顺利。本版有很多和我遇到类似情况的人,希望我写的内容对你们有所帮助:)

* - 本贴最后修改时间:2005-5-31 19:37:45 修改者:linsf

2楼: >>参与讨论
goodguy
re:linsf
哈哈哈~~~这样的文章好啊!


我现在的这个项目是用2210做的,还正在进行中........

3楼: >>参与讨论
zlgarm
欢迎大家发表自己的新的体会,帮助更多的人成功!
     在此表示诚恳的谢意!作为初学者,只要自己努力、静下心来踏踏实实地钻研就一定能够快速步入ARM嵌入式系统的“殿堂”。(周立功)

4楼: >>参与讨论
luohm
我用的2210,现调通了
我用的2210,现调通了,实际上你把22xx系列的工程模板改一下,也能在片内调,不知2100的工程模板的初始化中,各个参数是否对应?我还没有看过.我的QQ是313080347

5楼: >>参与讨论
linsf
re:
luohm,您知道怎么修改22xx的工程模板才能解决我所说的问题吗? 我下午试着修改22xx的启动代码,不过还没有成功:(

6楼: >>参与讨论
foyyof
就缺这个氛围...支持...
 
7楼: >>参与讨论
格瓦拉
我在用2132
我在准备用2132做一个开发板。比较简单,但我是第一次画电路图,还是有点胆怯。关键是,我从来没有焊过smt的元件,所以我打算跟开发板一样,做一个接口,将cpu pack直接按上去。God bless me!

8楼: >>参与讨论
linsf
re to 格瓦拉:
我做的板子也和开发板一样,把arm芯片做成了pack形式,这样其实很好:
首先简单的布一个只有arm芯片的小板子基本上不会出错,这样电路板的其他地方有严重错误的话,arm芯片还可以用在下一块板子,这样节省成本。
第二是pack的过孔插针降低了布线的难度,因为两层信号都可以连接到arm的引脚。
祝你顺利!

这两天在看分散加载的资料,我最上面写的文章里提到的用22xx工程模版下载不成功是因为分散加载文件不对,因为earyarm2200提供的工程模版是默认扩展外部ram和FLASH的,而我的板子没有扩展外部存储器,我已经成功地修改好了relInFlash目标模式下的分散加载文件了,现在在修改DebugInExram的分散加载文件,最后都成功后我把资料整理一下发上来。

9楼: >>参与讨论
redkey
我的还没有解决:(
我用的2114,情况与楼主一样。
我现在用的是V1.06,我也想换成V1.05。
不知道V1.05在哪里可以下载到?
谁有的能不能给我发一份到我邮箱:13155138327@ah165.net
谢谢了

10楼: >>参与讨论
beyond997
我还有个小问题
我买了全新的2114CPU,装到我自己做的开发板上,用JTAG调试不通,后改用ISP下载,一下就成功了,而且ISP下载后在使用JTAG也通了,百思不得其解~~,哪位高手能够解释一下?多谢。!

11楼: >>参与讨论
zlgarm
lpc2200系列如果不使用外部RAM必须使用2100工程模板。
 
12楼: >>参与讨论
redkey
我用的是2100工程模板
我用的是2100工程模板,V1.05,试过了,jtag还是不通.

13楼: >>参与讨论
linsf
To redkey:
如果是自己做的板子,就仔细检查一下硬件电路吧,还有2114有内部FLASH,jtag调试前,必须用ISP擦除,因为内部FLASH加密后不能进行jtag调试。没有外部扩展ram和FLASH一定要用2100的工程模版。

14楼: >>参与讨论
ARMchen
好贴
 
15楼: >>参与讨论
redkey
re:linsf
板子是自己做的.jtag调试前,以用ISP擦除.我的带外部FLASH.用的2100的工程模版,V1.05.还是没有成功.论坛的办法我多试过了,没有效果,看来只有寻找其他的办法了.


16楼: >>参与讨论
linsf
re redkey:
   既然你的板子ISP已经调试通了,那么说明你的板子的时钟信号和复位信号是好的.你的板子有外部FLASH,就要注意Boot1:0两个引脚的连接方式,因为它们的值决定了复位后程序启动的方式。举个例子来说,如果你的板子boot1:0的状态是01那么就从外部FLASH启动,而这时如果你的分散加载文件是把启动代码放到内部FLASH中了,那么程序就不会成功运行。

17楼: >>参与讨论
april.liu
好人一个!
 
18楼: >>参与讨论
ollie
我用的是2119
用JTAG下载到FLASH上后,也说写失败,但是点run,程序可以跑,可以单步,我老师说他们刚开始开发的时候用的也是easyjtag,后来调的时候经常出现一些莫名其妙的问题,改用keil的那款调试器就稳定多了。我先在写的都是些小程序,还没碰到我老师说的问题,我准备就用2119参加电子设计竞赛。

19楼: >>参与讨论
60岁老头
如何用INCBIN伪指令
有谁用过INCBIN伪指令?我试了不知为什么不行。

20楼: >>参与讨论
redkey
程序跑飞
现在error 0xffffffff! FLASH Sector 0 write failed!
以解决了,主要是焊接的问题,搞干净就好了
但是在RUN的时候程序老是跑飞,郁闷!
恳求大家给点意见!


21楼: >>参与讨论
Routhe
scf
也是2214,用JTAG,有外部RAM,scf文件都要改

22楼: >>参与讨论
luyunjie
为什么不能从JTAG下载程序呢?
    各位大虾,我无论是从22XX模板还是21XX模板都不能把程序下到片子里去,我用的是2210开发板,能够调试。是否从RelInFlash中编译程序,然后点击DEBUG就能够自动把程序下载进去呢?

23楼: >>参与讨论
luyunjie
不能用JTAG下载程序
    各位大虾,我的开发板是2210的开发板,用JTAG就只能够调试程序,在RelInFlash编译后下不能下载程序,无论是21xx模板还是22xx模板也是不行,是否要用ISP先进行一次擦除呢,因为它原来就有程序在里面,还是要进行什么跳针之类的,

24楼: >>参与讨论
choiceman
来自JTAG的建议
各位同僚:
   大家好!
   我也是ZLG的用户,我已经用ARM做成了一个产品了,现在第二个产品正在进行中,给人的感觉是满高兴的事情,但在开发的过程中, JTAG 的问题上老是一直困绕着我,JTAG一会儿好,一会儿就不行,在有的板上好,在有的板上就联不上,出现“error 0xffffffff! FLASH Sector 0 write failed!”的几率比较大,上面的读者提及到“分散加载文件”,确实是一个问题,但我感觉到不仅仅是这么多的问题,比如你把程序写到40K以后了,就跟踪不到了,我希望我们的ZLG还是把一些原理讲清楚,把网上同志们的一些问题提的多的总结出来,更需要多做一些大数据量测试,不能把用户当成测试员。话说回来:提高国内的软件行业的水平,还是要靠大家的共同努力,发扬求实的精神。

25楼: >>参与讨论
april.liu
同意楼上的。
 
26楼: >>参与讨论
curiosity
借这个氛围问个问题:)
第一次碰2214,还没有开始做板
有个问题想要高明白,关于片内FLASH的编程,我看文档说有3钟方式:
PROGRAMMING of the FLASH MEMORY may be accomplished in several ways: over the serial built-in JTAG interface, using in SYSTEM PROGRAMMING(ISP) and UART0, or by means of In application PROGRAMMING(IAP) capabilities.”
看上去好像可以直接用JTAG直接烧嘛,具体怎么做大家知道吗?还有,如果可以用JTAG直接烧,这和ISP有什么不一样啊?我觉得也是一种“在系统可编程”啊?

27楼: >>参与讨论
zyq_73636
2214 JTAG
我也遇到这样的问题,至今也没有解决,一直用ISP

28楼: >>参与讨论
prengui
2214做的产品就出来啦!
 
29楼: >>参与讨论
mayonghui
好帖,学习中!
好帖,学习中!

30楼: >>参与讨论
lwz121
注意复位电路
我的板子总是不能jtag仿真,出现error 0xffffffff! FLASH Sector 0 write failed!错误,经检查,是由于我得复位电路用的是复位信号通过74HC02与非们取反后给cpu复位,这造成在jtag仿真时,复位电路产生的复位信号和EASEJTAG仿真头的复位信号输出线与,造成不能通过jtag复位cpu。

31楼: >>参与讨论
linux_yg
请问大虾怎样自制LPC2000的ISP下载线?
 
32楼: >>参与讨论
lwz121
LPC2000的isp下载连接方法和普通的串口连接相同(串口0)
只是在复位前应该首先保证p0.14脚为低就可以了

33楼: >>参与讨论
tinyboy
jtag调试问题,请帮忙看看,谢谢
2214作了块板子,isp可以用,也可以用jtag下载程序到片内ram,就是用JTAG下载到FLASH上后,会提示说写失败,但是点run,程序可以跑,可以单步。不知道是什么原因,那位大虾可以帮忙解释一下,谢了

34楼: >>参与讨论
tinyboy
请教jtag调试问题
 

* - 本贴最后修改时间:2005-6-29 18:26:43 修改者:tinyboy

35楼: >>参与讨论
橡希
不知何时我能达到搂主那样的水平!
看了大家的话,我发现我用2132开发液位计还是一项艰巨的工程。

36楼: >>参与讨论
wj8389
初学者顶一下!
 
37楼: >>参与讨论
zcq30
在使用LPC221x芯片中,我们发现:...
在使用LPC221x芯片中,通过大量的实验我们发现:
(1)使用ISP可以擦除、编成,可上电复位后程序不运行。
(2)使用JTAG无法在内部、外部FLASH中调试,提示“error xxxxxxxxx! FLASH Sector 0 write failed!”等错误。
出现上述的现象一般都是焊接原由造成的。若是高手或机器焊接第一个现象可以100%解决。



38楼: >>参与讨论
hawkxzq
好贴呵
 
39楼: >>参与讨论
clara
求助:2138能ISP,但是程序不正常运行,也不能jtag调试
 
40楼: >>参与讨论
xfarm
这有何难度,我上电就调通了.不过做事态度值得肯定.


41楼: >>参与讨论
tao_xu99
hao a
都是 好文章,我们学习 的好榜样!

42楼: >>参与讨论
redskier
isp问题
我用的2214,isp总是说无法通讯,楼主能详细讲讲么.
你说的分布文件其实把eram那段的代码拷到iram里面去就可以,再把eram那段去掉

43楼: >>参与讨论
redskier
我的总是时好时坏
我买的2214装到2200的开发班上,jtag一直不行,isp时好时坏,程序执行一直有问题.但是用本身的2210芯片就可以jtag,郁闷

44楼: >>参与讨论
lpc2119
能把源程序给我么??我刚刚开始学,借鉴一下!!谢谢!!
liuyang0072000@163.com

45楼: >>参与讨论
qiuyuyun
GOOD!
 
46楼: >>参与讨论
xiaofei211
同样的问题
    在使用22XX模板过程中也遇到了类似的问题,第一次是在作试验时,用的是周工的22XX学习套件,当时不知道怎么的问题就出来了,郁闷了一天后,在技术支持的指导下也没有解决问题。第二天找到北京的售后服务,他们也没给直接解决问题,而是直接换了一块新板子。
    现在同样的问题又出现了,查找了很多可能引发问题的原因,后来我都怀疑是不是2214的问题,作了两块板子,另一块什么事都没有。
    如果象楼主说那样,使用外部总线就不能运行用2200模板建立的程序了吗?希望楼主帮助小弟看看怎么解决这个令人寝食难安的问题!!!

47楼: >>参与讨论
bobch
我也是用的2214
我也是用2100模板调通的。小心加密。

48楼: >>参与讨论
dragon_hn
还是不要用JTAG了
我买了块2104的开发板,用了几次JTAG就不用了。
直接用ISP烧写程序,通过UART0口打印消息来监控程序运行结果,大部分DSP开发系统都是这样。

49楼: >>参与讨论
qyz
RE linsf
楼主在杭州吗?如果在我可以给你介绍一个兼职的工作哦!是杭州的就和我联系:13905715217

50楼: >>参与讨论
May1111
请问
请问:
我用的是LPC2132,上电后管脚很不正常,JTAG可以连接,但无法运行,想用串口擦一下程序,又连接不上,请指点一下会是什么原因?

51楼: >>参与讨论
格瓦拉
我的2132的扳子也调通了!
就是不知道我的ISP不能每次都很灵。有时不得不把pack扒下来,拿到开发板上去擦除FLASH.有时又是好的。我怀疑是我的复位电路做的不好,我没有用复位芯片。

52楼: >>参与讨论
hebinn2004
a
a

53楼: >>参与讨论
hh_wsl
我的问题和楼上的一样
          我的问题和楼上的一样,我现在很试郁闷!
          请周工的工作人员多多指点,以使我们这些新手烧走弯路。

54楼: >>参与讨论
hussar
支持,谢谢LZ!
 
55楼: >>参与讨论
winsnow
我用的是2292芯片,过程和楼主相似的惊人
楼主经历的调试过程,我都经历过,目前的结果也差不多。在自己的板子上跑了两个任务:让led闪烁和串口发数。达到这个效果用了不到4天的时间。不过,距我们的产品需要达到的功能要求,还差的很远。初次接触arm,这万里长征迈出的很小很小的一步,比我想象中要顺利,很受鼓舞。

56楼: >>参与讨论
xianfei520
linsf
问下linsf朋友,我以前学机械的。现在学自动化的。数字,模拟电路都学过,protel会,我也想做个硬件,还需要对哪方面充电阿 

57楼: >>参与讨论
mahuaqiang
d
d

58楼: >>参与讨论
jackycom
error 0xffffffff! FLASH Sector 0 write failed! 我已经解决
    我用的是LPC2132,用JTAG调试时也会出现错误:error 0xffffffff! FLASH Sector 0 write failed!。我的情况是LPC2132复位不好造成的(用的是一个电阻复位)。各位如果遇到类似问题,可以试下按住Reset键,上电后再放开看行不行。希望我的经验能够帮助到你,谢谢!!


********************************************************
********************************************************

    单片机控制彩色LCD方案(彩色LCD智能驱动终端)

    可用单片机控制的LCD智能显示终端(VTer-X-X),简化了彩色LCD的应用。用户在不需要了解LCD的工作原理及显示方式的情况下,用单片机按照显示终端(VTer-X-X)所提供的指令格式通过串行接口或并行接口发送控制指令,显示终端(VTer-X-X)则按照指令设置的大小、方向、位置显示对应的字符、汉字和位图(显示终端里可存字库,图库),还可以通过几条简单指令即可完成绘制点、线、圆、 全屏清屏、部分清屏、反色、显示实时时钟、自动显示位图等功能。在按键输入方面可选择触摸屏或标准的PS2鼠标。
可配置的LCD规格有:
(1)5.7寸320*240 STN  
(2)8.0寸640*480 TFT  
(3)8.4寸640*480 STN  
(4)10.4寸 640*480 TFT  
(5)12.1寸 800*600 STN  
另还可以配置标准VGA接口显示器。
详情请登陆公司网站 www.qxlcd.com  或来电 020-38497067咨询

* - 本贴最后修改时间:2006-8-1 12:29:08 修改者:jackycom

59楼: >>参与讨论
zyarm5
呵呵
LPC2220作板子,都已经调通,但小弟硬件不够好,费了好大的劲

60楼: >>参与讨论
jaky80000
留个联系方式,我有问题想问啊
我的能用ISP下载,但是不能正常运行啊,这是为什么呀

61楼: >>参与讨论
fangfang

我也是这种情况啊,用ISP下载正常,但就是实现不了预期的功能,郁闷!

用ISP下载后不复位,这时从超级终端可以回显键盘敲入,但复位后就是不运行自己的代码。

烦请大侠指点啊!

62楼: >>参与讨论
WGGH
GLG的JTAG经常出现问题,
63楼: >>参与讨论
老头

     jtag 是不是比isp  牛点啊

   jtag是不是可以对FLASH 部分操作啊 而isp只能整盘操作啊

64楼: >>参与讨论
新手
我用LPC2220和H-JTAG。但是我的问题是不能写外部FLASH。提示:ERROR:CAN’T DOWNLOAD DRIVER TO SPECIFIED ADDRESS。请哪位大侠指点一下。(已经检测到CPU)
65楼: >>参与讨论
WW
推荐师弟、师妹们一个文献检索、资料下载的好去处
向我们学校的的同学推荐一个崭新的文献互助、资源检索、专业交流的平台,你在这里可以得到最快的资源互助,学到最新的文献检索技术! 网址:[url]http://www.ziwu.org/bbs/?u=2712[/url]
66楼: >>参与讨论
xx

分散文件如何写,请教一下!

我的邮箱: hf_fxy@sohu.com

 

67楼: >>参与讨论
xyx

我的也是这个错误啊,怎么解决啊!希望高手能帮帮忙,帮我看看!

ERROR:CAN’T DOWNLOAD DRIVER TO SPECIFIED ADDRESS。(已经检测到CPU)

参与讨论
昵称:
讨论内容:
 
 
相关帖子
关于VBP总线读写时序问题,我们的测试结果入下:
大家看看,怎么左移没起作用啊!!!
LPC2478/2470 何时能供货?价格几何?
请教斑竹!
lpc2106哪些IO口是开漏的?
免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入


Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号