添加web
This commit is contained in:
180
web/layui/plugin/EwCodeUpdate.js
Normal file
180
web/layui/plugin/EwCodeUpdate.js
Normal file
@@ -0,0 +1,180 @@
|
||||
var ew_code_update_init_flag = 0;
|
||||
var EWB_CMD_CTR = 6;
|
||||
function EwCodeUpdate()
|
||||
{
|
||||
if(ew_code_update_init_flag == 0)
|
||||
{
|
||||
ShowCommMes("程序更新脚本加载成功",MesgType.MESG_TYPE_INFO);
|
||||
ew_code_update_init_flag =1;
|
||||
var content_str = '<div class="layui-row" style="line-height: 1.8rem; padding-top: 2px;">';
|
||||
|
||||
content_str += '<div class="layui-col-xs2">'
|
||||
content_str += '<button type="button" class="layui-btn layui-btn-normal plugin_bind_test" style="height: 1.8rem; line-height: 1.8rem;width: 90%;" onclick="EwCodeUpdateExcue()">升级程序</button>';
|
||||
content_str += '</div> ';
|
||||
|
||||
content_str += '<div class="layui-col-xs2">'
|
||||
content_str += '<button type="button" class="layui-btn layui-btn-normal plugin_bind_test" style="height: 1.8rem; line-height: 1.8rem;width: 90%;" onclick="EWB_Chg(1)">充电</button>';
|
||||
content_str += '</div> ';
|
||||
|
||||
content_str += '<div class="layui-col-xs2">'
|
||||
content_str += '<button type="button" class="layui-btn layui-btn-normal plugin_bind_test" style="height: 1.8rem; line-height: 1.8rem;width: 90%;" onclick="EWB_EraseCode()">擦除代码</button>';
|
||||
content_str += '</div> ';
|
||||
|
||||
content_str += '<div class="layui-col-xs2">'
|
||||
content_str += '<button type="button" class="layui-btn layui-btn-normal plugin_bind_test" style="height: 1.8rem; line-height: 1.8rem;width: 90%;" onclick="EWB_UpdateCode()">升级代码</button>';
|
||||
content_str += '</div> ';
|
||||
|
||||
content_str += '<div class="layui-col-xs2">'
|
||||
content_str += '<button type="button" class="layui-btn layui-btn-normal plugin_bind_test" style="height: 1.8rem; line-height: 1.8rem;width: 90%;" onclick="EWB_RunApp()">运行App</button>';
|
||||
content_str += '</div> ';
|
||||
|
||||
content_str += '<div class="layui-col-xs2">'
|
||||
content_str += '<button type="button" class="layui-btn layui-btn-normal plugin_bind_test" style="height: 1.8rem; line-height: 1.8rem;width: 90%;" onclick="EWB_AppSleep()">休眠App</button>';
|
||||
content_str += '</div> ';
|
||||
|
||||
content_str +='</div>';
|
||||
$("#Oper_View").append(content_str);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
async function EWB_AppSleep()
|
||||
{
|
||||
var param = [];
|
||||
var cmd_buf = Ep2_CmdData(1,60,param,0,0,EP2_CMM_RATE);
|
||||
ep2_excuedcmd = 0;
|
||||
epro2_oper.cmd = 0xFF;
|
||||
Ep2_SendCmd(cmd_buf);
|
||||
var rtv = await Ep2_WaitCmdExcu(epro2_oper.cmd,1000);
|
||||
if(rtv == 0){
|
||||
ShowCommMes("执行休眠成功",MesgType.MESG_TYPE_INFO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
async function Ep2_ChipRunBoot()
|
||||
{
|
||||
var param = [];
|
||||
param[0] =0x99;
|
||||
param[1] = 0x66;
|
||||
param[2] = 0xAA;
|
||||
param[3] = 0x55;
|
||||
var cmd_buf = Ep2_CmdData(0,61,param,0,0,EP2_CMM_RATE);
|
||||
ep2_excuedcmd = 0;
|
||||
epro2_oper.cmd = 0xFF;
|
||||
Ep2_SendCmd(cmd_buf);
|
||||
var rtv = await Ep2_WaitCmdExcu(epro2_oper.cmd,1000);
|
||||
if(rtv == 0){
|
||||
ShowCommMes("芯片复位执行成功",MesgType.MESG_TYPE_INFO);
|
||||
}
|
||||
}
|
||||
|
||||
async function EWB_Chg(sw)
|
||||
{
|
||||
var cmd_buf = [];
|
||||
cmd_buf[0] = sw;
|
||||
epro2_oper.ctr_cmd = EWB_CMD_CTR;
|
||||
epro2_oper.cmd = 0x01;
|
||||
Ep2_SendCmd(cmd_buf);
|
||||
await TransSleep(200);
|
||||
}
|
||||
async function EWB_EraseCode()
|
||||
{
|
||||
var cmd_buf = [];
|
||||
epro2_oper.ctr_cmd = EWB_CMD_CTR;
|
||||
epro2_oper.cmd = 0x02;
|
||||
Ep2_SendCmd(cmd_buf);
|
||||
await TransSleep(200);
|
||||
}
|
||||
|
||||
async function EWB_UpdateCode()
|
||||
{
|
||||
var cmd_buf = [];
|
||||
var code_addr = 0x1000;
|
||||
var code_size = 11*1024;
|
||||
var err_close = 0;//1 写入出现错误终止 0 错误继续执行
|
||||
var w_size = 0;
|
||||
cmd_buf[0] = code_addr & 0x0FF;
|
||||
cmd_buf[1] = (code_addr >> 8) & 0x0FF;
|
||||
cmd_buf[2] = code_size & 0x0FF;
|
||||
cmd_buf[3] = (code_size >> 8) & 0x0FF;
|
||||
cmd_buf[4] = err_close;
|
||||
//05334577249
|
||||
epro2_oper.ctr_cmd = EWB_CMD_CTR;
|
||||
epro2_oper.cmd = 0x06;
|
||||
Ep2_SendCmd(cmd_buf);
|
||||
var time_out = 0;
|
||||
ep2_excued_rtv = 0;
|
||||
ep2_excuedcmd = 0;
|
||||
while(time_out < 100)
|
||||
{
|
||||
if(ep2_excuedcmd == 0x06)
|
||||
{
|
||||
time_out = 0;
|
||||
|
||||
if(ep2_excued_rtv == 0)
|
||||
{
|
||||
w_size = ep2_recive_buf[11]*256+ep2_recive_buf[10];
|
||||
ShowCommMes("已经下载程序 "+w_size+" 字节",MesgType.MESG_TYPE_INFO);
|
||||
}else{
|
||||
|
||||
ShowCommMes("已经下载程序 "+w_size+" 字节 下载异常",MesgType.MESG_TYPE_ERROR);
|
||||
break;
|
||||
}
|
||||
|
||||
ep2_excuedcmd = 0;
|
||||
ep2_excued_rtv = 0;
|
||||
|
||||
}
|
||||
if(w_size >= code_size)
|
||||
{
|
||||
break;
|
||||
}
|
||||
await TransSleep(10);
|
||||
time_out++;
|
||||
}
|
||||
}
|
||||
async function EWB_RunApp()
|
||||
{
|
||||
var cmd_buf = [];
|
||||
epro2_oper.ctr_cmd = EWB_CMD_CTR;
|
||||
epro2_oper.cmd = 0x05;
|
||||
Ep2_SendCmd(cmd_buf);
|
||||
await TransSleep(200);
|
||||
}
|
||||
|
||||
async function EwCodeUpdateExcue()
|
||||
{
|
||||
//使能MTP
|
||||
epro2_oper.commaddr = 1;
|
||||
epro2_oper.cmd = 29;
|
||||
await Ep2_EnMTPWrite(1);
|
||||
await TransSleep(300);
|
||||
//用户程序跳转到bootloader
|
||||
await Ep2_ChipRunBoot();
|
||||
//关闭总线
|
||||
await Ep2_BusSwitch(0);
|
||||
await TransSleep(5000);
|
||||
//开总线
|
||||
epro2_oper.ep2_heartbeat_sw = 0;
|
||||
await Ep2_HeartBeat_SW();
|
||||
await TransSleep(100);
|
||||
await Ep2_BusSwitch(1);
|
||||
await TransSleep(300);
|
||||
//执行充电命令
|
||||
EWB_Chg(1);
|
||||
//等待充电
|
||||
await TransSleep(5000);
|
||||
|
||||
EWB_Chg(1);
|
||||
await TransSleep(5000);
|
||||
//擦除用户Code区
|
||||
EWB_EraseCode();
|
||||
await TransSleep(1000);
|
||||
//升级程序
|
||||
await EWB_UpdateCode();
|
||||
//跳转用户命令
|
||||
await TransSleep(1000);
|
||||
await EWB_RunApp();
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user