打印

麻烦问问各位用54x/55x的一般给自己的dsp拴什么狗?

[复制链接]
3009|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
phoenixmy|  楼主 | 2008-1-15 20:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


最近拴狗没有拴好
一直不太正常

请教给位有拴狗经验的一般都用啥狗
具体连接是怎么样的?
时序上注意些啥?

相关帖子

沙发
hotpower| | 2008-1-19 04:24 | 只看该作者

哈哈~~~这里人气不旺也~~~

使用特权

评论回复
板凳
zealane| | 2008-1-19 23:13 | 只看该作者

hot大叔好像最近精力很充沛嘛。。。

使用特权

评论回复
地板
sz_kd| | 2008-1-19 23:18 | 只看该作者

一直很充沛的

使用特权

评论回复
5
hitajian| | 2008-1-19 23:52 | 只看该作者

不知道你拴的狗出什么问题了.

不知道你拴的什么狗,出什么问题了.说出来大家一起分析分析

使用特权

评论回复
6
phoenixmy|  楼主 | 2008-1-20 00:20 | 只看该作者

加看门狗后系统无法启动起来




用的是TPS3306

电路连接是经典连接

但是一加电后系统总是无法启动起来

不知道这是为啥

难道是看门狗应该在DSP上电后过一段时间再启动???

使用特权

评论回复
7
hitajian| | 2008-1-20 00:44 | 只看该作者

查查你的系统从启动到第一次喂狗有多长时间.

我查了TPS3306的资料,它的喂狗间隔是0.8s.
查查你的系统从启动到第一次喂狗有多长时间.
因为启动的过程涉及到程序加载的方式,是串行,并行,还是HPI加载等等...
如果0.8s内还没有执行到喂狗操作,那么狗狗肯定会负责任的送出reset信号了.

使用特权

评论回复
8
phoenixmy|  楼主 | 2008-1-20 00:49 | 只看该作者

楼上说的对


我也在考虑这个问题
担心是串行加载过程中看门狗复位导致的系统无法运行
但是看3306的经典连接似乎就是那样

如果做上电延时处理的话,我还没有啥好的延时处理办法
不知道楼上是不是有啥好主意

使用特权

评论回复
9
hitajian| | 2008-1-20 01:19 | 只看该作者

利用程序加载时候的信号脚

首先,我们确认问题
  a.把3306的WDI脚断开,根据其datasheet,WDI脚悬空后,watchdog功能会失效.
  b.用示波器量系统加载到第一次喂狗的时间

我在设计中对于DSP给出的喂狗信号, 一般都是会和其他信号做逻辑与后在送给watchdog.

比如对于串行加载,可利用串行加载中用到的某个信号脚,但要确保此信号在加载结束后没有做其他用途,加载结束后电平恒定.如 BDR.

可以加我MSN: hitajian@hotmail.com 进一步讨论.呵呵

使用特权

评论回复
10
phoenixmy|  楼主 | 2008-1-20 01:32 | 只看该作者

呵呵,先谢谢啦


周一做实验看看
我估计问题大概也是在这个地方
不过WDI不是要上拉高电平吗?

信号相与应该是正确的途径
我这边的喂狗信号就是单一的多缓冲串口输出信号
估计是系统还没有把程序加载上就开始复位导致无法正常加载
不过话说回来,0。8秒应该足够程序加载并且初始化完成的

还有一个现象就是如果不在WDI上加上拉电阻的话,情况会好很多
但是仍然会有偶尔死机(程序似乎没有运行)的情况发生
不知道这是为啥

感谢楼主帮助,明天加你
看来这大半夜的还是有很多热心人在线啊

使用特权

评论回复
11
hitajian| | 2008-1-20 01:52 | 只看该作者

;)

3306的手册里有这样一句话:
"If the input is unconnected or tied with a high impedance driver, the watchdog is disabled and will be retriggered internally."
另外,从手册上看3306的WDI脚是不需要单独上拉的.

使用特权

评论回复
12
hotpower| | 2008-1-20 02:25 | 只看该作者

把电路贴上来,我也觉得组合喂狗更好些

关于3306的WDI脚上拉电阻的问题,个人认为一定要加.

理由:

若无上拉电阻(高阻/三态),看门狗是被禁止的,只有WDI上有确定的电平后,
WDI才被使能,若电平不变且超过喂狗时限后,看门狗将输出复位信号.
若电平变化即在喂狗时限内喂狗后,看门狗定时器内部清零不输出复位信号.

那么,假若不加上拉电阻即不给看门狗电平信号,将会出现下面的情况:
如果上电,加载FLASH程序到RAM及PLL稳定时间即使超过0.8S也不会复位,
程序继续执行...当系统配置看门狗管脚后,看门狗被使能!!!
则程序必须保证0.8S内的喂狗周期.

假若此时掉电复位或看门狗异常复位,WDI都会再现高阻态,看门狗又被禁止!!!
假使装载失败等原因,看门狗将永远不复位,也就造成了程序死锁!!!

若加上拉电阻,由于装载FLASH程序可能会超过0.8S的喂狗时限,而此时看门狗管脚并未配置为IO,那么也造成了0.8S喂狗的周期复位信号,给人一种程序死锁的假象.

故严重同意9楼的"利用程序加载时候的信号脚"联合喂狗的方案!!!
我在LPCARM上就是采用类似的这种方法,使ISP状态无喂狗的情况下,利用ISP数据信号达到在ISP期间的喂狗脉冲的发生.

使用特权

评论回复
13
phoenixmy|  楼主 | 2008-1-20 13:42 | 只看该作者

发电路图上来,先发典型电路的图

使用特权

评论回复
14
phoenixmy|  楼主 | 2008-1-20 13:42 | 只看该作者

我自己的图,手动画的比较难看

使用特权

评论回复
15
phoenixmy|  楼主 | 2008-1-20 13:47 | 只看该作者

说明



我的WDI是用多缓冲串口的定时脉冲来进行喂狗

与典型电路不同的是我的WDI加了上拉电阻
在WDI和VDD之间
用了4.7K的阻值

结果情况变得更加糟糕
不加上拉电阻板子上电时偶尔会死
加了上拉电阻几乎就转不起来了

现在问题就是加不加上拉?
不加上拉为什么有时候上电的时候会死机?
若加上拉,又如何控制在程序加载过程中喂狗?

使用特权

评论回复
16
hitajian| | 2008-1-21 09:34 | 只看该作者

不建议用定时脉冲来喂狗

"我的WDI是用多缓冲串口的定时脉冲来进行喂狗"

我建议不要用定时脉冲来喂狗, 这种定时一般都是基于中断的.如果你的主程序出现异常死锁的时候, 中断可能依然会有效,喂狗信号还会给出,就无法充分发挥狗的作用了.

使用特权

评论回复
17
hitajian| | 2008-1-21 09:46 | 只看该作者

继续

5402手册中关于BDX管脚的说明提到
"Serial data transmit output. BDX is placed in the high-impedance state when not transmitting, when RS is
asserted, or when OFF is low."即当BDX作为McBSP的功能管脚时其输出是高阻的.

结合12楼关于加上拉电阻的精辟描述. 
再加上我上面说的不建议用定时脉冲来喂狗

建议将BDX配成GPIO来喂狗.

使用特权

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

本版积分规则

188

主题

3955

帖子

0

粉丝