您的位置 首页 硬件

MSP430加密熔丝烧断器的制造

引言MSP430系列单片机是德州仪器(TI)公司推出的一款16位超低功耗单片机。它能够在1.8~3.6V电压、1MHz频率的条件下运行,耗电电流在0.1~400…

导言

MSP430系列单片机是德州仪器(TI)公司推出的一款16位超低功耗单片机。它能够在1.8~3.6V电压、1MHz频率的条件下运转,耗电电流在0.1~400μA。在运算速度上,MSP430系列单片机能在8 MHz 晶振的驱动下,完结125ns的指令周期。16位的数据宽度、125ns的指令周期以及多功用的硬件乘法器相合作,能完结数字信号处理的某些算法(如FFT等) 。

在整合方面,MSP430系列单片机将很多的CPU外围模块集成在片内,有如下一些模块:看门狗(WDT) 、模仿比较器、串口、硬件乘法器、液晶驱动器、10位/12位/14位ADC、端口0~6 、根本定时器。其间定时器A、B均带有多个捕获/ 比较寄存器,一起可完结多路PWM 输出;模仿比较器与定时器合作,可便利地完结ADC;液晶驱动多达160 笔段;硬件ADC 模块在小于10 μs的速率下完结10~14 位的高速、高精度转化,一起供给采样/坚持与参阅电压;端口0、1、2能够接纳外部上升沿或下降沿的中止输入。

MSP430系列单片机的开发调试有多种技能计划,其间以JTAG和BOOTSTRAP(简称“BSL”) 办法最为便利。关于Flash型的MSP430单片机初期开发进行的仿真,只需求1台PC 机和1个JTAG操控器即可完结。进入产等第开发阶段,为了维护用户代码,烧断Flash的维护熔丝今后就无法再经过J TAG 口拜访单片机, 这时用户对Flash中的程序再进行检查或更新就只能经过BOOT2STRAP 进行。不必忧虑用户代码会走漏,BOOTSTRAP供给了32字节256位的暗码维护,能彻底确保代码的安全性。

1 熔断加密原理
MSP430 系列单片机选用JTAG(实践上称为IEEE1149.1或鸿沟扫描)接口技能,完结对单片机悉数存储器的拜访,包含程序Flash 、ROM、RAM ,并可对其进行擦除、读写。它能用于程序的下载,监测程序运用情况和各个变量与寄存器的运用情况, 并可对其进行修正。
JTAG接口需求4 根信号线、地线和电源线。详细信号线的界说如表1 所列。
表1 JTAG接口信号线
———————————————
引脚 方向 描绘
TMS 输入 JTAG状况机操控信号线
TCK 输入 JTAG时钟输入线
TDI/TCLK 输入 JTAG数据输入线/ TCL K输入
TDO 输出 JTAG数据输出线
———————————————
JTAG接口为程序的调试、仿真及监控带来了很大的便利,大大提高了编程功率,缩短了开发周期;但在程序测
试完结转化为产品推向市场时,就有必要对程序代码进行加密处理,避免程序代码的走漏。JTAG接口的安全性很差,只需契合J TAG 规范的操控器就能够将程序代码读出,所以有必要制止J TAG 功用。关于MSP430 系列单片
机,制止J TAG功用的途径是将单片机内部的加密保险丝熔断,熔断后的单片机就无法再运用JTAG功用,然后到达加密程序代码的意图。详细的JTAG及加密保险丝结构框图如图1所示。

MSP430系列单片机在上电复位时会经过TDI/TCLK端对保险丝进行检测,当保险丝无缺时,在TDI/TCL K和地之间会有1mA 的电流流过。保险丝检测呈现在上电复位今后TMS 端的第一个下降沿上,在第二个下降沿上会免除保险丝的检测,直到下一次的上电复位再进行保险丝检测,即在每一次的上电复位都会对保险丝进行检测。保险丝检测电流只要在保险丝检测办法时才会流过TDI/TCLK端,当检测不到保险丝电流时,JTAG功用就会失效,且这种加密办法是硬件办法的加密,一旦保险丝熔断,JTAG功用就永久失效了,无法再经过JTAG口拜访单片机,然后确保了单片机内代码的安全。

2 熔断加密的时序及办法
MSP430单片机保险丝的熔断有必要在特定的条件下进行。表2 列出了熔断保险丝所需的条件及详细参数。
表2 保险丝熔断条件及参数
———————————————————
保险丝电参数 min nor max
熔断时单片机供电电压VCC(fb)/V 2.5 3.3 3.6
熔断时施加在TDI/TCLK端的电压Vfb/V 6 6.5 7
熔断时施加在TDI/TCLK端的电流Ifb/mA 100
熔断时刻tfb/ms 1
———————————————————

在满意表2 所列的条件下,简略地将6.5V电压加在TDI/TCLK端上时,是无法熔断保险丝的,有必要在必定的时序及指令下才能够完结。下面是熔断保险丝所需的指令及时序:

IR_SHIFT(” IR_CN TRL_SIG_16BIT” )
DR_SHIFT_IN(0x7201) ;TDO 信号切换为TDI 功用。TDI信号端开释, TDO 切换为TDI
IR_SHIFT(” IR_PREPARE_BLOW” ) ;经过TDO 信号端传输
MsDelay(1) ;延时1ms。等候,衔接Vpp至TDI信号端
IR_SHIFT(” IR_EX_BLOW”) ;经过TDO 信号端给方针板发送指令
MsDelay(1) ;延时1 ms ,将Vpp 从TDI 信号端
;移开;切换TDI 信号端回来TDI
;功用,一起复位J TA G状况机

IR_SHIFT(” IR_CNTRL_SIG_16BIT” )为切换J TAG进入16位数据接纳形式;DR_ SHIFT_ IN(0x7201)为将TDO 信号切换为TDI功用,TDI信号开释,为接入熔断电压Vpp作预备;IR_SHIFT(” IR_ PREPARE_BLOW” )为设置MSP430 进入保险丝熔断办法;MsDelay(1)为延时1ms,一起衔接熔断电压Vpp 至TDI信号端;IR_ SHIFT(“IR_BX_BLOW” )为履行保险丝熔断;MeDelay(1) 为延时1ms,一起断开TDI端的熔断电压Vpp,TDI信号端切换回TDI功用,JATG状况机复位。保险丝加密熔断完结。

3 熔断加密器的规划与完结
熔断加密器能够完结对MSP430Flash单片机的编程、烧熔丝和BSL下载。能够挑选编程后是否熔断芯片内熔丝,进行加密;可自行设置暗码,彻底维护芯片内容;可进行彻底擦除编程和保存编程,经过BSL 办法读出方针CPU内的代码。

熔断加密器的硬件选用了MSP430F1111A作为体系芯片,完结对方针JTAG口的通讯操控、熔断电压V pp的加载与别离、方针MSP430 单片机中保险丝熔断指令的操控。在电源部分,熔断电压V pp 及100mA的熔断电流是在7806三端稳压芯片与地之间串接二极管IN4001来完结的;熔断电压Vpp的加载与别离经过继电器的通断来完结,并运用了3 个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元的编程器,具有十分宽广的运用远景和推行价值。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/yingjian/272899.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部