微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > MSP430加密熔丝烧断器的制作

MSP430加密熔丝烧断器的制作

时间:11-13 来源:互联网 点击:

LED分别指示目标单片机保险丝未熔断、正在熔断及已熔断的状态。熔断加密器系统控制部分的电路如图2 所示。
软件部分是通过C 语言来实现熔丝加密器与目标单片机之间的数据通信及指令控制的。具体软件流程如图3所示。

以下为加密熔断器主程序:

LEADBBS CODE

#include "MSP430x11x.h"

void main (void)
{
unsigned char k ;
WDTCTL = WDTPW + WDTHOLD ;
P1DIR = 0xFE;
P1OUT &= ~BIT2 ;   // 断开Vpp
P1OUT &= ~BIT3 ; // 保险丝准备指示灯(黄色) 亮
P2OUT |= BIT5 ; // 保险丝熔断成功指示(绿色) 灭
P2DIR = 0xEF ;

while (1)
{
if ((P1IN&0x01)==0)
{
ResetTAP1(); //?
delay(50000);
IR_SHIFT(0x14);
DR_SHIFT16 (0xAAAA);
if(tdovalue != 0x5555)
{ // 保险丝未熔断
P1OUT |= BIT3; // 保险丝准备指示灯(黄色) 灭
IR_SHIFT(0x13);
DR_SHIFT16(0x7201) ;
delay(10000);
tdopin=1;
P2DIR |= BIT4;
IR_SHIFT(0x22);
P1OUT |= BIT2; // 接通Vpp,断开TDI
delay(50000);
IR_SHIFT(0x24);
delay(10000);
P1OUT &= ~BIT2; // 断开Vpp
tdopin = 0;
P2DIR &= ~BIT4;
ResetTAP();
delay(50000);
IR_SHIFT(0x14);
DR_SHIFT16 (0xAAAA);
if (tdovalue == 0x5555)
{ // 保险丝熔断成功
P2OUT &= ~BIT5 ; // 保险丝熔断成功指示(绿色)
for (k=1; k<=3; k++)
delay(50000) ; // 绿灯常亮
}
else
{ // 保险丝未熔断黄灯闪烁3 次
for(k=1;k<=3;k++)
{
P1OUT &= ~BIT3 ; // 保险丝准备指示灯(黄色)亮
delay(50000) ;
P1OUT |= BIT3 ; // 保险丝准备指示灯(黄色)灭
delay(50000) ;
}
}
}
else
{ // 保险丝已熔断
for(k=1;k<=3;k++)
{
P1OUT &=~BIT3 ; // 保险丝准备指示灯(黄色) 亮
P2OUT &=~BIT5 ; // 保险丝熔断成功指示(绿色)亮
delay(50000) ;
P1OUT |= BIT3 ; // 保险丝准备指示灯(黄色) 灭
P2OUT |= BIT5 ; // 保险丝熔断成功指示(绿色)灭
delay(50000) ;
}
}
P1OUT &= ~BIT3 ; // 保险丝准备指示灯(黄色)亮
}
}
}

本加密熔断器在实际应用中取得了非常理想的效果,可对MSP430 系列单片机的保险丝进行可靠而有效的熔

断,完全保护了MSP430单片机中的代码安全。在实际的使用中达到非常好的经济效益和社会效益。

结语

本系统可应用于整个MSP430系列单片机,具有功能强大、性能可靠、成本低、体积小等特点。完全可以替代目前市场上售价高达1000~2000元的编程器,具有非常广阔的应用前景和推广价值。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top