在现在这个依托数据传输的年代,图画的传输算得上的领域中的开展难点,因为视频传输的信息量较大,而且在传输进程中经常会遇到线路颤动、图画失真等问题,因而图画总线的接口质量非常重要。本文将为我们介绍一种根据USB接口的同步视频输出的体系规划方案固件规划部分。
固件规划
固件是指固化在USB操控器中MCU的程序,它的主要功能是担任接纳与处理主机发给设备的各种恳求,并向主机回来设备的状况信息。FX2系列的固件代码能够存储到主机中,设备上电复位今后经过USB电缆手动下载到FX2,这种办法易于晋级,在体系的开发进程中很便利;固件代码能够固化到片外存储器EEPROM或者是ROM,设备上电今后,主动下载固件到片内RAM,这两种办法能够将体系固件做成产品,无须每次手动下载。
本体系中固件分两个部分,一个是数据通道的操控,一个是主机操控指令的应对。数据通道的操控主要是GPIF操控数据传输管道完结。而操控管道EP0则担任主机和USB设备端的去掉数据部分的通讯:更改管道和端点装备信息,设置软件中止,更改GPIF视频图画传输的巨细,获取重要寄存器的状况等等。
图1
固件的程序框图如图1。其间设备恳求部分即为操控管道信息,是由单片机担任,而数据通道主要是经过GPIF操作,隔离了单片机的参加,进步数据传输速度。
固件代码编写运用Keil uVision,GPIF编程使用CYPRESS公司的GPIF东西(GPIFTOOL)。GPIF能够操控FX2端点FIFO,也能够发生六个操控输出端(CTL0~CTL5)和九根地址线输出,而且能够接纳六个外部输入信号,并对这些信号进行逻辑编程操控,然后操控FX2与外部接口的读写时序。实际操作能够使用GPIFTOOL制作波形描述符,转为C文件,装备各个相关的寄存器,操控SRAM接口读写逻辑。
SRAM硬件接口的时序图如下:
图2
根据上面的波形图,只需求在S1完毕的时分跳转S0状况即可。将制作的波形图使用GPIF TOOL转换为gpif.c文件,参加Project中,衔接编译即可得到固件。
在固件编程中电源办理部分,因为FX2在初次枚举电流大约是75mA,FX2设备的辨认则至少需求100mA,小于500mA,因而在固件中要加进电源检测,假如小于100mA,必须向主机请求更大的电流,直到主机正确辨认FX2。
以上便是根据USB接口的同步视频输出体系规划方案固件部分。对USB口进行恰当的改造能够最大程度的使传输的图画坚持明晰,关于USB口感爱好的朋友能够保藏本文进行细心研讨。