远程现场升级,自动生成您公司界面的升级软件,省电脑端开发人员,人工智能
人工智能时代,远程现场升级 = 【程序加密后传输 + 发布项目程序 + 自带USB直接下载】
===用户电脑端的程序自动生成,ISP / OTA
不需要增加电脑端的软件开发人员
用自带硬件USB,直连电脑的
8H8K64U 系列 / 32G12K128 系列
发布项目程序,自动生成【远程现场升级APP】;
程序加密后传输,让外部拦截的数据是加密文件,保护您的知识产权;
远程现场终端用户自己升级 = 【程序加密后传输 + 发布项目程序】
=================================================================
USB直接升级
STC32G12K128 的 USB不停电下载
STC8H8K64U 的 USB不停电下载
利用ID号控制下载的芯片,来控制下载数量
===最好的办法是,远程升级 = 【程序加密后传输 + 发布项目程序】
ID号加密
【新提醒】传统加密的笑话, STC对加密的延申发展,放心的【远程升级】,视频讲解 - 远程升级/【程序加密后传输+发布项目程序】/USB下载/ID号加密/ID号控制下载芯片 - 国芯论坛-STC全球32位8051爱好者互助交流社区 - STC全球32位8051爱好者互助交流社区 (stcaimcu.com)
1,传统加密的笑话
2,ID号软加密, 用户在自己的程序中,用户自己程序软件判断ID是否正常,
是否继续正常运行程序,还是异常运行程序故意捣乱
3,利用ID号简单的控制下载芯片的数量
4,程序加密后传输+发布项目程序是正途 = 【放心的远程升级】
===在远方您的客户自己升级您开发的系统,就是远程升级
===您的客户却拿不到您的原始程序
===最好用有硬件USB的RMB1.4的 8H8K64U 或者
===或者有硬件USB的32位8051, 32G12K128
===支持软件模拟硬件USB下载的 8H系列 / 32系列也行
发布项目程序,自动生成【远程现场升级APP】:
===人工智能时代,自动生成您公司自己的只需一个升级按钮的升级界面
===人工智能时代,自动生成您公司的下游客户的只需一个升级按钮的升级界面
这样您公司可以省去2个电脑端的软件开发人员
发布项目程序功能主要是将用户的程序代码与相关的选项设置打包成为一个可以直接对目标芯片进行下载编程的超级简单的用户自己界面的可执行文件。自动生成,无需专业人士开发,这是核心价值目标芯片的实际名称,您可以改成您自己的机器型号,如使用无字芯片生产===这样就不容易被猜出您用的哪个型号
上面这个专业开发人员使用的界面,是任何终端非技术使用者都会胆颤心惊的,太多强大的专业选项,无法立即理解
终端的使用者需要下面这个人工智能时代,包装起来的简单升级界面,
太多强大的专业选项,和最终的实际机器码,都被打包成一个供远程现场升级的应用程序APP
关于界面,用户可以自己进行定制(用户可以自行修改发布项目程序的标题、按钮名称以及帮助信息),同时用户还可以指定目标电脑的硬盘号和目标芯片的ID号,指定目标电脑的硬盘号后,便可以控制发布应用程序只能在指定的电脑上运行(防止烧录人员将程序轻易从电脑盗走,如通过网络发走,如通过U盘烤走,防不胜防,当然盗走你的电脑那就没办法那,所以STC的脱机下载工具比电脑烧录安全,能限制可烧录芯片数量,可前台文员小姐保安代为烧录),拷贝到其它电脑,应用程序不能运行。
同样的,当指定了目标芯片的ID号后,那么用户代码只能下载到具有相应ID号的目标芯片中(对于一台设备要卖几百万的产品特别有用---坦克,可以发给客户自己升级,不需冒着生命危险跑到战火纷飞的中东升级软件啦),对于ID号不一致的其它芯片,不能进行下载编程。
发布项目程序详细的操作步骤如下:1、首先选择目标芯片的型号2、打开程序代码文件3、设置好相应的硬件选项
4、试烧一下芯片,并记下目标芯片的ID号,如下图所示,该芯片的ID号即为“F784C000001364”(如不需要对目标芯片的ID号进行校验,可跳过此步)
5、设置自动增量(如不需要自动增量,可跳过此步)
6、设置RS485控制信息(如不需要RS485控制,可跳过此步)
7、点击界面上的“读取本机硬盘号”按钮,并记下目标电脑的硬盘号(如不需要对目标电脑的硬盘号进行校验,可跳过此步)
8、点击“发布项目程序”按钮,进入发布应用程序的设置界面。9、根据各自的需要,修改发布软件的标题、下载按钮的名称、 重复下载按钮的名称、自动增量的名称以及帮助信息10、若需要校验目标电脑的硬盘号,则需要勾选上“校验硬盘号”, 并在后面的文本框内输入前面所记下的目标电脑的硬盘号11、若需要校验目标芯片的ID号,则需要勾选上“校验芯片ID号”, 并在后面的文本框内输入前面所记下的目标芯片的ID号
12、最后点击发布按钮,将项目发布程序保存,即可得到相应的可执行文件。 发布的项目程序打界面如下图
如上各种显示内容可以修改的,给最终端的不懂技术的使用者,如停车场管理者自己升级停车场管理设备的软件,而不需要专业人员到场升级,极大的节省了维护成本。
如果一个停车场管理系统厂家一个月只使用500个芯片,但要开发这样的简洁而强大的包含了多种配置项和调教参数功能的升级软件,需要两个高薪的电脑端的软件开发工程师,这样平均每个芯片就要100元人民币的二次开发费用,还只能做初级的功能。并且其中很多复杂的功能一般工程师还不具备这样的开发能力。
这个功能极大的帮助了全体用户在电脑端应用软件研发的人力成本投入,减少普通用户开发电脑端软件的不可靠性。提升了开发效率,1个芯片增值2元都是合理的
程序加密后传输
===人工智能时代,让终端用户在远程现场升级,也不会泄密实际的机器码
上面的发布项目程序和传统的将目标机器码拿到现场升级相比,不需要专业人员到现场烧录程序,各种烧录配置项和目标机器代码都打包到一个可执行文件可执行文件,操作简单了很多,但由于从上位机电脑下传的烧录数据默认是源码传输,容易从电脑端被拦截后较容易被分析出实际的目标机器码,还是会存在程序泄密的风险,容易被仿制,使公司失去市场。要让已销售到终端使用者的系统产品让使用者自己升级程序而拿不到真正要更新的目标代码,让派去现场的维护人员也拿不到真正要更新的目标代码,防止被非法仿制产品,造成公司亏损,所以要将目标机器码经过加密再发布出去,这样传输时的目标代码是加密的代码,需要已内置对应终端程序开发商对应的密钥才能解密还原目标机器码,这样机器才能正常工作。我司开发的程序加密后传输技术就是为了防止未加密的目标机器码被扩散使用,造成公司核心软件泄密。所以进一步的发展是【发布项目程序】+【程序加密后传输】结合使用。下面介绍程序加密后传输的使用。
目前,所有的普通串口下载烧录编程都是采用明码通信的(电脑和目标芯片通信时,或脱机下载板和目标芯片通信时),问题:如果烧录人员通过分析下载烧录编程时串口通信的数据,高手是可以在烧录时在串口上引2根线出来,通过分析串口通信的数据分析出实际的用户程序代码的。当然用STC的脱机下载板烧程序总比用电脑烧程序强(防止烧录人员将程序轻易从电脑盗走,如通过网络发走,如通过U盘烤走,防不胜防,当然盗走你的电脑那就没办法那,所以STC的脱机下载工具比电脑烧录安全,让前台文员小姐烧,让老板娘烧都可以)。即使是STC全球首创的脱机下载工具,对于要防止天才的不法分子在脱机下载工具烧录的过程中通过分析串口通信的数据分析出实际的用户程序代码,也是没有办法达到要求的,这就需要用到最新的STC单片机所提供的程序加密后传输功能。程序加密后传输下载是用户先将程序代码通过自己的一套专用密钥进行加密,然后将加密后的代码再通过串口下载,此时下载传输的是加密文件,通过串口分析出来的是加密后的乱码,如不通过派人潜入你公司盗窃你电脑里面的加密密钥,就无任何价值,便可起到防止在烧录程序时被烧录人员通过监测串口分析出代码的目的。程序加密后传输功能的使用需要如下的几个步骤:1、生成并保存新的密钥
如下图,进入到“程序加密后传输”页面,点击“生成新密钥”按钮,即可在缓冲区显示新生成的256字节的密钥。然后点击“保存密钥”按钮,即可将生成的新密钥保存为以“.K”为扩展名的的密钥文件(注意:这个密钥文件一定要保存好,以后发布的代码文件都需要使用这个密钥加密,而且这个密钥的生成是非重复的,即任何时候都不可能生成两个完全相同的密钥,所以一旦密钥文件丢失将无法重新获得)。例如我们将密钥保存为“New.k”。
2、对代码文件加密加密文件前,需要先打开我们自己的密钥。若缓冲区中存放的已经是我们的密钥,则不要再打开。如下图,在“程序加密后传输”页面中点击“打开密钥”按钮,打开我们之前保存的密钥文件,例如“New.k”,然后返回到“程序加密后传输”页面中点击“加密代码”按钮,如下图所示,
首先会弹出“打开源文件(未加密)”的对话框,此时选择的是原始的未加密的代码文件
点击打开按钮后,马上有会弹出一个类似的对话框,但此时是对加密后的文件进行保存的对话框。如下图所示,点击保存按钮即可保存加密后的文件。
3、将用户密钥更新到目标芯片中
更新密钥前,需要先打开我们自己的密钥。若缓冲区中存放的已经是我们的密钥,则不要再打开。如下图,在“自定义加密下载”页面中点击“打开密钥”按钮,打开我们之前保存的密钥文件,例如“New.k”。密钥打开后,如下图所示,勾选上“下载用户代码前先更新用户密钥”选项和“本次下载的代码为加密代码”的选项,然后打开我们之前加密过后的文件,打开后点击界面左下角的“下载/编程”按钮,按正常方式对目标芯片下载完成即可更新用户密钥。
4、加密更新用户代码
密钥更新成功后,目标芯片便具有接收加密代码并还原的功能。此时若需要再次升级/更新代码,则只需要参考第二步的方法,将目标代码进行加密,然后如下图
对于一片新的STC单片机,可将步骤3和步骤4合并完成,即将密钥更新到目标单片机的同时也可将加密后的代码一并下载到单片机中,若已经执行过步骤3(即已经将密钥更新到目标芯片中了),则后续的代码更新就只需要按照步骤4,只需要在“程序加密后传输”页面中选择“本次下载的代码为加密代码”的选项(“下载用户代码前先更新用户密钥”选项不需要选了),然后打开我们之前加过密后的文件,打开后点击界面左下角的“下载/编程”按钮,按正常方式对目标芯片下载即可完成用用户自己专用的加密文件更新用户代码的目的(防止在烧录程序时被烧录人员通过监测串口分析出代码的目的)。
远程升级 = 【程序加密后传输 + 发布项目程序】
===人工智能时代的远程现场升级,
是传输程序的过程当中不泄露机器码的升级
发布项目程序与程序加密后传输两项新的特殊功能可以结合在一起使用。首先程序加密后传输可以确保用户代码在烧录编程时串口通信传输过程当中的保密性,而发布项目程序可实现让最终使用者远程升级功能(方案公司的人员不需要亲自到场)。所以两项功能结合起来使用,非常适用于方案公司/生产商在软件需要更新时,让最终使用者自己对终端产品进行软件更新的目的,又确保现场烧录人员无法通过串口分析出有用程序,强烈建议方案公司使用。发布项目程序可参考5.16.1章节步骤,示意图如下:
程序加密后传输可参考5.16.2章节步骤,示意图如下:
点击上面的“下载/编程”按钮就可将加密代码和密钥一同烧录到目标芯片中这样第一次生产的机器所用到的芯片在机器生产时芯片就加入了终端开发者自己的密钥,将来可以在最终使用现场,对应的机器还原已加密的文件。这样开发者就可以将加密后的文件用发布项目程序的方式发布给其客户的操作工自己升级程序,操作简单方便,程序也得到了保密,终端现场操作人员也拿不到系统机器厂商开发的软件的真正机器码。省去了要派维护人员去现场升级的压力,并且派去的人员如果不能做到保密,也是简易不要简单的直接给未加密的机器码,有被扩散的风险。如果一个停车场管理系统厂家一个月只使用500个芯片,但要开发这样的保证自己程序在终端现场升级而不被泄密,就需要专门的电脑端的软件开发工程师,这样平均到每个芯片身上就需要几十元做用户自己的加密后传输程序的开发费用,还不一定做的好,并且如果每个月采购的芯片数量少,如每月500个,则每个芯片均摊的研发费用是很高的。我们这个功能极大的帮助了全体用户在电脑端应用软件研发的人力成本投入,减少了不可靠性。对用户的增值是巨大的!
硬件USB直接升级
===或者软件模拟USB升级,人工智能时代
自带硬件USB,支持直接USB仿真和USB下载
因为走的是 USB-HID 协议升级下载程序,不需要安装任何驱动USB-ISP下载程序步骤:1、按下板子上的P3.2/INT0按键,就是P3.2接地2、给目标芯片重新上电,不管之前是否已通电。
===电子开关是按下停电后再松开就是上电
等待STC-ISP下载软件中自动识别出“STC USB Writer (HID1)” ,识别出来后, 就与P3.2状态无关了,这时可以松开P3.2按键
===传统的机械自锁紧开关是按上来停电,按下去是上电3、点击下载软件中的“下载/编程”按钮 (注意:USB下载与串口下载的操作顺序不同)
下载成功 !
===另外从用户区软复位到系统区也是等待USB下载。
STC32G12K128 的 USB不停电下载
STC32超级简单的USB-CDC虚拟串口应用及不停电下载
===用差分信号线 【D-/P3.0, D+/P3.1】直接接到电脑USB口做串口通信
1.1 USB-CDC虚拟串口概述
当单片机需要和电脑之间进行数据交换时,首选一般都是串口通讯。32位8051,STC32G12K128单片机内置USB控制器和收发器。当用户代码中嵌入USB-CDC代码后,使用USB线将单片机与电脑直接相连接,在电脑端就可识别出【USB-CDC虚拟串口】,【USB-CDC虚拟串口】就是【串口】, 就是【最简单最强大的串口】。USB-CDC虚拟串口和传统串口相比有如下优点:Ø数据传输更快: USB-CDC虚拟串口忽略传统串口的波特率,传输速度的比特率即为全速USB的通讯速度12MBPS(即每秒12M位)Ø使用更简单便捷:USB-CDC虚拟串口忽略传统串口的起始位、停止位等冗余信息Ø数据传输更可靠:USB-CDC虚拟串口丢弃传统串口简单的软件奇偶校验机制,USB-CDC虚拟串口数据传输时有USB硬件CRC校验, 以及校验出错重传机制,保证数据100%正确Ø自动缓存数据: USB-CDC虚拟串口会自动缓存数据。单片机在没有处理完成上位机下传的上一笔数据时,如果此时上位机又有 新的数据下传,虚拟串口会自动将新的数据缓存,从而保证数据100%不会丢失或被覆盖。
【D-/P3.0, D+/P3.1】直连电脑USB-CDC串口/就是串口通信,不停电下载@STC32 - ISP下载/做自己的ISP - 国芯论坛-STC全球32位8051爱好者互助交流社区 - STC全球32位8051爱好者互助交流社区 (stcaimcu.com)
STC8H8K64U的 USB不停电下载
STC8H超级简单的USB-CDC虚拟串口/就是串口应用及不停电下载 !
===用差分信号线 【D-/P3.0, D+/P3.1】直接接电脑USB口串口通信
有源代码, 完整的工程项目下载
1.1 USB-CDC虚拟串口概述
当单片机需要和电脑之间进行数据交换时,首选一般都是串口通讯。1T 8051, STC8H8K64U单片机内置USB控制器和收发器。当用户代码中嵌入USB-CDC代码后,使用USB线将单片机与电脑直接相连接,在电脑端就可识别出【USB-CDC虚拟串口】,【USB-CDC虚拟串口】就是【串口】, 就是【最简单最强大的串口】USB-CDC虚拟串口和传统串口相比有如下优点:Ø数据传输更快: USB-CDC虚拟串口忽略传统串口的波特率,传输速度的比特率即为全速USB的通讯速度12MBPS(即每秒12M位)Ø使用更简单便捷:USB-CDC虚拟串口忽略传统串口的起始位、停止位等冗余信息Ø数据传输更可靠:USB-CDC虚拟串口丢弃传统串口简单的软件奇偶校验机制,USB-CDC虚拟串口数据传输时有USB硬件CRC校验, 以及校验出错重传机制,保证数据100%正确Ø自动缓存数据: USB-CDC虚拟串口会自动缓存数据。单片机在没有处理完成上位机下传的上一笔数据时,如果此时上位机又有新的数据下传, 虚拟串口会自动将新的数据缓存,从而保证数据100%不会丢失或被覆盖。
【新提醒】【D-/P3.0, D+/P3.1】直连电脑USB-CDC串口/就是串口通信,不停电下载@STC8H - ISP下载/做自己的ISP - 国芯论坛-STC全球32位8051爱好者互助交流社区 - STC全球32位8051爱好者互助交流社区 (stcaimcu.com)
人工智能时代:
控制下载数量,利用ID号控制下载的芯片,如何自动获得ID号
===最好的办法是,远程升级 = 【程序加密后传输 + 发布项目程序】
5.18.5如何简单的控制下载次数,
通过ID号必须对,来限制实际可以下载的MCU,控制数量 ———【下载日志 + 发布项目程序】 高级应用 第一步、打开 下载日志 记录功能
1、打开“编程”菜单2、点击“在线下载日志记录设置”,打开下面窗口
1、勾选“使能在线ISP下载日志记录功能”2、点击“浏览”按钮选择日志文件存放目录3、点击“确定”进行确认设置完成后,接下来所有的ISP在线下载的下载信息都会自动记录到文件中,日志文件的文件名为当天的日期,扩展名为log 第二步、从下载日志文件中导出ID号列表到列表文件(注:Ver6.92D版本及之后的ISP软件可自动从列表中导入ID号,如需自动导入可跳过此步)
1、从日志文件存放目录中打开目标日期的日志文件(例如打开2023年8月22日的日志,则打开日志文件存放目录中的“20230822.log”)。日志记录格式如下图:
2、从日志文件中复制ID号到一个列表文件中,如下图
第三步、发布项目程序时导入列表文件中的ID(如果需要从日志中自动导入,可跳到第四步)
1、点击STC-ISP下载界面中的“发布项目程序”按钮2、勾选“校验芯片ID号”3、点击“导入ID号”4、选择“从列表文件中导入”5、打开上一步导出的列表文件
6、列表导入成功后,在下面的ID号文本框内会显示刚刚导入的全部ID号
7、最后点击“发布”按钮即可发布项目。
第四步、发布项目程序时从日志文件中自动导入ID
1、点击STC-ISP下载界面中的“发布项目程序”按钮2、勾选“校验芯片ID号”3、点击“导入ID号”4、选择“从下载日志文件中导入”
5、打开日志保存目录6、设置需要导入日志的起始时间和结束时间7、选择需要导入的ID号的序号8、列表导入成功后,在下面的ID号文本框内会显示刚刚导入的全部ID号
9、最后点击“发布”按钮即可发布项目。============================================================================================
如果你的客人,说他自己提前买了芯片,让你给他程序自己下载,你要控制下载的芯片数量,你就先发布个只有部分功能的程序给他,然后对方说程序好像不完整,你就请他将下载日志发你分析:这样你就获得了他实际买了多少MCU和对应MCU的ID号
你再根据获得的芯片ID号文件,发布项目程序给他远程现场升级,但ID号不对则不升级,达到了控制升级次数的目的
【新提醒】传统加密的笑话, STC对加密的延申发展,放心的【远程升级】,视频讲解 - 远程升级/【程序加密后传输+发布项目程序】/USB下载/ID号加密/ID号控制下载芯片 - 国芯论坛-STC全球32位8051爱好者互助交流社区 - STC全球32位8051爱好者互助交流社区 (stcaimcu.com)
人工智能时代:
ID号加密,是实现:
仿制者从你车间的电脑中拷走了你实际的机器码,或买走了你的机器码 !!!
你诱敌深入,让敌人大量仿制,几个月后,甚至1年后 !!!
程序判断ID号不对,时间或开机次数也到了你反制仿制者的时间了,就断断续续异常 !
让对方借钱大量仿制后,倾家荡产