-
大小: 250KB文件类型: .rar金币: 1下载: 0 次发布日期: 2021-06-14
- 语言: 其他
- 标签: cvi labwindows USB 射像头
资源简介
CVI对普通USB摄像头的控制代码,程序和代码,很不错的!值得学习
代码片段和文件信息
/*****************************************************************
* *
* 基于LabWindows/CVI的摄像头控制技术--实现屏幕截图、录像功能 *
* *
* 代码参考自:http://blog.sina.com.cn/u/4b677075010006da *
* *
* 本人是菜鸟,如有不对的地方,请多指教! *
* *
******************************************************************/
#include “windows.h“
#include “avicap32.h“
#include
#include
#include “cam.h“
#define Control_enabled 0
#define Control_disabled 1
//设置所需要摄像头的常量
#define WM_CAP_START WM_USER //开始
#define WM_CAP_STOP WM_CAP_START + 68 //停止
#define WM_CAP_DRIVER_CONNECT WM_CAP_START + 10 //连接
#define WM_CAP_DRIVER_DISCONNECT WM_CAP_START + 11 //断开
#define WM_CAP_SAVEDIB WM_CAP_START + 25
#define WM_CAP_GRAB_frame WM_CAP_START + 60
#define WM_CAP_SEQUENCE WM_CAP_START + 62
#define WM_CAP_FILE_SET_CAPTURE_FILEA WM_CAP_START + 20 //保存至文件
#define WM_CAP_SEQUENCE_NOFILE WM_CAP_START + 63
#define WM_CAP_SET_OVERLAY WM_CAP_START + 51
#define WM_CAP_SET_PREVIEW WM_CAP_START + 50
#define WM_CAP_SET_CALLBACK_VIDEOSTREAM WM_CAP_START +6
#define WM_CAP_SET_CALLBACK_ERROR WM_CAP_START +2
#define WM_CAP_SET_CALLBACK_STATUSA WM_CAP_START +3
#define WM_CAP_SET_CALLBACK_frame WM_CAP_START +5
#define WM_CAP_SET_SCALE WM_CAP_START+ 53
#define WM_CAP_SET_PREVIEWRATE WM_CAP_START+ 52
#define WM_CAP_COPYDIB WM_CAP_START + 30 //复制图片
//定义面板句柄
static int handle;
//定义摄像头句柄
static int result;
static int panelHandle;
//定义CANVAS_TV初始位置
static int canvas_tv_x;
static int canvas_tv_y;
int main(int argc char *argv[]) {
if (InitCVIRTE(0 argv 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel(0 “cam.uir“ PANEL)) < 0)
return -1;
DisplayPanel(panelHandle);
GetCtrlAttribute(panelHandle PANEL_CANVAS_TV ATTR_LEFT &canvas_tv_x); //重定位CANVAS_TV要用到
GetCtrlAttribute(panelHandle PANEL_CANVAS_TV ATTR_TOP &canvas_tv_y);
//320*240制式
SetCtrlAttribute(panelHandle PANEL_CANVAS_TV ATTR_WIDTH 320);
SetCtrlAttribute(panelHandle PANEL_CANVAS_TV ATTR_HEIGHT 240);
//重新定位
SetCtrlAttribute(panelHandle PANEL_CANVAS_TV ATTR_LEFT (592-320)/2+canvas_tv_x);
SetCtrlAttribute(panelHandle PANEL_CANVAS_TV ATTR_TOP (333-240)/2+canvas_tv_y);
RunUserInterface();
DiscardPanel(panelHandle);
return 0;
}
//退出按钮
int CVICALLBACK QuitCallback(int panel int control int event
void *callbackData int eventData1 int eventData2) {
switch (event) {
case EVENT_COMMIT:
QuitUserInterface(0);
break;
}
return 0;
}
//开始按钮
int CVICALLBACK startCB(int panel int control int event
void *callbackData int eventData1 int eventData2) {
int width;
int height;
int top;
int left;
switch (event) {
case EVENT_COMMIT:
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3091 2007-04-17 11:40 Capture.cws
文件 3895 2007-04-17 11:34 Capture.prj
文件 1213 2007-04-10 21:32 avicap32.h
文件 2102 2007-04-10 16:23 avicap32.lib
文件 2510 2007-04-17 11:39 cam.h
文件 15428 2007-04-17 11:39 cam.uir
文件 11718 2007-04-17 09:13 Capture.c
文件 982134 2007-04-17 10:18 界面.bmp
----------- --------- ---------- ----- ----
1022091 8
相关资源
- USB痕迹清理工具2015.1更新
- USB type C 16Pin
- USB4711采集卡采集程序
- qt usb通信
- dpinst_amd64
- upd 720201 PCIE TO USB3.0
- C8051F320_USB
- pl2303 USB转串口驱动解决“运行时错误
- linux usb hid device端测试程序
- SMSC-USB 2240读卡器
- ch340-usb转ttl驱动
- usb摄像头设计原理图
- vas5054usb驱动
- \\基于WDF过滤驱动的USB存储设备监控系
- v4l2 USB摄像头图像采集程序C
- usb控制注册表
- 接口封装库,USB3.0microB,USB-B,SMA,
- 加密狗复制机增强版加密狗复制软件
- 普中pz-isp USB驱动
- cy68013A USB高速数据采集的FPGA程序源码
- labview打开自带摄像头或USB摄像头
- USB端口测试工具
- CyAPI库包括CAPI.lib及CyAPI.hcyioct.h
- USB 的Protel封装
- 计算机使用痕迹深度检查擦除工具源
- CVI波形发生器源码
- USB通信头文件,包括devioctl.h usbioctl
- luvcview_20070512.tar.gz
- USB内核过滤驱动
- LabWindows_CVI调用外部程序的六种方法源
评论
共有 条评论