예제 #1
0
int QHY6::SetChipBinMode(qhyccd_handle *h,int wbin,int hbin)
{
    int ret = QHYCCD_ERROR;
    
    if(wbin == 1 && hbin == 1)
    {
        ret = InitBIN11Mode();
        
        if(ret < 0)
        {
            ret = QHYCCD_ERROR_BINMODE;
            return ret;
        }
        ret = QHYCCD_SUCCESS;
    }
    else if(wbin == 2 && hbin == 2)
    {
        ret = InitBIN22Mode();
        if(ret < 0)
        {
            ret = QHYCCD_ERROR_BINMODE;
            return ret;
        }
        
        ret = QHYCCD_SUCCESS;
    }
    
    fprintf(stdout,"Current bin mode is xbin:%d ybin:%d\n",camxbin,camybin);
    
    
    ret = sendRegisterQHYCCDOld(h,ccdreg,psize,&totalp,&patchnumber);
    
    return ret;
}
예제 #2
0
int QHY6::SetChipExposeTime(qhyccd_handle *h,double time)
{
    int ret = QHYCCD_ERROR;
    camtime = time / 1000;

    ccdreg.Exptime = time / 1000;    
    ret = sendRegisterQHYCCDOld(h,ccdreg,psize,&totalp,&patchnumber);
    return ret; 
}
예제 #3
0
int QHY6::SetChipGain(qhyccd_handle *h,double gain)
{
    int ret = QHYCCD_ERROR;
    camgain = gain;

    ccdreg.Gain = gain;
    ret = sendRegisterQHYCCDOld(h,ccdreg,psize,&totalp,&patchnumber);
    return ret;
}
예제 #4
0
int QHY6::SetChipOffset(qhyccd_handle *h,double offset)
{
    int ret = QHYCCD_ERROR;
    camoffset = offset;

    ccdreg.Offset = offset;
    ret = sendRegisterQHYCCDOld(h,ccdreg,psize,&totalp,&patchnumber);
    return ret;
}
예제 #5
0
void BeginLive(void)
{
    #ifdef QHYCCD_DEBUG
    printf("BeginExpose\n");
    #endif
    switch(qhyusb->QCam.CAMERA)
    {
	case DEVICETYPE_QHY5LII:
	case DEVICETYPE_QHY5II:
        {
	    qhyusb->beginVideo(qhyusb->QCam.ccd_handle);
            break;
        }
        case DEVICETYPE_QHY6:
	case DEVICETYPE_IC8300:
        case DEVICETYPE_QHY21:
	case DEVICETYPE_QHY22:
        case DEVICETYPE_QHY23:
    	{ 
            if(qhyusb->QCam.CAMERA == DEVICETYPE_QHY6)
            {
                qhy6->initQHY6_regs();
            }
            else if(qhyusb->QCam.CAMERA == DEVICETYPE_IC8300)
            {
                ic8300->initIC8300_regs();
            }
            else if(qhyusb->QCam.CAMERA == DEVICETYPE_QHY21)
            {
                qhy21->initQHY21_regs();
            }
            else if(qhyusb->QCam.CAMERA == DEVICETYPE_QHY22)
            {
                qhy22->initQHY22_regs();
            }
            else if(qhyusb->QCam.CAMERA == DEVICETYPE_QHY23)
            {
                qhy23->initQHY23_regs();
            }
            sendRegisterQHYCCDOld(qhyusb->QCam.ccd_handle,qhyusb->ccdreg,qhyusb->QCam.P_Size,&qhyusb->QCam.Total_P,&qhyusb->QCam.PatchNumber);
	    qhyusb->beginVideo(qhyusb->QCam.ccd_handle);
	    break;
    	}
        case DEVICETYPE_QHY9:
        case DEVICETYPE_QHY11:
        {
            if(qhyusb->QCam.CAMERA == DEVICETYPE_QHY9)
            {
                qhy9->initQHY9_regs();
            }
            else if(qhyusb->QCam.CAMERA == DEVICETYPE_QHY11)
            {
                qhy11->initQHY11_regs();
            }
            sendRegisterQHYCCDNew(qhyusb->QCam.ccd_handle,qhyusb->ccdreg,qhyusb->QCam.P_Size,&qhyusb->QCam.Total_P,&qhyusb->QCam.PatchNumber);
            qhyusb->beginVideo(qhyusb->QCam.ccd_handle);
	    break;           
        }
        case DEVICETYPE_QHY16000:
        {
            qhyusb->beginVideo(qhyusb->QCam.ccd_handle);
            break;
        }
    }
}