tag 标签: mt9n001

相关博文
  • 热度 28
    2015-4-29 23:27
    1475 次阅读|
    0 个评论
           前面分别介绍了良子USB2.0摄像头开发上的FPGA和USB2.0芯片,FPGA可以用跑马灯程序来测试,USB2.0芯片可以用BULKLOOP例程来测试。这里介绍另外一个例程,将FPGA和USB2.0芯片连起来,用FPGA控制USB2.0芯片,工作在SLAVE FIFO模式。具体是FPGA产生递增的数据,写给USB2.0芯片,上位机再接收USB数据。通过查看接收的数据,可以看数据是否对齐,是否有数据丢失,或者有重复的数据。       有一点需要说明,这个例程没有SDRAM参与,只是FPGA和USB2.0芯片之间的数据传输。另外专门有一个例程有SDRAM参与,FPGA产生的递增数据先写入SDRAM,再从SDRAM读出写进USB2.0芯片,具体的功能和这个例程是一致的,可以查看下一篇文章。       FPGA的程序很简单。第一个模块当然是PLL,用来输出FPGA的同步时钟IFCLK,摄像头开发板上的晶振是48M,经过PLL之后也是48M ,加载到IFCLK引脚上。48M是CY7C68013A的最大同步时钟,在IFCLK是48M的情况下,数据的传输速度最快,带席最高。另个一个模块就是产生递增数据的模块,每一个时钟,16总线上的数据都增加1。       CY7C68013A内的固件程序也不复杂。固件工作在AUTO模式,只是实现了两个大端点2和6,清除了另外两个大端点4和8,FIFO大小是512字节,4倍模式。       测试时要先下载FPGA程序,再下载USB固件程序。原因很简单,FPGA要先产生IFCLK输送给USB芯片。当然,你也可以反过来下载固件,测试一下。用上位机采集数据如下:              测试时1是要选择IN端点,一次采集的数量量2大些,我这里设置的是51200字节,默认的值是512字节,比较小。3是示例的一个数据,显示的数据是7A 77,实际的数据是0x777A,是反的。数据传输到底有没有少数,多数,可以查看上图中的4,多采集几次,这里的数据是规律的,不会有变化。如果数据不是X3或者XB,那么需要仔细检查程序了,数据有错误了。   正在更新,,,,     未完,待续,,,,,,。   (另公布一群号178338109,USB3.0开发专业讨论区)     淘宝店铺: http://liangziusb.taobao.com 良子.2015年    承接USB开发工程   QQ:2687652834
  • 热度 26
    2015-4-17 22:15
    3169 次阅读|
    0 个评论
           这里介绍一下摄像头开发板上的USB2.0芯片部分。CY7C68013A是一款支持USB2.0 HIGH SPEED的芯片,传输速度可以达到40M字节每秒,是应用最为广泛的芯片。CY7C68013A工作在SLAVE FIFO模式,从控制的角度可以看做是普通的FIFO,控制起来非常简单。电路图如下:       上面的原理图是标准的,应用在我的多个USB2.0项目上。56引脚的CY7C68012只有三个8组GPIO,其中两个8组共计16位IO用来做16位SLAVE FIFO模式的数据总线,仅剩下1组8位控制线,略微有些少。这8位控制线除了SLAVE FIFO必须的SLOE#、FIFOADDR1、FIFOFADDR0、PKTEND#、SLCS#这5个信号后,最后只剩下3根用户可以用的GPIO。当然这些硬件上的缺点可以通过其它方式弥补。       CY7C68013A这三组GPIO都与FPGA相连,受FPGA控制,电路板工作在SLAVE FIFO模式。这种工作模式能简化USB协议的复杂性,降低开发难度。实际上在固件中设置68013A为AUTO IN模式后,可以将USB芯片看作是一片普通的FIFO,控制起来很简单。   未完,待续,,,,,,。   (另公布一群号178338109,USB3.0开发专业讨论区)     淘宝店铺: http://liangziusb.taobao.com 良子.2015年    承接USB开发工程   QQ:2687652834
  • 热度 12
    2014-6-6 10:36
    2181 次阅读|
    0 个评论
             CYUSB3014应用较广,在图像采集方面有较大的应用,用来驱动各种SENSOR是比较典型的实例。之前有几个工程就是基于这方面的开发,总的来说,并不是一帆风顺的,在开发过程中遇到很多问题,在此记录一下(保密期已过)。         先说硬件。硬件上没有什么特别的,从设计原理图,到绘制PCB,再到加工焊接、调试,这是一个都不能少的过程。系统可以有两种架构,一是以CYUSB3014为主,SENSOR为辅,3014工作在GPIF II模式;二是在硬件上增加FPGA,以FPGA为主控,CYUSB3014和SENSOR都受FPGA控制,3014工作在SLAVE FIFO 模式。两种模式各有各的特点,在此不详述。         SENSOR种类较多,但生产厂家相对较少,主要也就是两家。MICRON大家并不陌生,电脑用的内存棵粒很多都是MICRON生产的,其子公司APTINA是一家专做SENOR的公司,在SENSOR领域与另外一家公司两分天下,这其中的故事我也不多说,大家可以BAIDU一下。SENOR我选择的是MICRON的MT9N001或者是MT9P001,像素分别是900W和500W,两者都差不多。         再说软件,这一部分是主要的。CYUSB3014的固件暂时不作说明,这里先介绍一下SENOR与软件相关的。下图是SENOR的框图,          上图中信号可以分为三部分,如上图最右部分,分别是Sync Signals、Data Out和Serial Interface。控制指令是通过I2C串口进行通信的。I2C串口通信与其它单片机里的I2C没有区别,都是一样的。在介绍具体的I2C通信之前,有必要先查一下SENSOR的工作模式,具体的可以查看芯片的数据手册 。        (另公布一群号178338109,CYUSB3014开发专业讨论区。)     我的博客: http://bbs.ednchina.com/BLOG_liangziusb_440752.HTM 淘宝店铺: http://shop64171919.taobao.com 良子.2013年    承接USB开发工程  USB毕设指导 QQ:2687652834    392425239