USB小白学习之路(11) Cy7c68013A驱动电路设计注意事项(转)
Cy7c68013A驱动电路设计注意事项
转自:http://group.chinaaet.com/116/79029#0-tsina-1-71467-397232819ff9a47a7b7e80a40613cfe1
CY7C68013的驱动电路非常简单,除了提供24MHz时钟源,设计好USB差分接口,做好电源滤波,其他信号均可由数字控制。这里简单的对Bingo设计CV7C68013A-56PVXC驱动电路进行介绍,如下所示:
(1)首先,USB差分电路设计的好坏,决定了实际能运行的速率。

采用USB-Mini接口进行68013的通信,同时完成板卡的供电功能。USB理论上能提供500mA的电流,2.5W的功率足够支撑板卡的工作。同时500mA自恢复保险丝的设计,有效的保护了PC USB接口的安全。
在Layout D+、D- USB差分信号线的时候,一定要特别注意走线。
此外,外壳通过1uF接地,简单而有效的进行了电路的ESD保护。
(2)通过FPGA输入24MHz有源时钟,如下:

实际上可以采用无源晶振,同时通过XTALOUT输出24MHz给FPGA作为全局时钟,进一步降低PCB设计的成本。
(3)CY7C68013A配置芯片24LC64 EEPROM,

注意上拉电阻!
另外:如果EEPROM非空,或者说当前固件本机未安装驱动,可以通过短接P3,来实现68013上电从内部启动。当然如果是全新的片子,一些无所谓了。
(4)复位引脚的配置
理论上68013的复位引脚直接高电平即可,但实际上经过多次的测试,发现RESET外接耦合电容,否则68013没有100%的成功率能完整正常启动,。这仅是经验总结,因此这一部分电路千万不要偷懒,如下所示:

(5)坑爹的RESERVED设置

此外,最坑爹的RESERVED虽说是预留引脚,但是却不能NC。手册明文规定必须拉低,否则PC无法识别68013!

(6)WAKEUP功能时钟上啦,我们不做产品,不许睡觉!

(7)同步时钟IFCLK由外部FPGA输入,如下(12MHz输出可用与验证IC是否正常工作):

(8)选择FIFO0,不允许数据输出,屏蔽数据读取,不进行包传输,EmptyY与Full功能暂时不用,片选始终有效,WR使能信号由外部FPGA输入,配置如下:

这样做完全是由于TQFP144的FPGA引脚资源有限,通过固定的配置,换来了功能的实现。如果FPGA有足够的IO,可以讲这些68013这些固定引脚较直接通过FPGA进行灵活的配置。
这里USB_WR作为同步FIFO数据写入使能信号,由FPGA控制。
此外,设计中没有引出FLAGB(FULL)、FLAGC(EMPTY)引脚,不仅仅由于FPGA引脚的有限,设计中可以直接忽略FLAGB、FLAGC的技巧,在于降低数据的写入速率。实际上经验告诉我们,写入30FPS的640*480的视频,即12MHz的速率进行写入,可以完全忽略FULL、EMPTY信号。因为68013完全有这个能力在这段时间处理好数据的缓存、发送,我们可以接受这个风险!!!
(当然这是迫不得已的……)
(9)这里FIFO选择了8Bit输出,如下所示:

(10)PA0中断输入CMOS帧信号,用来同步数据,如下:

(11)PD5作为触发写入的信号,连接至FPGA作为输出使能,如下所示:

这里PD3、PD4、PD6实际上没有使用到。PD3、PD4用于用户采用68013实现CMOS Sensor的初始化接口,此设计中这两个IO没有使用到,PD6为预留。
(12)PD5、PD6从FPGA全局时钟数据,这里主要使用了PD5-USB_Trigger写入触发使能信号,如下:

(13)PD3、PD4预留(暂时没用到)初始化接口直接输入FPGA;68013 同步时钟信号IFCLK、写入使能信号WR直接从FPGA IO输出,如下所示:

