-
Notifications
You must be signed in to change notification settings - Fork 2
wenyec/Camera5MPWB
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
CYPRESS SEMICONDUCTOR CORPORATION EZ-USB FX3 HD 720P CAMERA KIT FX3 CAMERA KIT FIRMWARE ----------------------- 1. Introduction: ---------------- This project facilitates implementing a complete 720p Video solution using the EZ-USB FX3 device and an Image Sensor that supports YUY2 image streaming over a parallel synchronous interface. This Eclipse project contains the firmware application code that implements the Image Sensor interface and the USB Video Class (UVC) control and streaming logic. This firmware application supports streaming video in the following formats: 1. Uncompressed HD 720p (1280 * 720) resolution video at 30 frames per second (fps) over a USB 3.0 link. 2. Uncompressed VGA (640 * 480) resolution video at 15 frames per second (fps) over a USB 2.0 link. This firmware application is designed to work with the EZ-USB FX3 SDK 1.2.2 release. Please refer to the "AN75779: Interfacing an Image Sensor to EZ-USB FX3 in a USB video class (UVC) Framework" application note (http://www.cypress.com/?rID=62824) for a detailed design description of this application. 2. Files: --------- 1. uvc.c : Main source file implementing the UVC control and streaming logic. 2. uvc.h : Configuration parameters and constant definitions for the UVC application firmware. 3. cyfxuvcdscr.c : USB descriptors used by the UVC firmware. 4. camera_ptzcontrol.c : Extension stubs for implementation of camera controls like Pan, Tilt and Zoom. 5. camera_ptzcontrol.h : Variable and function declarations for the Pan, Tilt and Zoom control stubs. 6. sensor.c : Function placeholders and I2C driver functions to configure/control the image sensor through the I2C interface on FX3. 7. sensor.h : Interface declarations for the image sensor driver. 8. cyfxgpif2config.h : Configuration data generated by GPIF II Designer. 9. cyfxtx.c : RTOS porting layer for the EZ-USB FX3 SDK. 10. cyfx_gcc_startup.S : Startup file for the GNU ARM tool-chain. This only clears the BSS segment and then jumps to the main function. 3. Notes on Application Porting: -------------------------------- This UVC video streaming application can be ported to work with virtually any image sensor with parallel interface. The general procedure for porting the application to a particular sensor is: 1. Identify the sensor control mechanism (I2C, SPI etc.) and make appropriate changes to the sensor.c file. Code can be added to the SensorI2cBusTest() function to verify whether the sensor is accessible through the firmware. Once functionality is verified, implement the sensor initialization function SensorInit () and the resolution settings functions: SensorScaling_HD720p_30fps () and SensorScaling_VGA () or whichever resolution is required. 2. Identify the signal interface between the sensor and FX3, and update the GPIF-II state machine accordingly. You may require to update the GPIF-II initialization code in uvc.c (CyFxUvcAppGpifInit, CyFxGpifCB and CyFxUvcAppCommitEOF functions) as well. 3. Update the code for handling UVC controls like brightness, pan, tilt and zoom (uvc.c and camera_ptzcontrol.c). Please refer to the AN75779 for a detailed description on the design process. 4. Updating to a new FX3 SDK version: ------------------------------------- The cyfxtx.c and cyfx_gcc_startup.S files used here are taken from the FX3 SDK release. This version of the application makes use of FX3 SDK release version 1.2.2. When updating the application to work with a new SDK version, you need to copy the latest cyfxtx.c and cyfx_gcc_startup.S files from the new SDK into this project. You will also need to follow the instructions for porting to the new SDK that are included in the "Getting started with the FX3 SDK" document. []
About
for 5MP w/b camera
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published