求助~CH341A通过EPP并口传输程序出现卡死

        本人小白,第一次在这上面发帖,请大家多多包涵。

        我在使用CH341A的库做并口传输时上位机可以正常传输一个字节,之后若再传数据则出现上位机卡死的情况,断掉CH341A与电脑的连接后程序又正常运行。我想请教一下这是由于什么问题导致的。

        CH341A后面直接接了两片1846点击驱动。

        附上程序代码:代码参考并口开发库里面的例程。

void CVISARefDlg::OnButtonEppwrite0(int buffer)//EPP方式写数据

{

UCHAR mBuf[mMAX_BUFFER_LENGTH*2]="";

ULONG mLen=2;

if(m_LightSWopen)

{

if(!CH341EppWriteData( 0, &buffer, &mLen ) )

{   

//m_epplen0.Format("%x", 0);

//UpdateData(FALSE);

MessageBox("EPP写数据块0失败!","CH341",MB_OK|MB_ICONSTOP);

}

else

{

//m_epplen0.Format("%x", mLen);    //返回写入的数据个数

MessageBox("EPP写入长度!","CH341",MB_OK|MB_ICONSTOP);

}

}

else

{

MessageBox("设备未打开!","CH341",MB_OK|MB_ICONSTOP);

}UpdateData(FALSE);

}


                                     

        本人小白,第一次在这上面发帖,请大家多多包涵。

        我在使用CH341A的库做并口传输时上位机可以正常传输一个字节,之后若再传数据则出现上位机卡死的情况,断掉CH341A与电脑的连接后程序又正常运行。我想请教一下这是由于什么问题导致的。

        CH341A后面直接接了两片1846点击驱动。

        附上程序代码:代码参考并口开发库里面的例程。

void CVISARefDlg::OnButtonEppwrite0(int buffer)//EPP方式写数据

{

UCHAR mBuf[mMAX_BUFFER_LENGTH*2]="";

ULONG mLen=2;

if(m_LightSWopen)

{

if(!CH341EppWriteData( 0, &buffer, &mLen ) )

{   

//m_epplen0.Format("%x", 0);

//UpdateData(FALSE);

MessageBox("EPP写数据块0失败!","CH341",MB_OK|MB_ICONSTOP);

}

else

{

//m_epplen0.Format("%x", mLen);    //返回写入的数据个数

MessageBox("EPP写入长度!","CH341",MB_OK|MB_ICONSTOP);

}

}

else

{

MessageBox("设备未打开!","CH341",MB_OK|MB_ICONSTOP);

}UpdateData(FALSE);

}


           
您好,有无尝试使用我们提供的demo进行测试?先确认下是不是上位机改动的问题。


只有登录才能回复,可以选择微信账号登录