EZ-USB FX2(68013)Cyapi使用心得(1)--USB连接_学与玩_百度空间

              用Cyapi也有一阵了,这个确实比EZusb的api好用,简单说下Cyapi的使用心得,在编程中应该注意的一些问题,毕竟,说起来,那个CYapi的说明文档讲的实在太简单了点,好多东西都讲得不明白,只能

在使用中自己慢慢积累了。

            首先说下前提,固件架构是EZ-USB FX2/FX2LP(CY7C68013),编译环境VC++ 6.0,驱动是Cyusb.sys。

            上位机简单说下,建立一个MFC 单文档/对话框 应用程序;在路径项目中包含头文件cyapi.h和cyapi.lib所在的路径,{zh0}移到最上面。然后手动导入cyapi.lib,注意是CV6_7的lib,不要导入BCB的。

             下面讲得是按照USB一般工作流程来讲得。

(1)USB连接

         1.首先要建立一个USB设备对象

文档里有说的了,copy一下

       CCyUSBDevice *USBDevice = new   CCyUSBDev(Handle);

括号中的Handle是USB所关联对象的句柄,一般在MFC中直接就是m_hwnd。

        2.然后就该是打开USB设备了

可以用到两个函数open();isopen()

     这两个都可以用来打开USB设备,isopen()还可以判断能否获得USB设备句柄

      一般来说,如果只有一个USB设备连接,可以这样打开:

               USBDevice->open(0)    //打开0号USB设备

如果要判断,可以:

                     if(! USBDevice->open(0)) //打开失败

                      {messagebox("USB未连接");}

或者        if(!USBDevice->Isopen())

                     ..........

      如果连接有多个USB设备,那么可以枚举所有的USB,用到DeviceCount()函数;具体的可以参考cybulk的例子,执行USBDevice->DeviceCount()后,返回所连接的USB设备个数:

       if (USBDevice->DeviceCount())   //保证至少有一个USB设备连接
    {
        for (i = 0; i < USBDevice->DeviceCount(); i++)    //枚举所有USB设备
        {
            USBDevice->Open(i);                                     //打开第i号USB设备

            m_DeviceListComBox.AddString(USBDevice->DeviceName);   //所选择的当前设备名
        }

    }

                    好了,今天说到这里,有空接着写~

                                                                  【谷】



郑重声明:资讯 【EZ-USB FX2(68013)Cyapi使用心得(1)--USB连接_学与玩_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——