我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 814|回复: 0

TMS320F2812系统中的软件复位方法 - 单片机/处理器 - 电子工程

[复制链接]

该用户从未签到

1万

主题

1292

回帖

936

积分

管理员

积分
936

社区居民最爱沙发原创达人社区明星终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

QQ
发表于 2013-3-30 00:42:47 | 显示全部楼层 |阅读模式
控制系统中大多采用电压监控或者看门狗电路,以保证系统的稳定运行。采用硬件复位的方式,可以通过按键开关在任意时刻进行系统复位,系统复位后程序重新开始运行。但有些系统中有人机界面显示,主机在机箱内部,人工复位很不方便,所以采用界面方式的软件复位。

TMS320F2812(以下简称2812)是TI公司2000系列的新型DSP芯片,具有32位低功耗定点处理器,最高主频150 MHz,有强大的操作能力和快速的中断响应处理能力。片内有18 K字高速RAM,128 K字的可加密Flash ROM。片上还集成了丰富的片内外设.有SPI、SCI、eCAN和McB—SP等多个串口外围设备,16通道的12位模数转换器(ADC),2个事件管理器(EVA、EVB),56个独立的可编程、多用途通用I/O口(GPIO)。该DSP芯片集成了大量工业控制领域应用的外设接口,能大大简化电路设计,同时它也具有足够的处理能力,是应用于控制领域的一款高性能DSP处理器。

下面介绍三种实现方法。

<strong>1 硬件看门狗带喂狗端口</strong>

看门狗芯片一般都带有电压监控和复位输出控制,同时还带有WDI的喂狗引脚,需要系统不停地给芯片脉冲,以保证看门狗芯片不向系统输出复位信号。这里就出现了第一种软件方式系统复位方法:需要软件复位时就长时间不给狗脉冲,这样看门狗芯片的复位引脚就输出1个系统需要的复位电平使系统复位。图1是看门狗芯片图。图2是MAX706与2812的接口电路。MAX706芯片内部看门狗定时器的输入WDI可以接到 2812的引脚上,2812不断向WDI输入脉冲(周期≤1.6 s),WDO输出的低电平接到2812的XRS端,使系统复位并重新启动系统。另外当系统电源降到检测点时也使系统复位。当系统接收到复位命令后,停止对 WDI引脚的输出,使芯片的RESET控制系统复位。


<ignore_js_op>





2010-4-13 15:27:14 上传
<strong>下载附件</strong> (13.49 KB)




</ignore_js_op>


端口初始化程序如下:


<ignore_js_op>





2010-4-13 15:27:14 上传
<strong>下载附件</strong> (7.32 KB)




</ignore_js_op>


<strong>2 看门狗芯片不带喂狗端口</strong>

方式1中所采用的是带WDI端口的看门狗芯片,但有些芯片是不带WDI端口的,这时看门狗用于电源检测,当低于设定电压时,输出复位信号,使系统复位。第二种方法也采用 2812的引脚配合方式,但不需要时时刻刻喂狗。图3为所采用的看门狗芯片MAX708。图4为MAX708与2812的接口电路。

2812的GPIOFl4-XF引脚在上电复位后输出高电平,之后该信号被锁存。当2812收到系统复位命令后,控制GPIOFl4一XF引脚输出低电平使系统复位。

端口初始化如下:


<ignore_js_op>





2010-4-13 15:27:14 上传
<strong>下载附件</strong> (7.01 KB)




</ignore_js_op>


<strong>3 软件看门狗复位方式</strong>

这种方式是利用2812自带的软件看门狗方式,2812的看门狗功能框图如图5所示。


<ignore_js_op>





2010-4-13 15:27:14 上传
<strong>下载附件</strong> (12.4 KB)




</ignore_js_op>


通过框图可以看出2812的软件看门狗有两种方式:WDINT的中断唤醒方式和WDRST方式。这里是要求系统复位,而WDINT是实时监控系统的,并不能按要求实现软件复位,所以需将WDRST信号接到XlRS上,这样通过程序配合就能实现控制系统复位。2812系统上电初始化需要一定的时间,所以在初始化时先关闭看门狗,等系统初始化完成后,再打开看门狗。

初始化程序说明如下:


<ignore_js_op>





2010-4-13 15:27:14 上传
<strong>下载附件</strong> (9.69 KB)




</ignore_js_op>


这里利用while(1)的死循环等待看门狗的计数器超过设定值,然后WDRST信号输出低电平;而WDRST接到XRS上,所以整个系统复位,重新开始执行程序。

看门狗程序如下:


<ignore_js_op>





2010-4-13 15:27:14 上传
<strong>下载附件</strong> (2.22 KB)




</ignore_js_op>


<strong>结语</strong>

第一种和第二种方式基于硬件的实现,更加可靠些,第三种方式则可以节约电路板的空间和成本。需要注意的是,采用软件看门狗时调用喂狗程序的间隔不能大于设定值。

<strong>参考文献</strong>

1. 苏奎峰.吕强.常天庆 TMS320X281X DSP原理及C程序开发 2008
2. 苏奎峰.吕强.耿庆锋 TMS320F2812 原理与开发 2005
3. TI.TMS320F2810,TMS320F2812 Digital Signal Processors Data Manual 2003
4. Maxim.MAX708 Data Manual 1995

作者:国电南京自动化股份有限公司 张雪芹杨立军胡炫
来源:单片机与嵌入式系统应用2009 (2)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

论坛开启做任务可以
额外奖励金币快速赚
积分升级了


Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

平平安安
TOP
快速回复 返回顶部 返回列表