public USB_DataReport decodeDataReport() { USB_DataReport data = new USB_DataReport(); data.ReportId = dataReceived[0]; data.X = BitConverter.ToInt16(dataReceived, 1); data.Y = dataReceived[3]; data.Z = dataReceived[4]; data.RX = dataReceived[5]; data.RY = dataReceived[6]; data.RZ = dataReceived[7]; //Console.WriteLine(data.X); return(data); }
private void timer1_tick_configData(object sender, EventArgs e) { if (HID.connected) { labelStatusValue.Text = "Connected"; labelStatusValue.ForeColor = Color.FromArgb(255, 0, 250, 0); /*foreach (byte i in HID.dataReceived) * { * Console.Write(i + " "); * }*/ //System.Threading.Thread.Sleep(5000); if (checkValues()) { //modificou as infos, precisa enviar //Console.WriteLine("modifcou"); if (configData.Info < 255) { configData.Info = 1; // Set estado de sem ação. } } if (configData.Info == 255) { if (HID.configReceived[0] == 0) // equivalente a nao definido { activeTrackBar(false); configData.ReportId = 241; // 0xF1 //pegar os parametros do volante ou do profile? //iniciando sem valores HID.sendData(configData); } else { activeTrackBar(true); configData = HID.decodeConfigReport(); configData.Info = 0; // refresh layout bar fwVersion = Convert.ToString(configData.Version / 100.0); labelFirmwareVersion.Text = fwVersion; refreshValues(); } } else if (configData.Info == 1) { //configData enviado para joystick HID.sendData(configData); configData.Info = 2; } else if (configData.Info == 2) { // precisa verificar se os valores são iguais ao atual do profile, se não set Info = 1 if (HID.configReceived != null) { //byte[] configTemp = HID.dataReceived;//HID.decodeConfigReport(); if (HID.isEqual(HID.configReceived, HID.encodeConfigReport(configData))) { //configData = HID.decodeConfigReport(); USB_ConfigReport temp = HID.decodeConfigReport(); configData.Calibrate = 0; configData.Centralize = 0; configData.Info = 0; } else { configData.Info = 1; } } //configData recebida do joystick } //HID.sendData(); } else { labelStatusValue.Text = "Disconnected"; labelStatusValue.ForeColor = Color.FromArgb(255, 255, 0, 0); HID.find(); HID.connect(); } joystickData = HID.decodeDataReport(); refreshJoystickValues(); //Console.WriteLine("1tick " + configData.Info + " " + test[0] + " " + test[1]); //HID.sendData(configData); /* * //Image img = Image.FromFile("pictureWheel3.jpg"); * Image img = brWheelProfile.Properties.Resources.pictureWheelDisplay; * Graphics gfx = Graphics.FromImage(img); * gfx.TranslateTransform((float)img.Width / 2, (float)img.Height / 2); * gfx.RotateTransform(countTick); * gfx.TranslateTransform(-(float)img.Width / 2, -(float)img.Height / 2); * gfx.InterpolationMode = InterpolationMode.HighQualityBicubic; * gfx.DrawImage(img, new Point(0, 0)); * gfx.Dispose(); * pictureWheel.Image = img; */ // Console.WriteLine("tick " + configData.Info); }