USB小白学习之路(11) Cy7c68013A驱动电路设计注意事项(转)的更多相关文章
- USB小白学习之路(10) CY7C68013A Slave FIFO模式下的标志位(转)
转自良子:http://www.eefocus.com/liangziusb/blog/12-11/288618_bdaf9.html CY7C68013含有4个大端点,可以用来处理数据量较大的传输, ...
- USB小白学习之路(12) Cy7c68013A固件之Slave FIFO(转)
Cy7c68013固件之Slave FIFO 转自:http://blog.csdn.net/zengshaoqing/article/details/53053539 选择SlaveFIFO传输方式 ...
- USB小白学习之路(8)FX2LP cy7c68013A——Slave FIFO 与FPGA通信(转)
此博客转自CSDN:http://blog.csdn.net/xx116213/article/details/50535682 这个博客只对自己理解CY7C68013的配置有一定的帮助,对于配置CY ...
- USB小白学习之路(1) Cypress固件架构解析
Cypress固件架构彻底解析及USB枚举 1. RAM的区别 56pin或者100pin的cy7c68013A,只有内部RAM,不支持外部RAM 128pin的cy7c68013A在pin脚EA=0 ...
- USB小白学习之路(6) IIC EEPROM读取解析
IIC EEPROM读取解析 1. 编译错误处理(这里可以忽略) 在解压包解压了程序后,直接编译,出现如下错误. *** WARNING L14: INCOMPATIBLE MEMORY MODEL ...
- USB小白学习之路(3) 通过自定义请求存取外部RAM
通过自定义请求存取外部RAM 1. 实验简述 此实验是对自定义的供应商特殊命令(vendor specific command bRequest = 0xA3)进行解析,程序中的read me说明如下 ...
- USB小白学习之路(5) HID鼠标程序
HID鼠标程序 1. 特别注意 需要特别注意,各个例程中的设备描述符,配置描述符等各种描述符都是已经配置好了的,我们需要做的只是在例程中将代码修改为自己需要的部分即可,一般情况下是不可以串搭配的. 2 ...
- USB小白学习之路(4)HID键盘程序
HID键盘程序 1. 特别注意 需要特别注意,各个例程中的设备描述符,配置描述符等各种描述符都是已经配置好了的,我们需要做的只是在例程中将代码修改为自己需要的部分即可,一般情况下是不可以串搭配的. 2 ...
- USB小白学习之路(2)端点IN/OUT互换
端点2(out)和端点6(in)的out_in互换 注:这里的out和in都是以host为标准说的,out是host的out,在设备(Cy7c68013)这里其实是输入端口:in是host的in,在设 ...
随机推荐
- [JSOI2019]精准预测(2-SAT+拓扑排序+bitset)
设第i个人在t时刻生/死为(x,0/1,t),然后显然能够连上(x,0,t)->(x,0,t-1),(x,1,t)->(x,1,t+1),然后对于每个限制,用朴素的2-SAT连边即可. 但 ...
- B-Tree(B树)原理及C++代码实现
B树是一种平衡搜索树,它可以看做是2-3Tree和2-3-4Tree的一种推广.CLRS上介绍了B树目前主要针对磁盘等直接存取的辅存设备,许多数据库系统也利用B树或B树的变种来存储信息. 本文主要针对 ...
- navicat中执行PostgreSQL错误解决:ERROR: current transaction is aborted, commands ignored until end of transaction block
错误出现: 含有错误的查询后,选中insert语句无法执行,报错current transaction is aborted, commands ignored until end of transa ...
- IMX6Q开发板Linux-QT挂载U盘及TF卡
本文基于:迅为-iMX6开发板Linux-QT挂载U盘及TF卡 如下图所示,qt 启动之后,在超级终端中使用命令“mknod /dev/sda1 b 8 1”创建 U盘的设备节点,如下图所示. 插入 ...
- 微信公众平台三种IP白名单场景及设置问题
在开发使用微信公众平台时,目前遇到有三处需要配置IP白名单. 1.微信公众平台,“获取access_token”接口新增IP白名单保护,官网:https://mp.weixin.qq.com/cgi- ...
- activity 和 fragment 传递信息
acitvity 传递信息到fragment 初始化fragment 时可以传递arguments 该参数类型时Bundle activity 会持有fragment引用 通过通过参数的set方法 ...
- VBA编程常用词汇英汉对照表
表 20‑1到表 20‑8是VBA编程中使用频率最高的英文单词,按字母排序.词性列中,a表示形容词,n表示名词,v表示动词,p表示介词以及其他词性. 表 20‑1 VBA编程常用词汇表 单词 中文 词 ...
- javascript 获取 sx:datetimepicker 的值
<div align="center"><sx:datetimepicker label="Start_Time" id="S ...
- linux awk详解
awk: awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑, awk在其对数据分析并生成报告时,显得尤为强大. 简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开 ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-学习mock(7)
学习mock # learn_mock_7.py # 单元测试结合mock思路 import unittest from mock import mock from day_20200208_mooc ...