又一個關(guān)于ch365速度的問題

我使用ch365 做的 一塊 d/a 卡,工作模式 純PCI 本地地址模式 (D4=1;); 實測的單字節(jié)do 速度平均才120k次/s,(在軟件循環(huán)中循環(huán)N次單字節(jié) do操作 / N次單字節(jié) do操作 所耗費的時間),軟件的循環(huán)中未做其他任何耗時操作(幾乎不占用cpu 時間);

截取測試 代碼片段如下:

#define _outp_Pci(Do_Value) nPCI1006_Set_Do_Byte(Do_Value,iIndex); #define _inp_Pci() nPCI1006_Get_Di_Byte(iIndex);

#define _outpw_Pci(Do_Value) nPCI1006_Set_Do_Word(Do_Value,iIndex); #define _inpw_Pci() nPCI1006_Get_Di_Word(iIndex);

#define _outpd_Pci(Do_Value) nPCI1006_Set_Do_Dword(Do_Value,iIndex); #define _inpd_Pci() nPCI1006_Get_Di_Dword(iIndex);

//nPCI1006_Set_Do_Byte 就是 重新DDK 編譯過的驅(qū)動和DLL, 換了名字; //實際上就是 //BOOL WINAPI CH365mWriteIoByte( // 向I/O端口寫入一個字節(jié) // ULONG iIndex, // 指定CH365設(shè)備序號 // PVOID iAddr, // 指定I/O端口的地址 // UCHAR iByte ); // 待寫入的字節(jié)數(shù)據(jù) //其中 iAddr 是固定的; //Do_Value 同iByte ;

void __fastcall TfrmSpeedTest::btnIoTestClick(TObject *Sender) { UpgradeMrkThreadPriority(); //提高本線程優(yōu)先級

ULONG i=0;

ULONG time=GetTickCount();

long times_bak,times;

times_bak=times=StrToInt(Edit3->Text); //循環(huán)次數(shù); bool volH=true;

switch (Write_Mode) { case 1: while(times--) //byte //就是這個 { if(volH==true) _outp_Pci(0xff); else _outp_Pci(0x00); volH=!volH; } break; case 2: while(times--) //word { if(volH==true) _outpw_Pci(0xff); else _outpw_Pci(0x00); volH=!volH; } break; case 4: while(times--) //dword { if(volH==true) _outpd_Pci(0xff); else _outpd_Pci(0x00);

volH=!volH; } break; default: break; } ULONG time2=GetTickCount();

float cps_speed=(float)(times_bak * Write_Mode)*1000.0 /(float)(time2 -time);

Ed_Speed->Text=FloatToStr(cps_speed/1000.0); //顯示速度 LabSpeed->Caption="KByte/sec";

RestoreMrkThreadPriority(); //恢復(fù)本線程優(yōu)先級 return;

}

即使算上while()耗時,速度也應(yīng)該不會高于200k次/s; 修改與不修改 速度寄存器的 寫周期值,也沒有明顯的變化;

這是為什么??????

我很久之前做的另一塊卡是使用了 硬件重定位地址 的工作模式(D4=0),工作速度居然可以達到1.4M, 為什么目前這塊卡 (使用的 純PCI 本地地址模式)卻速度降了幾乎10倍?

建議你先把數(shù)據(jù)用塊讀寫試試速度再說.


在我的程序中只能用IO單字節(jié)操作,不能用塊讀寫.因為是同一個地址的重復(fù)操作.不知有什么辦法可以讓這個速度更快呢?比如不用CH365.DLL,完全改用自己寫程序會不會快一些呢?謝謝.


您好! 您可以參考一下 SPEED365.C 文檔,在 EVT\WIN_SW 文件夾中, CH365EVT.ZIP下載地址:http://www.findthetime.net/download/list.asp?id=22


你好,我現(xiàn)在用的就是"CH365DLL.DLL",我的意思是您這邊能不能將DLL里面的函數(shù)公布出來,直接用在我的程序里面,這樣操作的速度會不會快一些呢?謝謝.


您好! 1、CH365的應(yīng)用層接口庫 CH365DLL.H 在CH365EVT.ZIP/CBUILD中有。 2、如果要 CH365 源碼的話,需要下載權(quán)限,可以聯(lián)系銷售: 025-52638377/88/99 。


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频