一种无线升级DMX控制盒的系统的制作方法

文档序号:17727026发布日期:2019-05-22 02:35阅读:210来源:国知局
一种无线升级DMX控制盒的系统的制作方法
本发明属于舞台和景观灯具领域,特别是涉及一种无线升级dmx控制盒的领域。
背景技术
:目前专业舞台和景观灯具应用越来越广泛,虽然它们采用的是与传统照明灯具不同的dmx512控制协议,但是相关的无线功能也依然再被开发和应用中。在目前的无线控制或者升级dmx灯具的系统中,主要是通过控制盒(或控制器),来实现手机或者电脑对dmx灯具的无线升级和控制,如专利文献cn105208752b、cn207075024u、cn103281828a中所述,而实际上控制盒(或控制器)本身也是需要不断升级程序来完善功能的。在专利文献cn105208752b一种led灯具无线控制系统及控制方法,其说明书具体实施方式中提到“使用wifi升级dfi控制器的应用程序,包括步骤:a.使用keil编译dfi控制器源代码生成*.bin格式的文件;b.设置dfi控制器菜单dfiupdate->updatesetting->myself,对dfi升级;c.通过uploadfirm应用程序对编译好的*.bin格式文件进行加密;d.使用uploadfirm连接上dfi控制器的wifi;e.通过wifi把加密好的文件发送到dfi控制器;f.dfi控制器把无线发送过来的数据暂存到外部储存ic里面;g.wifi下载完成所有的数据后,dfi控制器再读取外部储存ic里面的数据对dfi控制器的mcu写操作,直到完成。”通过步骤e、f、g可知,其升级dfi控制器是需要把数据先暂存在外部存储ic,等下载完成所有数据后才开始升级的,即其dfi控制器必须包括而外部存储ic。上述专利文献公开的技术方案之所以没有实现对dfi控制器直接升级,而必须增加ic,提高成本采用间接升级,其原因在于目前的舞台和景观灯具厂商相对较少,且主要的技术资源均倾斜在舞台和景观灯具产品的研发上,对于控制盒此种外围的产品没有进行创新的动力和较强的意愿,而实际上此技术是可以实现的,从而降低成本,并且简化dmx控制盒升级过程。在此对部分公知技术进行说明,目前mcu一般均包括ram(2)和flash(1),flash(1)用于存储用户程序和需要永久保存的数据,掉电后数据不会变;而ram(2)是数据存储器,跟计算机里面的内存差不多,主要是用来存放程序运行中的过程数据,掉电后就会丢失之前的数据。详情见http://www.21ic.com/app/mcu/201807/782730.htm。目前较为普遍的mcu内flash(1)的程序编写均采用iap方案,即将mcu的flash(1)内的用户程序的代码分为两部分,两部分区域各存放一个程序,一个叫bootloader(引导加载程序),俗称启动代码(3),另一个较userapplication(用户应用程序),在需要变更userapplication(用户应用程序)时只需要通过触发bootloader(启动代码(3))对userapplication(用户应用程序)的擦除和重新写入即可完成用户应用程序的更换。详情见https://blog.csdn.net/siisbin27/article/details/79547561。结合上述公知技术,对前文专利文献cn105208752b中f、g步骤进行描述,如图1所示,将新版本程序(41)先全部存储在ic内,然后通过触发mcu中flash(1)内的启动代码(3),将flash(1)的用户应用程序即旧版本程序(4)擦除,重新将ic内的新版本数据(41)写入flash(1);其之所以要通过ic作为中间过渡体,是因为直接以新版本程序(41)覆盖掉旧版本程序(4),而少了触发flash(1)内的启动代码(3)这个步骤,会引起程序自我运行的混乱,即启动代码(3)起的是一个导向的作用。于是可知要实现不通过ic而实现同步的、实时的直接将升级数据写入flash(1)内,需确保在擦除旧版本程序(4)的时候,程序不会出现混乱。技术实现要素:本发明的目的在于提供一种无线升级dmx控制盒的系统,实现外部设备对dmx控制盒的无线升级。本发明的目的之二在于提供一种无线升级dmx控制盒的系统,实现升级数据直接从外部设备到mcu的直接传送,而不需要再经过另外的电子元件ic进行中转,从而既节省成本,又精简了过程。本发明的目的是通过以下技术方案来实现的,一种无线升级dmx控制盒的系统,其特征在于,包括以下步骤:(1)编译、加密,即在电脑上编译好dmx控制盒的升级文件,并加密;(2)发送给外部设备,即通过电脑将加密后的升级文件发送给外部设备;(3)进入升级界面,即打开外部设备中的dmx控制软件,并进入软件中的升级界面;(4)选择、发送,即在软件升级界面上点击需要升级的dmx控制盒的升级文件,触发数据自动处理,然后外部设备再将处理后的升级文件发送给dmx控制盒;(5)识别、升级,即dmx控制盒识别升级文件后,开始自动升级。进一步的,所述步骤(2)中的升级文件包括dmx控制盒信息、升级数据、密钥。进一步的,所述步骤(4)中的数据自动处理包括自动解密和数据打包。进一步的,所述自动解密包括提取密钥,获得dmx控制盒信息和升级数据。进一步的,所述数据打包包括将自动解密后的数据进行处理后形成新的数据包,新的数据包包括以下新增内容:身份信息、长度、指令、帧内容、校验位。进一步的,所述步骤(5)中的识别指确认升级文件是否为本dmx控制盒所适用的,所述步骤(5)中dmx控制盒的自动升级,是将接收到的升级文件同步的、实时的写入。进一步的,所述dmx控制盒包括mcu、wifi无线模块、电源模块、dmx模块;所述mcu包括ram(2)和flash(1);所述falsh里包括启动代码(3)和用户应用程序;所述wifi无线模块用于外部设备与控制盒之间建立wifi连接;所述电源模块用于给dmx控制盒提供启动电源;当电源模块为dmx控制盒每一次开始供电时,所述启动代码(3)均会将用户应用程序自动拷贝到ram(2)里;所述dmx模块包括dmx512电路。进一步的,所述ram(2)内存大于等于192k。进一步的,所述外部设备是手机或者电脑。进一步的,所述手机与dmx控制盒之间通过wifi连接;所述电脑包含无线网卡,与dmx控制盒之间通过wifi连接。本发明的技术相对于常规的无线升级dmx控制盒有以下不同和明显优势:1-通过外部设备和dmx控制盒之间的wifi连接,实现了外部设备对dmx控制盒的无线升级。2-外部设备传输的升级数据直接写入到dmx控制盒里的mcu内,不需要先存储到ic里,让整个升级过程更精简。附图说明图1为专利文献cn105208752b中f、g步骤示意图。图2为本发明的升级流程图。图3为本发明的示意图。图4为本发明的升级数据写入mcu过程示意图。图中标号说明:1-flash;2-ram;3-启动代码;4-旧版本程序;41-新版本程序。具体实施方式下面将结合附图和实施例对本发明作进一步的描述。如图2所示,一种无线升级dmx控制盒的系统,其特征在于,包括以下步骤:(1)编译、加密,即在电脑上编译好dmx控制盒的升级文件,并加密;在本实施例中,加密方式为:先按照约定方式对数据文件(hex文件或者bin文件)进行一次加密,然后再产生一个随机数作为秘钥,把dmx控制盒信息和加了一次密的数据放在一起用此随机数进行第二次加密,以此作为一个对外提供的升级文件,秘钥隐藏在文件中;所述升级文件包括dmx控制盒信息、升级数据、密钥。(2)发送给外部设备,即通过电脑将加密后的升级文件发送给外部设备;其中,所述升级文件包括dmx控制盒信息、升级数据、密钥;其中,所述外部设备是手机或者电脑,所述手机与dmx控制盒之间通过wifi连接;所述电脑包含无线网卡,与dmx控制盒之间通过wifi连接。(3)进入升级界面,即打开外部设备中的dmx控制软件,并进入软件中的升级界面。(4)选择、发送,即在软件升级界面上点击需要升级的dmx控制盒的升级文件,触发数据自动处理,然后外部设备再将处理后的升级文件发送给dmx控制盒;其中,所述数据自动处理包括自动解密和数据打包;所述自动解密包括提取密钥,获得dmx控制盒信息和升级数据;所述数据打包包括将自动解密后的数据进行处理后形成新的数据包,新的数据包包括以下新增内容:身份信息、长度、指令、帧内容、校验位,它们的数据结构如下:帧头帧长度指令帧内容校验位0x123456780x12340x030xaabb……0xabcd其中,帧头是固定4个字节,包含本包数据的身份信息;帧长度是固定2个字节,包括指令+帧内容+校验位的总长度;指令是固定1个字节,其表达升级命令;帧内容是不固定的n个字节,是与指令对应的数据内容,还包含要升级的dmx控制盒的身份信息;校验位是固定的2个字节,是对指令+帧内容的和校验。(5)识别、升级,即dmx控制盒识别升级文件后,开始自动升级;其中,所述识别指确认升级文件是否为本dmx控制盒所适用的,其通过上述身份信息、长度、指令、帧内容、校验位来确认;所述自动升级,是将接收到的升级文件同步的、实时的写入。如图3所示,dmx控制盒包括mcu、wifi无线模块、电源模块、dmx模块;所述mcu包括ram(2)和flash(1);所述falsh里包括启动代码(3)和用户应用程序;所述wifi无线模块用于外部设备与控制盒之间建立wifi连接;所述电源模块用于给dmx控制盒提供启动电源;当电源模块为dmx控制盒每一次开始供电时,所述启动代码(3)均会将用户应用程序自动拷贝到ram(2)里;所述dmx模块包括dmx512电路。如图4所示为本发明dmx控制盒升级过程中mcu内部的变化过程的实施例,对其进行详述如下,以便于更透彻的理解本技术方案是如何实现实时升级dmx控制盒的。步骤1、当电源模块开始工作,控制盒上电时,mcu中flash(1)内的启动代码(3)自动将用户应用代码(即旧版本程序(4))拷贝到ram(2)中,此过程要求ram(2)的内存能够容纳下旧版本程序(4)的体积,要求ram(2)内存大于等于192k,本实施例的ram(2)为行业内常用的意法半导体公司的mcu,型号为stm32f407zg,ram(2)内存=192k;依据前面所述的公知技术,可以理解的是控制盒掉电后ram(2)的数据就会丢失。步骤2、当新版本数据由外部设备传送到dmx控制盒时,新版本程序(41)就会实时的被存储在mcu中的flash(1)内的应用代码区域,即擦除掉旧版本程序(4),重新写入新版本程序(41);而因为此时在mcu的ram(2)依然有旧版本程序(4),所以启动代码(3)可以调用旧版本程序(4)维持dmx控制盒本身的自动运行,而不会产生运行混乱,此点的原理与专利文献cn105208752b中f、g步骤提到的为什么先要将新版本程序(41)存储到ic中的原理是一样的。步骤3、当外部设备对dmx控制盒实时升级完毕后,重启下dmx控制盒的电源,重新上电,则dmx控制盒内的mcu中,在flash(1)内的应用代码区域内,原来的旧版本程序(4)就会自动丢失,而此时启动代码(3)又会自动将用户应用代码(即新版本程序(41))拷贝到ram(2)内;即mcu中的flash(1)内的用户应用程序和ram(2)内的程序均为新版本程序(41)。可以理解的是,当后续再升级更新的版本时,其程序更新原理是一样的。以上实施例仅是对本发明的技术方案做进一步说明,而非限制本发明的保护范围。对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1