本发明电子通讯技术领域,具体涉及一种mcu用户程序代码的保护结构及其熔断测试方法。
背景技术:
mcu(微控制器)的用户程序代码存储在mcu的片上闪存中,而常见的用户程序的读取方法是通过调试接口访问mcu的片上闪存,从而把用户程序复制出来,而用户程序往往是系统的核心价值所在,通常不希望被第三方读取,因此需要一种mcu用户程序代码的保护结构,防止用户程序被复制。
技术实现要素:
本发明的目的在于克服上述不足问题,提供一种mcu用户程序代码的保护结构及其熔断测试方法。
本发明为实现上述目的所采用的技术方案是:一种mcu用户程序代码的保护结构,mcu的调试模块通过中央处理单元与片上闪存连通,所述调试模块与调试接口连通,所述调试模块与调试接口之间连有电子熔丝,所述电子熔丝连有电子熔丝控制器。
所述电子熔丝控制器设置有地址寄存器、使能熔断寄存器,所述地址寄存器用于写入需要熔断的电子熔丝的地址,所述使能熔断寄存器用于熔断电子熔丝。
所述调试接口对应地址寄存器偏移地址比特1,当使能熔断寄存器写入比特1,电子熔丝熔断。
一种mcu用户程序代码的保护结构的熔断测试方法,包括以下步骤:
s1、mcu正常上电,通过mcu的程序配置并打开电子熔丝控制器;
s2、将需要熔断的电子熔丝的地址写入电子熔丝控制器中的地址寄存器中,调试接口对应地址寄存器偏移地址比特1;
s3、电子熔丝控制器的使能熔断寄存器写入比特1,从而将与调试接口连接的电子熔丝熔断;
s4、mcu重新上电,调试接口尝试连接调试模块,如果电子熔丝正常熔断,则调试接口无法连接mcu,如果调试接口仍可以连接mcu,则电子熔丝没有正常熔断,继续重复s2、s3步骤,直至电子熔丝熔断为止。
本发明的特点是:通过熔断电子熔丝将调试接口的通路熔断,永久除能调试接口,不能恢复,从而达到保护片上闪存中用户程序代码的目的,有效防止用户程序被复制。
附图说明
图1是本发明的一种mcu用户程序代码的保护结构的示意图。
图2是本发明的一种mcu用户程序代码的保护结构的熔断测试方法的流程图。
具体实施方式
如图1所示,本发明为一种mcu用户程序代码的保护结构,mcu的调试模块通过中央处理单元与片上闪存连通,所述调试模块与调试接口连通,为防止第三方通过调试接口访问mcu上的片上闪存,在所述调试模块与调试接口之间连有电子熔丝,所述电子熔丝连有电子熔丝控制器,所述电子熔丝控制器设置有地址寄存器、使能熔断寄存器,所述地址寄存器用于写入需要熔断的电子熔丝的地址,所述使能熔断寄存器用于熔断电子熔丝,将需要熔断的电子熔丝的地址写入电子熔丝控制器中的地址寄存器中,调试接口对应地址寄存器偏移地址比特1,电子熔丝控制器的使能熔断寄存器写入比特1时,将电子熔丝熔断,从而将相对应的调试接口通路熔断,第三方无法通过调试接口访问mcu上的片上闪存,即无法复制用户程序代码。
如图2所示,本发明为一种mcu用户程序代码的保护结构的熔断测试方法,包括以下步骤:
s1、mcu正常上电,通过mcu的程序配置并打开电子熔丝控制器;
s2、将需要熔断的电子熔丝的地址写入电子熔丝控制器中的地址寄存器中,调试接口对应地址寄存器偏移地址比特1;
s3、电子熔丝控制器的使能熔断寄存器写入比特1,从而将与调试接口连接的电子熔丝熔断;
s4、mcu重新上电,调试接口尝试连接调试模块,如果电子熔丝正常熔断,则调试接口无法连接mcu,如果调试接口仍可以连接mcu,则电子熔丝没有正常熔断,继续重复s2、s3步骤,直至电子熔丝熔断为止。
通过熔断测试保证mcu用户程序代码的保护结构均可正常熔丝,可有效防止mcu的片上闪存中的用户程序代码被复制。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
1.一种mcu用户程序代码的保护结构,mcu的调试模块通过中央处理单元与片上闪存连通,所述调试模块与调试接口连通,其特征在于:所述调试模块与调试接口之间连有电子熔丝,所述电子熔丝连有电子熔丝控制器。
2.如权利要求1所述的一种mcu用户程序代码的保护结构,其特征在于:所述电子熔丝控制器设置有地址寄存器、使能熔断寄存器,所述地址寄存器用于写入需要熔断的电子熔丝的地址,所述使能熔断寄存器用于熔断电子熔丝。
3.如权利要求2所述的一种mcu用户程序代码的保护结构,其特征在于:所述调试接口对应地址寄存器偏移地址比特1,当使能熔断寄存器写入比特1,电子熔丝熔断。
4.一种mcu用户程序代码的保护结构的熔断测试方法,其特征在于包括以下步骤:
s1、mcu正常上电,通过mcu的程序配置并打开电子熔丝控制器;
s2、将需要熔断的电子熔丝的地址写入电子熔丝控制器中的地址寄存器中,调试接口对应地址寄存器偏移地址比特1;
s3、电子熔丝控制器的使能熔断寄存器写入比特1,从而将与调试接口连接的电子熔丝熔断;
s4、mcu重新上电,调试接口尝试连接调试模块,如果电子熔丝正常熔断,则调试接口无法连接mcu,如果调试接口仍可以连接mcu,则电子熔丝没有正常熔断,继续重复s2、s3步骤,直至电子熔丝熔断为止。