小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Cy7c68013 的win7 驅(qū)動和SlaveFifo例程

 杰杰梅梅一生一世 2013-05-16
Cy7c68013 的win7 驅(qū)動和SlaveFifo例程 發(fā)布時間:2012-12-07 00:47:40
技術(shù)類別:CPLD/FPGA

之前用的是xp環(huán)境,用的紅色颶風開發(fā)板,現(xiàn)在自己做的板子,改成了win7系統(tǒng),可是原來的eZ-USB控制面板不能用了,搜了一下cypress的官方驅(qū)動,Cypress Suite USB 3.4.7,可以支持XP和win7系統(tǒng)。連上后,按照driver文件夾下面的CyUSB.pdf文件,修改Cypress Suite USB 3.4.7\Driver\bin\wlh\x64下面的cyusb.inf文件,用記事本打開,將里面VID_XXXX&PID_XXXX改成VID_04B4&PID_8613(在設(shè)備管理器中可以查看屬性,看到這兩個16進制數(shù)),注意別忘了把這幾行前面的注釋號“;”去掉,否則認為這一行被注釋了哦。下面的文件是我的CY7C68013的inf文件。這樣系統(tǒng)就可以識別到USB設(shè)備了。但是原來的例程SlaveFIFO不能用了,下載.hex文件之后,識別到SlaveFIFO設(shè)備,不能裝驅(qū)動。

由于對這個USB芯片的固件不熟,研究固件編寫短期內(nèi)搞不定。于是在Cypress 官方網(wǎng)站上找到了例程AN63787,是關(guān)于8bit模式下的slavefifo例程,但是我的FPGA配置的是16位模式,明顯看到例程中少了一半字節(jié)的數(shù)據(jù)。下面只能自己改例程了。

首先下載**版的keil uVision2,http://ishare.iask.sina.com.cn/f/12062296.html?from=like

更改C:\Cypress\Cypress Suite USB 3.4.7\Firmware\Bulkloop下面的keil工程,用原來紅色颶風自帶的固件源代碼配置進行更改,將 bulkloop.c中TD_Init函數(shù)用紅色颶風如下TD_Init函數(shù)替換,

void TD_Init( void )
{ // Called once at startup

    //時鐘設(shè)置
 //CPUCS = 0x02;  //12MHZ CLKOUT ENALBE  
    //CPUCS = 0x0a;  //24MHZ CLKOUT ENALBE
    CPUCS = 0x12;  //48MHZ CLKOUT ENALBE
 
 IFCONFIG =0x43;//使用外部時鐘,IFCLK輸入不反向
 
 SYNCDELAY;
 EP2CFG=0xA0; //需要設(shè)定為四緩沖,每個緩沖區(qū)大小為512字節(jié)
 SYNCDELAY;
 EP4CFG=0x00;
 SYNCDELAY;
 EP6CFG=0xE0;
 SYNCDELAY;
 EP8CFG=0x00;
 
 SYNCDELAY;
 FIFORESET = 0x80;             // activate NAK-ALL to avoid race conditions
 SYNCDELAY;                    // see TRM section 15.14
 FIFORESET = 0x02;             // reset, FIFO 2
 SYNCDELAY;                    //
 FIFORESET = 0x06;             // reset, FIFO 6
 SYNCDELAY;                    //
 FIFORESET = 0x00;             // deactivate NAK-ALL
 
 SYNCDELAY;
 PINFLAGSAB = 0xE6;          // FLAGA - fixed EP6PF, FLAGB - fixed EP6FF
 SYNCDELAY;
 PINFLAGSCD = 0xf8;          // FLAGC - fixed EP2EF, FLAGD - reserved
 SYNCDELAY;
 PORTACFG |=  0x00;  //0x40;             // SLCS, set alt. func. of PA7 pin
 SYNCDELAY;
 FIFOPINPOLAR = 0x00;          // all signals active low,
 SYNCDELAY;

  OEA|=0x0F;
    //小于64字節(jié)有效
    //EP6FIFOPFH=0x00; //DEIS PKSTAT  PK2 PK1 PK0 0 PFC9 PFC8
    //EP6FIFOPFL=0x40; //PFC7 PFC6 PFC5 PFC4 PFC3 PFC2 PFC1 PFC0
 
 // handle the case where we were already in AUTO mode...
 EP2FIFOCFG = 0x01;            // AUTOOUT=0, WORDWIDE=1
 SYNCDELAY;
 
 EP2FIFOCFG = 0x11;            // AUTOOUT=1, WORDWIDE=1
 SYNCDELAY;
 
 
 EP6FIFOCFG = 0x09;            // AUTOIN=1, ZEROLENIN=0, WORDWIDE=1
 SYNCDELAY;

 //IO設(shè)置
 PORTCCFG=0x00;
 PORTECFG=0x00;
 OEC=0x00;
 OEE=0xff;
 //串口初始化

// PA3=0;
 PA0=1;

 enum_high_speed=FALSE;

}

 

編譯生成.hex文件,用EZ-USB控制面板下載到USB芯片中,然后提示找到設(shè)備Bulkloop Device,自動安裝驅(qū)動,點擊get piples,

Pipe:  0  Type: BLK Endpoint:  2 OUT  MaxPktSize: 0x200
Pipe:  1  Type: BLK Endpoint:  4 OUT  MaxPktSize: 0x200
Pipe:  2  Type: BLK Endpoint:  6 IN   MaxPktSize: 0x200
Pipe:  3  Type: BLK Endpoint:  8 IN   MaxPktSize: 0x200

選擇: BLK Endpoint:  6 IN  ,點擊傳輸, 這是我用24bitAD芯片采集數(shù)據(jù)的結(jié)果,每采集兩次,放入3個數(shù)據(jù)進FIFO,數(shù)據(jù)正確

 
 
16發(fā)送.jpg
 
但是現(xiàn)在傳輸速度測試的VC6.0程序還不能用,估計還是因為win7的某些不兼容吧,以后再試。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多