#ifndef __CAMERA_H__ #define __CAMERA_H__ /*****************ʹ������ͷ���ͺ꿪��*************************/ #ifndef USING_CAMERA_FOR_MMS #define USING_CAMERA_FOR_MMS 1 #endif /******************ʹ��SD���洢ͼƬ�꿪��*************************/ #ifndef USING_SAVE_SD #define USING_SAVE_SD 0 #endif /*****************************************************************************/ /*****************************************************************************/ /*****************************************************************************/ /*****************************************************************************/ #if USING_CAMERA_FOR_MMS //�����꣬�ж��Ƿ���Ҫʹ������ͷ���շ����� #include <string.h> #include <stdio.h> typedef unsigned char u8; typedef unsigned short int u16; typedef unsigned int u32; //Ӳ�����Ŷ��� #define camer_pwerH() GPIO_SetBits(GPIOA,GPIO_Pin_1) #define camer_pwerL() GPIO_ResetBits(GPIOA,GPIO_Pin_1) //�û��Զ������� //#define N_BYTE 512 //ÿ�ζ�ȡN_BYTE�ֽڣ�N_BYTE������8�ı��� #define N_BYTE 1024 //ÿ�ζ�ȡN_BYTE�ֽڣ�N_BYTE������8�ı��� //#define N_BYTE 224 //ÿ�ζ�ȡN_BYTE�ֽڣ�N_BYTE������8�ı���/ #define IMAGE_SIZE_160X120 0x22 #define IMAGE_SIZE_320X240 0x11 #define IMAGE_SIZE_640X480 0x00 #define COMPRESS_RATE_36 0x36 //��ѹ������Ĭ��ѹ���ʣ�160x120��320x240���ô�ѹ���� #define COMPRESS_RATE_60 0x60 //640X480�ߴ磬Ĭ��ѹ����36��ռ��45K���ҵĿռ� //ѡ��60ѹ���ʿɽ�45Kѹ����20K���� typedef enum { SERIAL_NUM_0 = 0x00, SERIAL_NUM_1, SERIAL_NUM_2, SERIAL_NUM_3, SERIAL_NUM_5, SERIAL_NUM_6, SERIAL_NUM_7, SERIAL_NUM_8, SERIAL_NUM_9, SERIAL_NUM_10 }nSerialNum; extern const nSerialNum SerialNum_Byte; extern u8 g_SerialNumber; extern volatile u8 cameraReady; extern u32 picLen;//ͼƬ���� //���������ӿں�������ֲʱ��Ҫ�Ľӿں��� void cam_write(const u8 *buf,u8 len); u16 cam_receiver( u8 *buf,u16 send_len); // Ӧ��ʵ������ u8 CameraDemoApp(u8 Serialnumber,u8 nCameraImageSize); u8 camera_init(u8 Serialnumber,u8 nSetImageSize); u8 send_cmd(const u8 *cmd,u8 n0,const u8 *rev,u8 n1); void SetSerailNumber(u8 *DstCmd, const u8 *SrcCmd, u8 SrcCmdLength, u8 *DstRcv, const u8 *SrcRcv, u8 SrcRcvLength,u8 nID); //����ͷ�������ã���λ/ͼƬ�ߴ��С/ͼƬѹ���� u8 send_reset(u8 Serialnumber); u8 current_photo_size(u8 Serialnumber,u8 * nImageSize); u8 send_photo_size(u8 Serialnumber,u8 nImageSize); u8 send_compress_rate(u8 Serialnumber,u8 nCompressRate); //�ƶ������ƺ��� u8 send_motion_sensitivity(u8 Serialnumber); u8 send_open_motion(u8 Serialnumber); u8 send_close_motion(u8 Serialnumber); u8 Motion_Detecte_Idle(u8 *pSerialnumber); //���մ������� u8 send_photoBuf_cls(u8 Serialnumber); u8 send_start_photo(u8 Serialnumber); u32 send_read_len(u8 Serialnumber); u8 send_get_photo(u16 add,u16 read_len,u8 *buf,u8 Serialnumber); #endif #endif