原创 CY7C68013A开发板编程之21(转帖)_68013 SLAVE FIFO视频图像采集

2012-2-23 08:57 3350 17 18 分类: MCU/ 嵌入式

       今日终于取得突破性进展,有些话不吐不快!

       今天终于可以     Slave FIFO 异步 发数据,上位机软件能正常接收了。

       当初看英文文档实在累的不行,于是买了《USB应用开发技术大全》这本书,参照18章弄slavefifo异步传输。刚开始的时候因为我用的是两个USB,一个仅仅用做8051功能,另一个用做USB传输。刚开始我在固件中用EP8 in,参考书的例子,可以传输。但是我最终要用的EP2 IN,于是把端点改为EP2,发现在cypress interface软件里怎么都接收不到数据,为这个问题搞了好多天,后来怀疑是不是两个USB的原因。于是又把硬件搭成跟书上说的一样,一个C51单片机发数据,68013异步SLAVEFIFO接收,还是不行,当时都快疯了,怀疑是固件的原因,于是把手册从头到尾看遍,明白一个道理:使用EP8 IN的时候,是不需要设置FIFOADR0,FIFOADR1的,因为是默认的。

       这里就要BS《USB应用开发技术大全》18章的例子了,那个C51固件程序,我靠,FD,我晕,FD是什么?我用他那个,发的数楞全是0XFF,后来明白,他那FD根本就是个子虚乌有,换成P2=0X05就OK了。还有,他那FIFOADR1=0,FIFOADR0=1,看手册,这样设置明明选择的端点就是EP4,我就不明白,他居然还堂而皇之的在旁边注释:选择端点EP6——简直睁着眼睛说瞎话。

      再就说他的USB Firmware了,里面初始化根本就没看到一点SLAVEFIFO的影子,完全是把bulkloop例子copy了事,加了个自定义命令;佩服啊佩服啊,要能用这个固件进行SlaveFIFO传输的,那真是人才,人才啊!幸好,还有手册可以看--虽然英文的看的累点。

       其他固件问题就不说了。主要这几天写上位机软件,因为要验证Slave FIFO 数据的正确性,于是采用了跟《USB应用开发技术大全》这本书第18章一样的方法,上位机收到数据后,写入到一个txt文件里。

       问题来了,一点数据传输就内存错误。没发,不得不回去参考cybulk例子,还是不行,我就怀疑。于是分两步:一是单独测试cybulk多线程接收数据--OK可以;二是另外建个VC工程,测试CFLIE类写文件---OK也可以。于是我就怀疑了,难道多线程中不能进行文件写吗?还是USB传输途中不能写?

     于是乎,不停的改啊改,折腾的我死去活来;后来某日网上找答案,找到一帖,也是骂《USB应用开发技术大全》这本书的,误认子弟,不过好在那位大侠有位好搭档,VC有够NB,终于被他搞定了,中间提到一点“那个线程循环是个死循环”。看到此处,我就恍然大悟,原来最终还是VC程序的问题,于是我盯着那个线程仔细瞅啊瞅,终于被我发现了,那个循环里每次写文件都没有关闭,而是把关闭文件放到外面去了;赶紧加上mfile.close,然后把外面的注释掉!-----苍天啊,终于OK了。。热泪盈眶啊。。。。。。

       这里再次BS《USB应用开发技术大全》这本垃圾书,全书TM的大部分篇幅是程序,你是程序吧,好,我忍,可你别把把那些系统默认程序都加上去,什么cypress固件框架程序,VC基本对话框框架程序,靠,搞的好像你自己写的,怕别人不直到你是直接CTL+C,CTL+V?加了这些框架程序也就罢了,我再忍,可你,你CTL+C也有点敬业精神型不,别时不时整点错误;有错误,我再忍,可你光盘程序得对啊,光盘程序也错的一塌糊涂,请问您自己调试自己写的程序通过么?

       那个作者,薛园园(男OR女?),我估摸也就是个“叫兽”之类的人物,还有那什么给“华清远见”审核过的,我说“华清远见”您也算国内培训一名牌了,认真点行不?你这叫“审核”?给小学生改作业吧--误认子弟!!!

                                                                     【谷】

 

更多文章请访问:

我的博客1:http://bbs.ednchina.com/BLOG_liangziusb_440752.HTM

我的博客2:   http://www.eefocus.com/liangziusb/blog/

EDN小组http://group.ednchina.com/GROUP_GRO_14600_3466.HTM

LZ3684 USB2.0开发板(CY7C68013A), 请访问我的淘宝http://shop64171919.taobao.com

LZ3014 USB3.0开发板(CYUSB3014),请访问我的淘宝http://shop64171919.taobao.com

实体店铺:北京新中发电子市场2557号

 

良子.2012年

欢迎交流:liangziusb@163.com

QQ:2687652834    392425239


 

文章评论1条评论)

登录后参与讨论

用户320258 2014-2-6 15:15

哈哈哈,说得好!
相关推荐阅读
liangziusb_940932268 2016-06-30 21:33
最新的良子USB2.0开发板3_AD7980数据采集开发2
      接上一篇。            这一篇介绍FPGA驱动单个AD7980的开发过程,驱动多个AD7980的级联模式可以查阅后面的帖子。单个AD7980的驱动时序图如下:   ...
liangziusb_940932268 2016-06-30 20:41
最新的良子USB2.0开发板2_AD7980数据采集开发1
     USB2.0开发板已经调试完毕了,板子上的各个芯片都编写了测试例程,例程有10个左右,和之前的USB2.0开发板例程差不多。除了上一篇介绍的配套的双摄像头子板,另外还设计了MT9M001...
liangziusb_940932268 2016-05-22 13:42
CYUSB3065开发板调试过程4_测试开发板的三种启动过程
        CYUSB3065的开发板已经调试完毕,很快就会在淘宝上架。利用这段时间,整理一下如何测试CYUSB3065开发板。开发板上设置了两种非易失性的存储器,一个是I2C接口的EEPRO...
liangziusb_940932268 2016-04-17 09:49
最新的良子USB2.0开发板1_电路板介绍
     近日在设计双摄像头的开发板,已经接近结束。这块电路板的结构还是采用FPGA+SDRAM+USB2.0的,没有太大的变化,因为这种电路结构是最优的,非常适合做数据采集和图像采集之用。之前的US...
liangziusb_940932268 2016-03-02 21:05
良子USB2.0摄像头开发板19_电路板升级
      近日升级了USB2.0摄像头开发板,现在的版本号是1.4。此外,又额外增加了几种摄像头。开发板如下,摄像头是200万像素的MT9D001,没有安装镜头:   配300万像...
liangziusb_940932268 2016-02-29 18:50
200万像素摄像头AR0237开发1
      APTINA目前发布了200万像素的CMOS芯片AR0237CS,像素阵列大小为1928 (H) x1088 (V),是一棵标准的1080@60芯片。AR0237CS支持两种输出模式,...
我要评论
1
17
关闭 站长推荐上一条 /2 下一条