采用msp430f149/169设计的报警器产品批量应用在公交车上,发现一定数量产品存在以下问题:
1、内部flash程序丢失:单片机程序跑飞、被更改或其他可能的原因,导致程序无法正常运行。
检查设备电源正常,重新烧写程序后,产品恢复正常。
2、信息存储器数据丢失:表现最多的是信息存储器里的数据被更改。
经过自查硬件电路发现,JTAG熔丝位未熔断、复位电路有微小脉冲,现已更改设计。
软件信息存储器设计程序如下所示:
void write_SegA(unsigned char *value,int length)
{
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
_DINT();
char *Flash_ptr; //Flash指针
unsigned int i;
Flash_ptr = (char*) 0x1080; //初始化Flash指针
FCTL1 = FWKEY+ERASE; //允许擦除
FCTL3 = FWKEY; //解锁
*Flash_ptr = 0; //空写,启动擦除
FCTL1 = FWKEY+WRT; //允许写
for(i=0;i<length;i++) //循环写信息段A的前length个字节
{ *(Flash_ptr++) = *value;
value = value+1;
}
FCTL1 = FWKEY;
FCTL3 = FWKEY+LOCK; //锁定
_EINT();
WDTCTL=WDTPW+WDTSSEL+WDTCNTCL;//————//
}
灰小子:
按你上面的措施改进后,还有问题么?
要具体问题具体分析和处理,只要解决问题就好。产品的设计建议多参考官方的类似方案