打印
[开发工具]

ISP测试情况反馈

[复制链接]
楼主: mxchip_sh
手机看帖
扫描二维码
随时随地手机跟帖
21
mxchip_sh|  楼主 | 2008-8-31 23:26 | 只看该作者 回帖奖励 |倒序浏览

尽快提供测试结果

争取下周应该可以找到原因。

使用特权

评论回复
22
simon21ic| | 2008-8-31 23:48 | 只看该作者

还是没有明白是什么问题

LZ位不是已经说明了原因了吗?怎么还在努力寻找原因?
越来越让人搞不懂了

使用特权

评论回复
23
McuPlayer| | 2008-9-1 00:01 | 只看该作者

这个确实有ST的干系

STM32在Reset后,其IO处于Floating状态,此事MAX3232的Input处于Floating状态,意味着Out可能是逻辑0或者逻辑1。

当PC发送0x7F做波特率校准时候,STM32的Loader开始初始化串口,居然会突然来个下降沿,并且会保持一会(具体时间未测,并且不是每次都有),于是PC会接受到一个0x00。
这个0x00的来到,在PC Open串口并发送0x7F之后。

本来PC期望的ACK(0x78),变成了(0x00 0x79)两个字节,这时候ST的ISP Demo会报告失败,但是力源的ISP Utility会聪明的只抓取后面这个0x79。

这也是我为什么第一次给客户安排量产烧录用的力源的工具。
我也开始怀疑力源ISP Utility的作者发现了STM32的这个陷阱,所以才会避开。

后来,我发现ST的Demo只要连接OK,烧录从来没出问题,就用串口监控看数据流,然后就发现了这个0x00。
而且我这里发现,美信的MAX3232出这个0x00机会远远低于国产MAX3232芯片。

所以,上拉个电阻就好了,原因就是解决了MAX3232的TxdIn的floating问题。
ST其实可以在一开始就初始化串口所用的IO,迅速脱离TXD的Floating状态。
PC在Open串口时候,此前的Receive Buffer收到的0x00会自动丢弃。


----------------------------------------------------
另:力源ISP Utility速度慢的原因之一是,每次只传0x18个字节。
ST的Demo是每次0xFC个字节,其实完全可以做到0x100个数据。
Hot徒弟那个Utility速度慢的原因没找到蛛丝马迹,估计是控件上捆绑功能太多,累了吧。

使用特权

评论回复
24
McuPlayer| | 2008-9-1 00:05 | 只看该作者

不过作为ST的用户还是应该感谢楼主把这个问题挑到明处

建议香主给楼主穿条裤子,闻过则喜嘛

使用特权

评论回复
25
McuPlayer| | 2008-9-1 02:01 | 只看该作者

建议simon21ic兄用山寨MAX3232再做多次试验

使用特权

评论回复
26
hotpower| | 2008-9-1 02:23 | 只看该作者

PhoenixMY做慢的原因是它不熟悉控件的应用

他是第1次编写PC软件~~~难为他了~~~

我也听他说过0x00问题,但没再意,不知他是如何解决的.

估计是操作dtr/rts再次内部联机.

使用特权

评论回复
27
simon21ic| | 2008-9-1 04:13 | 只看该作者

山寨MAX3232偶米有啊

减小电容模拟?

使用特权

评论回复
28
pheavecn| | 2008-9-1 07:55 | 只看该作者

我倒还不了解这个问题。

不过ST的芯片复位后所有IO浮空,是个不够完美的地方。关键引脚必须自行上下拉。

使用特权

评论回复
29
pheavecn| | 2008-9-1 08:11 | 只看该作者

我的程序原来检测到这个错误码会报应答错误,再退出连接

第二次操作就会成功。
现已改成自动重试几次。

使用特权

评论回复
30
yewuyi| | 2008-9-1 09:01 | 只看该作者

JFlash的Lic是收费的还是免费的?

grant_jx 发表于 2008-8-30 19:45 ST MCU ←返回版面    

7楼: 我很想知顶楼的是根据什么原因推倒出的结论 

是由于STM32片内的BOOTLOAD程序没有关闭与ISP无关的管脚导致ISP的错误?



Re 4楼
JLink支持编程,使用JFlash,去http://www.segger.com下载JLink的最新驱动,安装后里面自带JFlash软件,前提是你必须要有JFlash的Lic。
 
 

使用特权

评论回复
31
john_light| | 2008-9-1 10:15 | 只看该作者

J-Flash-ARM的License比J-Link-ARM硬件还贵

398欧元

不过,唉……
相关链接:http://www.segger.com/pricelist_jlink.html

使用特权

评论回复
32
yewuyi| | 2008-9-1 12:52 | 只看该作者

如此操作可不可以下载?

在IAR下使用release编译代码,然后切换到debug模式下,debug工具选择J-Link/J-Trace并设置use flash loader和verify download有效,据说此后点击debug按纽可把应用代码DOWNLOAD到FLASH中去,相当于一个J FLASH功能。

不知道以上说法是否成立?

即使成立,也太烦琐了,还不直接在debug模式下DOWNLOAD进去,即使代码量大一点而已。

哎,自己学习玩,还是希望能弄J-FLASH用用,比较符合以前的烧写芯片的习惯。


强烈BS一下segger这个公司,既然大家买你的JLINK了,这个软件就不应该再收费的了。。。

使用特权

评论回复
33
simon21ic| | 2008-9-1 14:01 | 只看该作者

使用J-Link的话,有免费的调试下载工具

OpenOCD,不过国内会用的少

使用特权

评论回复
34
McuPlayer| | 2008-9-1 17:00 | 只看该作者

一看叶工的鄙视,就能看出中国的国情,哈哈

使用特权

评论回复
35
香水城| | 2008-9-1 17:33 | 只看该作者

天冷了,送23楼McuPlayer裤子一条

哈哈,分析的很好、很到位。

使用特权

评论回复
36
simon21ic| | 2008-9-2 13:23 | 只看该作者

还没出结果吗?

正等着呢,已经通知客户延期了,如果没有问题,再去败STM32芯片

使用特权

评论回复
37
McuPlayer| | 2008-9-2 16:54 | 只看该作者

to simon21ic

这个算不上问题,ISP软件稍改一下,就OK了。
我小批量都做了,用力源的Utility(就是那个干活慢但成功率高的)。
客户正式生产,用我自己做的软件,或者用pheavecn兄的那个就可以了。


但这仍是ISP的一个瑕疵,希望Flash Loader的作者在下版改进。

使用特权

评论回复
38
simon21ic| | 2008-9-2 18:15 | 只看该作者

恩,但是不确定LZ所说的是否就是这个问题

单单这个问题的话,还不应该夸张到"不建议使用连接ISP"的程度。
相信是不同的问题,而且应该挺严重的。

使用特权

评论回复
39
winloop| | 2008-9-2 18:34 | 只看该作者

感觉这跟STM32上电复位后是低电平有关系

低电平是UART的起始位,所以复位后计算机串口就能收到数据,虽然是错误的数据(带BREAK和帧错误的数据),但可能会对联机造成影响

使用特权

评论回复
40
agnd| | 2008-9-2 18:40 | 只看该作者

其实NXP的ARM在isp下载时也有这个问题

但人家软件会弹出个对话框,让你复位目标板。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则