
Simple USBHost WebCam test program
Dependencies: F401RE-USBHost mbed
Fork of KL46Z-USBHostC270_example by
WebカメラからJPEG画像を読み取るテストプログラムです。
使い方はKL46Z-USBHostC270_exampleと同じです。
動作確認カメラ: Logitech C270, Logitech C210, Logitech Q200R(Qcam Orbit AF), LifeCam VX-500
Diff: KL46Z-USBHostC270/USBHostC270.h
- Revision:
- 1:22304b8f8395
- Parent:
- 0:a72d9b047d8d
- Child:
- 2:2a40888db9fc
--- a/KL46Z-USBHostC270/USBHostC270.h Mon Jan 27 11:07:34 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,57 +0,0 @@ -// Simple USBHost Logtigech C270 for FRDM-KL46Z -#include "USBHost.h" -#include "BaseUvc.h" -#include "decodeMJPEG.h" - -// Logitech C270 -#define C270_VID 0x046d -#define C270_PID 0x0825 -#define C270_160x120 2 -#define C270_176x144 3 -#define C270_320x176 4 -#define C270_320x240 5 -#define C270_352x288 6 -#define C270_432x240 7 -#define C270_640x480 1 -#define C270_544x288 8 -#define C270_640x360 9 -#define C270_752x416 10 -#define C270_800x448 11 -#define C270_800x600 12 - -#define C270_MJPEG 2 -#define C270_YUV2 1 - -#define C270_EN 0x81 -#define C270_MPS 192 -#define C270_IF_ALT 1 - -class USBHostC270 : public BaseUvc, public decodeMJPEG { -public: - USBHostC270(int formatIndex = C270_MJPEG, int frameIndex = C270_160x120, uint32_t interval = _5FPS); - /** - * read jpeg image - * - * @param buf read buffer - * @param size buffer size - * @param timeout_ms timeout default 15sec - * @return jpeg size if read success else -1 - */ - int readJPEG(uint8_t* buf, int size, int timeout_ms = 15*1000); - - Report* report; - -private: - int _formatIndex; - int _frameIndex; - uint32_t _interval; - uint8_t _seq; - uint8_t* _buf; - int _pos; - int _size; - - void setup(); - virtual void outputJPEG(uint8_t c, int status); // from decodeMJPEG - void callback_motion_jpeg(uint16_t frame, uint8_t* buf, int len); -}; -