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

[复制链接]
3979|16
 楼主| phoenixmy 发表于 2008-1-15 20:21 | 显示全部楼层 |阅读模式
<br /><br />最近拴狗没有拴好<br />一直不太正常<br /><br />请教给位有拴狗经验的一般都用啥狗<br />具体连接是怎么样的?<br />时序上注意些啥?
hotpower 发表于 2008-1-19 04:24 | 显示全部楼层

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

  
zealane 发表于 2008-1-19 23:13 | 显示全部楼层

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

  
sz_kd 发表于 2008-1-19 23:18 | 显示全部楼层

一直很充沛的

  
hitajian 发表于 2008-1-19 23:52 | 显示全部楼层

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

不知道你拴的什么狗,出什么问题了.说出来大家一起分析分析
 楼主| phoenixmy 发表于 2008-1-20 00:20 | 显示全部楼层

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

<br /><br /><br />用的是TPS3306<br /><br />电路连接是经典连接<br /><br />但是一加电后系统总是无法启动起来<br /><br />不知道这是为啥<br /><br />难道是看门狗应该在DSP上电后过一段时间再启动???<br /><br />
hitajian 发表于 2008-1-20 00:44 | 显示全部楼层

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

我查了TPS3306的资料,它的喂狗间隔是0.8s.<br />查查你的系统从启动到第一次喂狗有多长时间.<br />因为启动的过程涉及到程序加载的方式,是串行,并行,还是HPI加载等等...<br />如果0.8s内还没有执行到喂狗操作,那么狗狗肯定会负责任的送出reset信号了.<br />
 楼主| phoenixmy 发表于 2008-1-20 00:49 | 显示全部楼层

楼上说的对

<br />我也在考虑这个问题<br />担心是串行加载过程中看门狗复位导致的系统无法运行<br />但是看3306的经典连接似乎就是那样<br /><br />如果做上电延时处理的话,我还没有啥好的延时处理办法<br />不知道楼上是不是有啥好主意<br />
hitajian 发表于 2008-1-20 01:19 | 显示全部楼层

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

首先,我们确认问题<br />&nbsp;&nbsp;a.把3306的WDI脚断开,根据其datasheet,WDI脚悬空后,watchdog功能会失效.<br />&nbsp;&nbsp;b.用示波器量系统加载到第一次喂狗的时间<br /><br />我在设计中对于DSP给出的喂狗信号,&nbsp;一般都是会和其他信号做逻辑与后在送给watchdog.<br /><br />比如对于串行加载,可利用串行加载中用到的某个信号脚,但要确保此信号在加载结束后没有做其他用途,加载结束后电平恒定.如&nbsp;BDR.<br /><br />可以加我MSN:&nbsp;hitajian@hotmail.com&nbsp;进一步讨论.呵呵
 楼主| phoenixmy 发表于 2008-1-20 01:32 | 显示全部楼层

呵呵,先谢谢啦

<br />周一做实验看看<br />我估计问题大概也是在这个地方<br />不过WDI不是要上拉高电平吗?<br /><br />信号相与应该是正确的途径<br />我这边的喂狗信号就是单一的多缓冲串口输出信号<br />估计是系统还没有把程序加载上就开始复位导致无法正常加载<br />不过话说回来,0。8秒应该足够程序加载并且初始化完成的<br /><br />还有一个现象就是如果不在WDI上加上拉电阻的话,情况会好很多<br />但是仍然会有偶尔死机(程序似乎没有运行)的情况发生<br />不知道这是为啥<br /><br />感谢楼主帮助,明天加你<br />看来这大半夜的还是有很多热心人在线啊
hitajian 发表于 2008-1-20 01:52 | 显示全部楼层

;)

3306的手册里有这样一句话:<br />&quot;If&nbsp;the&nbsp;input&nbsp;is&nbsp;unconnected&nbsp;or&nbsp;tied&nbsp;with&nbsp;a&nbsp;high&nbsp;impedance&nbsp;driver,&nbsp;the&nbsp;watchdog&nbsp;is&nbsp;disabled&nbsp;and&nbsp;will&nbsp;be&nbsp;retriggered&nbsp;internally.&quot;<br />另外,从手册上看3306的WDI脚是不需要单独上拉的.
hotpower 发表于 2008-1-20 02:25 | 显示全部楼层

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

