import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=984;bottom=599;bgcolor=16777215) winform.add( button={cls="button";text="写入";left=538;top=50;right=714;bottom=162;font=LOGFONT(h=-56);z=10}; cbb1={cls="combobox";left=44;top=78;right=200;bottom=104;disabled=1;edge=1;font=LOGFONT(h=-16);items={};mode="dropdown";z=1}; cbb2={cls="combobox";left=217;top=79;right=377;bottom=105;disabled=1;edge=1;font=LOGFONT(h=-16);items={};mode="dropdown";z=2}; ed1={cls="edit";text="100";left=399;top=79;right=516;bottom=106;disabled=1;edge=1;font=LOGFONT(h=-16);num=1;z=3}; edit={cls="edit";left=40;top=213;right=697;bottom=508;edge=1;font=LOGFONT(h=-16);multiline=1;vscroll=1;z=7}; progress={cls="progress";left=40;top=129;right=514;bottom=149;edge=1;max=100;min=0;z=11}; stNum={cls="static";text="0";left=800;top=213;right=873;bottom=245;center=1;font=LOGFONT(h=-16);transparent=1;z=9}; stStatus={cls="static";text="等待写入";left=767;top=61;right=908;bottom=153;align="center";bgcolor=16777215;center=1;z=12}; static={cls="static";text="参考电压";left=44;top=48;right=117;bottom=80;center=1;font=LOGFONT(h=-16);transparent=1;z=4}; static2={cls="static";text="震动等级";left=219;top=49;right=292;bottom=81;center=1;font=LOGFONT(h=-16);transparent=1;z=5}; static3={cls="static";text="振动周期";left=398;top=49;right=471;bottom=81;center=1;font=LOGFONT(h=-16);transparent=1;z=6}; static4={cls="static";text="成功数量:";left=719;top=213;right=792;bottom=245;center=1;font=LOGFONT(h=-16);transparent=1;z=8} ) /*}}*/ import color; var refArr = {"0x0 1V0","0x1 1V1","0x2 1V2","0x3 1V25","0x4 2V0","0x5 2V2","0x6 2V4","0x7 2V5"}; var gainArr = {"Level0","Level1","Level2","Level3"} successnum = 0; winform.cbb1.clear(); for(k,v in refArr){ winform.cbb1.add(v); } winform.cbb1.selIndex = 4; winform.cbb2.clear(); for(k,v in gainArr){ winform.cbb2.add(v); } winform.cbb2.selIndex = 1; var reworkDisplay = function(str){ var nowtime = time(); nowtime.format="%H:%M:%S"; winform.edit.print(tostring(nowtime) ++ " " ++ str); } //import console; winform.button.oncommand = function(id,event){ winform.stStatus.text = "写入中"; winform.stStatus.bgcolor = 0x4FF4FF; winform.stStatus.redraw(); CT_SetDiagID(0x720,0x620); reworkDisplay("左侧写入中"); var val1,val2,val3; CT_Diag10(0x03); win.delay(20,1); var temp = winform.cbb1.selIndex - 1; CT_Diag2EVal1B(0x9002,temp); win.delay(100,1); winform.progress.pos = 5; var temp = winform.cbb2.selIndex - 1; CT_Diag2EVal1B(0x9003,temp); win.delay(100,1); winform.progress.pos = 10; var temp = tonumber(winform.ed1.text); CT_Diag2EVal1B(0x9004,temp); win.delay(100,1); winform.progress.pos = 15; var writedate = 0x20240304; CT_Diag2EVal4B(0xF199,writedate); win.delay(100,1); winform.progress.pos = 25; // CT_Diag10(0x01); win.delay(20,1); var str = "左侧读出数据:" var did = 0xF199; CT_Diag22(did); win.delay(100,1); winform.progress.pos = 35; var ret = GetReadThResp(did); if(type(ret) != type.table){ reworkDisplay("左侧数据错误"); winform.stStatus.text = "写入失败"; winform.stStatus.bgcolor = 0x4763FF; winform.stStatus.redraw(); return ; } //console.dumpJson(ret); if(#ret == 4){ var date = string.format("%02x%02x%02x%02x",ret[1],ret[2],ret[3],ret[4]) str+= "date=" ++ date; reworkDisplay(str); if(date != "20240304")// { reworkDisplay("左侧数据错误"); winform.stStatus.text = "写入失败"; winform.stStatus.bgcolor = 0x4763FF; winform.stStatus.redraw(); return ; } } else { reworkDisplay("ret = " ++ ret); reworkDisplay("左侧读取失败"); winform.stStatus.text = "写入失败"; winform.stStatus.bgcolor = 0x4763FF; winform.stStatus.redraw(); return ; } // //右侧 CT_SetDiagID(0x710,0x610); reworkDisplay("右侧写入中"); var val1,val2,val3; CT_Diag10(0x03); win.delay(20,1); var temp = winform.cbb1.selIndex - 1; CT_Diag2EVal1B(0x9002,temp); win.delay(100,1); winform.progress.pos = 50; var temp = winform.cbb2.selIndex - 1; CT_Diag2EVal1B(0x9003,temp); win.delay(100,1); winform.progress.pos = 55; var temp = tonumber(winform.ed1.text); CT_Diag2EVal1B(0x9004,temp); win.delay(100,1); winform.progress.pos = 60; CT_Diag2EVal4B(0xF199,writedate); win.delay(100,1); winform.progress.pos = 70; // CT_Diag10(0x01); win.delay(20,1); var str = "右侧读出数据:" var did = 0xF199; CT_Diag22(did); win.delay(100,1); winform.progress.pos = 80; var ret = GetReadThResp(did); if(type(ret) != type.table){ reworkDisplay("右侧数据错误"); winform.stStatus.text = "写入失败"; winform.stStatus.bgcolor = 0x4763FF; winform.stStatus.redraw(); return ; } if(#ret == 4){ var date = string.format("%02x%02x%02x%02x",ret[1],ret[2],ret[3],ret[4]) str+= "date=" ++ date; reworkDisplay(str); if(date != "20240304") { reworkDisplay("右侧数据错误"); winform.stStatus.text = "写入失败"; winform.stStatus.bgcolor = 0x4763FF; winform.stStatus.redraw(); return ; } } else { reworkDisplay("ret = " ++ ret); reworkDisplay("右侧读取失败"); winform.stStatus.text = "写入失败"; winform.stStatus.bgcolor = 0x4763FF; winform.stStatus.redraw(); return ; } reworkDisplay("两侧开关写入完成"); successnum+=1; winform.stNum.text = successnum; winform.progress.pos = 100; winform.stStatus.text = "写入成功"; winform.stStatus.bgcolor = 0x32CD32; winform.stStatus.redraw(); } winform.show(); win.loopMessage(); return winform;