写个并口程序(vc6)的就用三个pin一个接地,一个定时发送脉冲(脉冲时间长短可调,脉冲间时间间隔可调),还有一个可以让用户设置1或者0电平。

解决方案 »

  1.   

    ? what is you question
      

  2.   

    vc中的mfc的并口类是什么呀?
      

  3.   

    MFC没有专门的类来操作并口
    你可以用API
    给你个例子
    extern "C" bool PASCAL Link() //连接到打印机
    {
    m_hCardInterFace = 
    CreateFile("LPT1",
    GENERIC_WRITE,
    NULL,NULL,
    OPEN_EXISTING,
    NULL,
    NULL);
    if(m_hCardInterFace!=INVALID_HANDLE_VALUE)
    {
    m_CommTimeouts.ReadIntervalTimeout = 1000;//读操作两个字节之间的时间(单位:毫秒)
    m_CommTimeouts.ReadTotalTimeoutMultiplier = 1000;//读操作的时间(单位:毫秒)
    m_CommTimeouts.ReadTotalTimeoutConstant = 1000;
    m_CommTimeouts.WriteTotalTimeoutMultiplier = 1000;
    m_CommTimeouts.WriteTotalTimeoutConstant = 1000;
    SetCommTimeouts(m_hCardInterFace, &m_CommTimeouts);
    return true;
    }
    return false;
    }
    extern "C" void PASCAL Unlink() //断开打印机
    {
    CloseHandle(m_hCardInterFace);
    }
    bool SendCommand(CString CommandWord) //向打印机发出命令,并且返回命令状态
    {
    DWORD t1,dwRead;
    COMSTAT t2; CString Command=0x1b;
    Command+=CommandWord;
    Command+=0x0d;
    WriteFile(
    m_hCardInterFace,
    Command.GetBuffer (Command.GetLength ()),
    Command.GetLength (),
    &dwRead,
    NULL);
    if(!ClearCommError(m_hCardInterFace,&t1,&t2))
    {
    switch(t1)
    {
    case CE_OOP:
    TRACE("G CE_OOP\n");
    return false;
    break;
    case CE_PTO://超时错误
    TRACE("G CE_PTO\n");
    return false;
    break;
    case CE_IOE:
    TRACE("G CE_IOE\n");
    return false;
    break;
    }
    }


    return true;
    }
      

  4.   

    并没有这样的类,要的话只能自己写,我也过类似这样的程序,不过软件脉冲的性能不怎么好,精度能稳定到1ms都不错了
    http://csdn.net/cnshare/soft/16/16791.shtm是否是商业应用,如果是,给我的钱,我会帮你写
      

  5.   

    zhangnanonnet(鱼欢)写的并口通讯,并不能控制某个脚的电平,以及脉冲
      

  6.   

    http://csdn.net/cnshare/soft/16/16791.shtm这个网址的程序已经下载不了;可否发个程序到我信箱[email protected]
      

  7.   

    http://vip.6to23.com/NowCan1/ctrl/portion.rar
    需要修改,但愿你能用得上
      

  8.   

    哎,原来想用vc写的 ,结果最后用了labview就完成了~开发硬件还是labview牛啊