关于3306的WDI脚上拉电阻的问题,个人认为一定要加.<br /><br />理由:<br /><br />若无上拉电阻(高阻/三态),看门狗是被禁止的,只有WDI上有确定的电平后,<br />WDI才被使能,若电平不变且超过喂狗时限后,看门狗将输出复位信号.<br />若电平变化即在喂狗时限内喂狗后,看门狗定时器内部清零不输出复位信号.<br /><br />那么,假若不加上拉电阻即不给看门狗电平信号,将会出现下面的情况:<br />如果上电,加载FLASH程序到RAM及PLL稳定时间即使超过0.8S也不会复位,<br />程序继续执行...当系统配置看门狗管脚后,看门狗被使能!!!<br />则程序必须保证0.8S内的喂狗周期.<br /><br />假若此时掉电复位或看门狗异常复位,WDI都会再现高阻态,看门狗又被禁止!!!<br />假使装载失败等原因,看门狗将永远不复位,也就造成了程序死锁!!!<br /><br />若加上拉电阻,由于装载FLASH程序可能会超过0.8S的喂狗时限,而此时看门狗管脚并未配置为IO,那么也造成了0.8S喂狗的周期复位信号,给人一种程序死锁的假象.<br /><br />故严重同意9楼的&quot;利用程序加载时候的信号脚&quot;联合喂狗的方案!!!<br />我在LPCARM上就是采用类似的这种方法,使ISP状态无喂狗的情况下,利用ISP数据信号达到在ISP期间的喂狗脉冲的发生.
 楼主| phoenixmy 发表于 2008-1-20 13:42 | 显示全部楼层

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

 楼主| phoenixmy 发表于 2008-1-20 13:42 | 显示全部楼层

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

 楼主| phoenixmy 发表于 2008-1-20 13:47 | 显示全部楼层

说明

<br /><br />我的WDI是用多缓冲串口的定时脉冲来进行喂狗<br /><br />与典型电路不同的是我的WDI加了上拉电阻<br />在WDI和VDD之间<br />用了4.7K的阻值<br /><br />结果情况变得更加糟糕<br />不加上拉电阻板子上电时偶尔会死<br />加了上拉电阻几乎就转不起来了<br /><br />现在问题就是加不加上拉?<br />不加上拉为什么有时候上电的时候会死机?<br />若加上拉,又如何控制在程序加载过程中喂狗?<br /><br />
hitajian 发表于 2008-1-21 09:34 | 显示全部楼层

不建议用定时脉冲来喂狗

&quot;我的WDI是用多缓冲串口的定时脉冲来进行喂狗&quot;<br /><br />我建议不要用定时脉冲来喂狗,&nbsp;这种定时一般都是基于中断的.如果你的主程序出现异常死锁的时候,&nbsp;中断可能依然会有效,喂狗信号还会给出,就无法充分发挥狗的作用了.<br />
hitajian 发表于 2008-1-21 09:46 | 显示全部楼层

继续

5402手册中关于BDX管脚的说明提到<br />&quot;Serial&nbsp;data&nbsp;transmit&nbsp;output.&nbsp;BDX&nbsp;is&nbsp;placed&nbsp;in&nbsp;the&nbsp;high-impedance&nbsp;state&nbsp;when&nbsp;not&nbsp;transmitting,&nbsp;when&nbsp;RS&nbsp;is<br />asserted,&nbsp;or&nbsp;when&nbsp;OFF&nbsp;is&nbsp;low.&quot;即当BDX作为McBSP的功能管脚时其输出是高阻的.<br /><br />结合12楼关于加上拉电阻的精辟描述.&nbsp;<br />再加上我上面说的不建议用定时脉冲来喂狗<br /><br />建议将BDX配成GPIO来喂狗.<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

188

主题

3955

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部