减小延迟

This commit is contained in:
sunbeam 2023-07-03 15:34:43 +08:00
parent cb2a256dc5
commit a32c87b161
4 changed files with 32 additions and 15 deletions

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<project ver="10" name="CAN_Bootloader" libEmbed="true" icon="res\icon.ico" ui="win" output="CAN_Bootloader.exe" CompanyName="单位名称" FileDescription="CAN_Bootloader" LegalCopyright="Copyright (C) 作者 2022" ProductName="CAN_Bootloader" InternalName="CAN_Bootloader" FileVersion="0.0.0.03" ProductVersion="0.0.0.03" publishDir="/dist/" dstrip="false" local="false" ignored="false">
<project ver="10" name="CAN_Bootloader" libEmbed="true" icon="res\icon.ico" ui="win" output="CAN_Bootloader.exe" CompanyName="单位名称" FileDescription="CAN_Bootloader" LegalCopyright="Copyright (C) 作者 2022" ProductName="CAN_Bootloader" InternalName="CAN_Bootloader" FileVersion="0.0.0.03" ProductVersion="0.0.0.03" publishDir="/dist/" dstrip="true" local="false" ignored="false">
<file name="main.aardio" path="main.aardio" comment="main.aardio"/>
<folder name="资源文件" path="res" embed="true" local="false" ignored="false">
<file name="icon.ico" path="res\icon.ico" comment="res\icon.ico"/>

View File

@ -197,7 +197,7 @@ namespace usb2canfd{
{ //如果序号大于最大硬件数
return 0;
}
import console;
//import console;
var ret = DllHandle.USB_OpenDevice(AvailableHW[index].hLINHW)
//canfd = true;
if(canfd == true){

View File

@ -10,6 +10,7 @@ btnFlash={cls="button";text="开始刷写";left=276;top=368;right=375;bottom=396
btnFresh={cls="button";text="刷新";left=204;top=28;right=288;bottom=54;z=2};
btnOpen={cls="button";text="打开文件";left=272;top=101;right=371;bottom=129;z=8};
btnReadF186={cls="button";text="读取当前会话";left=4;top=229;right=96;bottom=260;z=13};
btnReadF18A={cls="button";text="供应商ID";left=98;top=304;right=190;bottom=332;z=27};
btnReadF198={cls="button";text="读取F198";left=286;top=261;right=378;bottom=289;z=19};
btnReadF199={cls="button";text="读取F199";left=192;top=261;right=284;bottom=289;z=20};
btnReadHw={cls="button";text="硬件版本号";left=98;top=261;right=190;bottom=289;z=12};
@ -42,15 +43,7 @@ Display = function(str){//显示日志
nowtime.format="%H:%M:%S";
mainForm.edit.print(tostring(nowtime) + " " + str);
}
//遍历目录
//import console;
/*
import fsys.fileInfo;
info = fsys.fileInfo("C:\Users\fcb19\Desktop\dll\libusb-1.0.dll");
console.log(info.writeTime);
execute("pause")
raw.loadDll("C:\Users\fcb19\Desktop\dll\libusb-1.0.dll");
*/
CANHw = usb2canfd.USB2CANHW();//尝试加载CAN dll
var ret = CANHw.LoadDll();
if(ret == 0){
@ -138,7 +131,7 @@ listener.$SendEnd = function(isSuccess){
var CanThread = function(){
//线程函数内部要添加自已的import语句
import win;
import console;
//import console;
//console.log("线程开始运行")
loadcodex("\user\CanThread.aardio");//加载线程程序
//在子线程启动消息循环
@ -286,6 +279,10 @@ mainForm.onClose = function(hwnd,message,wParam,lParam){
raw.closehandle(thrdHandle)
}
mainForm.btnReadF18A.oncommand = function(id,event){
DiagReadDID(0xF18A);
}
thrdHandle,thrdId = thread.create( CanThread );
mainForm.show();
return win.loopMessage();

View File

@ -199,24 +199,44 @@ FuncStartBoot = function(){
var PackNext = 0x21;
var Packdata = {};
var PackID = 0;
var timedll = raw.loadDll("Winmm.dll");
//timedll.timeBeginPeriod(1);
var tickdll = raw.loadDll("Kernel32.dll");
var mydelay = function(ms){
import time.performance;
var tk = time.performance.tick();
while((time.performance.tick() - tk) < ms){
;
}
}
var FuncSendPackage = function(){
timer1.disable();
//timedll.timeBeginPeriod(1);
while(#Packdata > 0)
{
sleep(0.3);
//sleep(1);
var data = {PackNext,0xCC,0xCC,0xCC,0xCC,0xCC,0xCC,0xCC};
var max = #Packdata > 7 ? 7 : #Packdata;
for(i=1;max;1){
data[i+1] = table.remove(Packdata);
}
sleep(1);
CANHw.SendMsg(PackID,data);
//thread.delay(0.5);
//mydelay(2);
//timedll.timeBeginPeriod(1);
//sleep(1);
//
CANHw.SendMsg(PackID,data);
//timedll.timeEndPeriod(1);
PackNext += 1;
if(PackNext > 0x2f){
PackNext = 0x20;
}
}
timer1.enable();
}
FuncPushPackage = function(ID,data){
PackNext = 0x21;