微控制器编程系统技术方案

技术编号:4343019 阅读:205 留言:0更新日期:2012-04-11 18:40
本实用新型专利技术涉及一种微控制器的编程系统,其包括服务器端,用于将数据代码文件加密并且传输该已加密的数据代码文件;可与所述服务器端远程连接的客户端,所述客户端可与所述服务器端通信;以及可与所述客户端本地连接的编程器,所述编程器经由所述客户端接收并储存所述已加密数据代码文件,并且当允许烧写次数值大于零时,编程器可将已加密的数据代码文件解密并将还原后的数据代码文件写入微控制器中,并在成功烧写一次后,将允许烧写次数值减去一作为更新后的允许烧写次数值记录在编程器中。本实用新型专利技术能让用户自行进行烧写以节省成本,同时对烧写次数进行控制,避免用户非法复制和无限制地烧写。(*该技术在2019年保护过期,可自由使用*)

【技术实现步骤摘要】

本技术涉及一种微控制器的编程系统,尤其是一种能对微控制器进行升级编程的系统。 
技术介绍
微控制器因为成本越来越低,而性能越来越强大,使得它的应用已经无处不在,广泛应用于工控、消费类电子、汽车等各个领域。在电机控制、条码阅读器/扫描器、消费类电子、游戏设备、电话、HVAC、楼宇安全与门禁控制、工业控制与自动化和白色家电(洗衣机、微波炉)等领域。 随着产品功能的改进,往往要对微控制器进行升级,这时需要把重新编程好的程序,例如HEX(十六进制)程序代码,烧写到微控制器内的存储器中。现有的编程设备,如图5所示,编程器50分别连接PC机40和微控制器(MCU)60,先操作PC机将HEX程序代码存储到编程器的存储器中,然后操作编程器将HEX程序代码烧写到微控制器中。 从现有的烧写过程可以看出,如果直接将HEX程序代码交给用户自行烧写,则不能控制用户对程序的非法复制,即会产生盗版问题。即便将HEX程序代码进行加密并对烧写次数进行限制再传送给用户,用户也可以在HEX程序代码的烧写次数达到上限值之后,重新将HEX程序代码再存储到编程器中,即可再次烧写,从而轻易地避开该加密和次数限制手段,达到无限制烧写的目的。为此,现在的做法只能由微控制器的生产厂家的技术人员,自行携带软件和编程设备到达用户处,进行现场烧写,不让用户直接接触到HEX程序代码,以避免发生非法复制的情形。 但是,这样的方式需要技术人员到达现场,大大增加了生产厂商的差旅成本,在需要服务的客户很多的情况下,也会耽误升级时间,造成客户的使用不便。 
技术实现思路
为此,本技术的所要解决的技术问题在于提供一种微控制器编程系统,其能让用户自行进行烧写以节省成本,同时对烧写次数进行控制,避免用户非法复制和无限制地烧写。 为了达成上述目的,本技术提供了一种微控制器的编程系统,包括:服务器端,用于将数据代码文件加密并且传输该已加密的数据代码文件;可与所述服务器端远程连接的客户端,所述客户端可与所述服务器端通信;以及可与所述客户端本地连接的编程器,所述编程器经由所述客户端接收并储存所述已加密数据代码文件。 较佳地,上述编程器还包括用于与所述客户端连接的传输接口,以及烧写接口。 较佳地,上述服务器端和所述客户端均为PC机,两者通过网络进行远程连接并通信;所述网络为互联网。 通过采用上述的微控制器的编程系统之后,可以在生产厂商的控制下,让客户自行对微控制器进行升级烧写,生产厂商不必再派出技术人员到现场进行服务,大大节省了-->差旅成本。另外,因为所传输的升级程序文件是进行了加密处理和次数限制并直接存储到编程器中的,客户无法自行提取该升级程序进行非法复制;同时也不能对升级程序进行无限制的复制。 附图说明图1为本技术的微控制器编程系统的结构示意图; 图2为本技术的微控制器编程方法的流程图; 图3为本技术的微控制器编程系统中编程器的模块图; 图4为本技术的另一实施例的编程方法的流程图; 图5为现有技术的微控制器编程系统示意图。 具体实施方式图1所示,为本技术的微控制器编程系统的结构示意图。该微控制器的编程系统包括:服务器端1、客户端2和编程器3。服务器端1与客户端2为远程连接并且可进行通信,客户端2与编程器3为本地连接且也可进行通信。在一实施例中,该服务器端1与客户端2可以是PC机,通过互联网实现远程连接;客户端2与编程器3之间通过USB接口实现本地连接。但本技术对此并不作限制,也可采用本领域技术人员熟知的其他连接手段,例如,通过局域网、无线网络等实现服务器端1与客户端2的远程连接;或者通过其他接口例如串行口、并行口等实现客户端2与编程器3之间的本地连接。此外,编程器3与微控制器4连接进行烧写。 本技术编程过程如图2所示,对微控制器4烧写之前,服务器端1将需要烧写到目标设备(即微控制器)中的HEX代码文件进行数据加密并加入允许烧写的次数值N(例如N=100,即表示该编程器最多可以烧写100台微控 制器);该加密后数据文件按照预定的协议通过客户端2传输并保存到编程器3中。 编程器3保存好加密数据文件之后,可解除与客户端2的本地连接,再与待烧写的微控制器4连接,进行实际的烧写。烧写前,需先判断允许烧写次数值N是否小于等于零。若N小于等于零,则不允许进行烧写;若N大于零,则允许进行烧写。这样可以防止编程器无限制地进行烧写,达到控制非法复制的目的。 烧写过程中,编程器3先将HEX代码文件解密,将解密还原后的HEX代码文件写入到微控制器4中。烧写成功一次后,将允许烧写次数值N减去1,并将该更新后的值N记录下来,为是否允许下一次烧写提供判断依据。 本技术编程器3的模块示意图如图3所示,其包括控制模块31、分别与该控制模块31相连的存储器32、烧写接口33和传输接口34。编程器3通过烧写接口33与微控制器4连接,通过传输接口34与作为客户端2的PC机相连。通过客户端2下载的加密HEX代码文件保存在存储器32中。其中,所述存储器32可以是Flash存储器,烧写接口33可为普通的16芯接口,传输接口34可为USB接口。 控制模块31包括一个主芯片310,该主芯片可采用单片机,例如NEC16位单片机,也可采用本领域技术人员所熟知的其他芯片,本技术对此不作限制。控制模块31还包括解密模块311,用于解密下载的加密HEX代码文件;烧写模块312,用于将根据预设的参数将还原后的HEX代码文件通过烧写接口33烧写到微控制器4中;以及记录判断模块313,用于根据允许烧写次数值N来控制解密模块311和烧写模块312的操作。即,当允许烧写-->次数值N大于零时,允许解密模块311和烧写模块312进行操作,并用于记录更新后的实际烧写次数;若允许烧写次数值小于等于零时,则不允许解密模块和烧写模块进行操作。 在另一较佳实施例中,所述记录判断模块31还可以通过时间参数来控制解密模块311和烧写模块312的操作。即,上述已加密数据代码文件中还可加入预设烧写有效期T。例如,T=30天,表示从数据文件接收完成起30天内允许进行烧写,超过30天,则数据代码文件失效,即便上述允许烧写限制值N大于零,也不允许烧写。 该过程的流程图如图4所示,其大部分步骤与图2所示相同,不同之处在于,加密文件时除了加入允许烧写次数限制值N之外,还加入了有效期T;在判断允许烧写次数值的步骤之后,再进行判断有效期T的步骤。即,在允许烧写次数N大于零的前提下,将当前时间与有效期T进行比较,未超出有效期T时,可以进行上述的烧写操作;超出有效期T时,则不允许进行烧写。这样可 以进一步防止非法复制。 上述判断允许烧写次数值的步骤可以在判断有效期T的步骤之后,换言之,可以先判断是否超出有效期,再判断允许烧写次数N是否大于零。 为了实现图4所示的时间控制功能,图3所示的控制模块31中还需包括时钟(图中未示),用于记录时间,以便判断当前时间是否超出有效期T。 作为本技术的另外实施方式,上述的允许烧写次数限制值N和有效期T可以预先设置在编程器3中,而不必通过加密数据文件一起传输到编程器3。 -->本文档来自技高网...

【技术保护点】
一种微控制器的编程系统,其特征在于,包括:服务器端,用于将数据代码文件加密并且传输该已加密的数据代码文件;可与所述服务器端远程连接的客户端,所述客户端可与所述服务器端通信;以及可与所述客户端本地连接的编程器,所述编程器经由所述客户端接收并储存所述已加密数据代码文件。

【技术特征摘要】
1.一种微控制器的编程系统,其特征在于,包括:服务器端,用于将数据代码文件加密并且传输该已加密的数据代码文件;可与所述服务器端远程连接的客户端,所述客户端可与所述服务器端通信;以及可与所述客户端本地连接的编程器,所述编程器经由所述客户端接收并储存所述已加密数据代码文件。2.根据权利要...

【专利技术属性】
技术研发人员:张中其苑维旺陆迪付秦铭远
申请(专利权)人:上海格州电子有限公司
类型:实用新型
国别省市:31[中国|上海]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1