Board logo

标题: QT2的stop模式发现的问题,请教高手 [打印本页]

作者: pstian    时间: 2007-10-24 17:41     标题: QT2的stop模式发现的问题,请教高手

在QT2(68HC908QT2)使用中关于STOP模式发现以下问题:
烧录同一段实现STOP模式的程序,运行后,dip封装的功耗达到资料提供的参数;soic封装且有铅的芯片功耗也能符合资料提供的参数;但是,soic封装且无铅的芯片功耗远远大于资料提供的参数,试了几个芯片,最小的电流也有400uA。谁能告诉我是什么原因。非常感谢。
作者: strongchen    时间: 2007-10-24 20:40

有没有多余的没处理的空脚?
作者: pstian    时间: 2007-10-25 09:03

斑竹,难道同种IC,不同封装或者说有铅跟无铅有很大差别吗,而且我对于管脚做过各种组合的处理,电流变化不大啊。
作者: strongchen    时间: 2007-10-31 11:24

应该不会有很大差别。可能还是软、硬件处理上的问题。
作者: pstian    时间: 2007-10-31 11:44

斑竹,可我用的是同一个程序啊

作者: strongchen    时间: 2007-10-31 14:39

不同工艺的芯片特性肯定会有所不同,但不会有这么大的差异,而且也不会达不到最小电流的指标。你可以试试将所有管脚定义为输出,以及定义为输入并外接上拉或下拉电阻,看看有何改变。
作者: pstian    时间: 2007-11-23 09:37

斑竹,下面是我测试程序,请指教
#include /* include peripheral declarations */
#include "hidef.h"
#include "start08.h"
/*调用USER.H文件*/
//#include
/*调用USER.H文件*/
#define Cpu_SetStopMode() __asm("STOP")
/*全局变量*/
//BAT_FLAG_UNION BAT_FLAG
byte Current_N;
byte Key_N,state,num;

void delay_time(word time)
{
word i,p;
p = time;
TSC_TSTOP = 1; /* 停止计数*/
TSC_TRST = 1; /*清TSC,COUNTER REGISTER*/
TSC =0x20;
TMODH=0x00;
TMODL=220;
TSC_TSTOP = 0; /*开始计数*/
for(i=0;i while(!TSC_TOF);
TSC_TOF = 0;
}
TSC_TSTOP = 1; /*停止计数*/
}
void Sys_Init()
{
CONFIG2=0x80; /*内部时钟,无外部中断,复位*/
CONFIG1=0x13;
DDRA = 0x00;
PTA = 0x00;

PTAPUE=0xff;
ADSCR=0x1f; /*禁止中断,未用AD*/

}
void test(void) {
for(num=0;num<200;num++) {
delay_time(2000);
}
Cpu_SetStopMode();
}

#pragma DATA_SEG SHORT ZEROPAGE
void main(void) {
DisableInterrupts;
INIT_SP_FROM_STARTUP_DESC();
/*下面是用户程序段*/
Sys_Init();
test();
while(1) ;
}
作者: pstian    时间: 2007-11-23 09:46

PTA = 0xff;
也试过,变化不大
作者: strongchen    时间: 2007-11-23 14:24

QT2虽然没有引出PTB脚,但实际上它的DIE上还是带PTB脚的。把PTB脚也设置成输出,或输入上拉试试。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0