예제 #1
0
        private void SubMode123Compensation(int band, int gray)
        {
            //Mode1
            cmd.SendGammaSetApplyCMD(DP213OCSet.GetGammaSet(OC_Mode.Mode1));
            if (band != 0 && gray == 0)
            {
                RVreg1BSubCompensation(OC_Mode.Mode1, band, gray);
                CopyAndSendVreg1_OCMode1_to_OCMode23(band, gray);
            }
            else
            {
                RGBSubCompensation(OC_Mode.Mode1, band, gray);
            }
            UpdateOCMode23Target(band, gray);
            UpdateOCMode23InitGamma(band, gray);


            //Mode2
            cmd.SendGammaSetApplyCMD(DP213OCSet.GetGammaSet(OC_Mode.Mode2));
            RGBSubCompensation(OC_Mode.Mode2, band, gray);

            //Mode3
            cmd.SendGammaSetApplyCMD(DP213OCSet.GetGammaSet(OC_Mode.Mode3));
            RGBSubCompensation(OC_Mode.Mode3, band, gray);
        }
예제 #2
0
        private void ELVSSCompensation()
        {
            OC_Mode mode = DP213OCSet.Get_ELVSS_OCMode();

            cmd.SendGammaSetApplyCMD(DP213OCSet.GetGammaSet(mode));
            Band_Gray255_RGB_Compensation(mode, band: 0);
            Sub_ELVSS_and_Vinit2_Compensation(mode, band: 0, DP213OCSet.Get_ELVSS_Voltage_Max(), DP213OCSet.Get_ELVSS_Voltage_Min());
        }
예제 #3
0
        private void WhiteCompensation()
        {
            OC_Mode mode = DP213OCSet.Get_WhiteCompensation_OCMode();

            cmd.SendGammaSetApplyCMD(DP213OCSet.GetGammaSet(mode));
            Band_Gray255_RGB_Compensation(mode, band: 0);
            Sub_VREF0_Compensation(Get_HBM_RGB_Min_AM2_Voltage());
        }
예제 #4
0
        private void GrayLowRefCompensation()
        {
            OC_Mode mode = DP213OCSet.Get_LowGrayRefCompensastion_OCMode();

            cmd.SendGammaSetApplyCMD(DP213OCSet.GetGammaSet(mode));
            base.SingleBand_RGB_Compensation(mode, band: 0);
            Sub_AM1_Compensation(mode, band: 0);
        }
예제 #5
0
        private void button_Test_DP213CMD_Class_Click(object sender, EventArgs e)
        {
            //Verify OK
            ChannelWinformAPIFactory channelAPIFactory = new ChannelWinformAPIFactory(VendorForm.GetInstance().GetVendor());
            const int ch     = 0;
            int       height = Convert.ToInt32(textBox_Full_Height.Text);
            int       width  = Convert.ToInt32(textBox_Full_Width.Text);

            Channel_API[ch] = channelAPIFactory.GetIBusinessAPI(richTextBoxes[ch], height, width);
            DP213CMD cmd = new DP213CMD(Channel_API[ch], ch);

            cmd.SendGammaSetApplyCMD(Gamma_Set.Set1);
            cmd.SendGammaSetApplyCMD(Gamma_Set.Set2);
            cmd.SendGammaSetApplyCMD(Gamma_Set.Set3);
            cmd.SendGammaSetApplyCMD(Gamma_Set.Set4);
            cmd.SendGammaSetApplyCMD(Gamma_Set.Set5);
            cmd.SendGammaSetApplyCMD(Gamma_Set.Set6);

            cmd.DBV_Setting("FFF");
            cmd.DBV_Setting("DDD");
            cmd.DBV_Setting("ABC");

            if (ocparams[0] == null)
            {
                ocparams[0] = new DP213_OCParameters(Channel_API[0], 0, richTextBoxes[ch]);
            }
            cmd.Measure(ocparams[0], OC_Mode.Mode1, band: 0, gray: 0);
        }
예제 #6
0
 private void SingleModeOC(OC_Mode mode)
 {
     cmd.SendGammaSetApplyCMD(DP213OCSet.GetGammaSet(mode));
     for (int band = 0; band < DP213_Static.Max_HBM_and_Normal_Band_Amount && vars.Optic_Compensation_Stop == false; band++)
     {
         if (band > DP213OCSet.Get_mode456_max_skip_band())
         {
             SingleBand_RGB_or_RVreg1B_Compensation(mode, band);
         }
         else
         {
             ApplyGamma(mode, band);
         }
     }
 }