You are on page 1of 7

using System;

using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Drawing.Drawing2D;
namespace AppUSB_HID
{
public partial class Form1 : Form
{
string bfRecebe = string.Empty;
//Criando o mtodo(funo) Fdelegate que vai receber o parmetro do tipo string
'a'
public delegate void Fdelegate(string a);
float eixo_x = 0, eixo_y = 0;
List<string> TempList = new List<string>();
string txtList = string.Empty;
int qtde_data = 0;
//Vetor de 32 bytes para envio do comando USB
byte[] BufferOut = new byte[32];
//Varivel para limpeza dos bytes que no sero utilizados no envio USB
byte clr_buffer;
public Form1()
{
InitializeComponent();
USBCom.OnDataRecieved += new UsbLibrary.DataRecievedEventHandler(USB
Com_OnDataRecieved);
}
void USBCom_OnDataRecieved(object sender, UsbLibrary.DataRecievedEventAr
gs args)
{
//throw new NotImplementedException();
string bfRecebe = "Dados: ";
foreach (byte mydata in args.data)
{
if (mydata.ToString().Length == 1)
bfRecebe += "00";
if (mydata.ToString().Length == 2)
bfRecebe += "0";
bfRecebe += mydata.ToString() + " ";
}

this.BeginInvoke(new Fdelegate(recebe_usb), new object[] { bfRecebe


});
}
public void recebe_usb(string a)
{
string[] txtSplit;
int adc1, adc3, v1, v3;
label1.Text = a;
txtSplit = a.Split(' ');
adc1 = (int)Convert.ToInt32(txtSplit[2]) << 8;
adc1 += Convert.ToInt32(txtSplit[3]);
v1 = (adc1 * 5000) / 1023;
aGauge1.Value = v1;
aGauge1.Cap_Idx = 1;
aGauge1.CapText = v1.ToString() + " mV";
adc3 = (int)Convert.ToInt32(txtSplit[4]) << 8;
adc3 += Convert.ToInt32(txtSplit[5]);
v3 = (adc3 * 500) / 1023;
aGauge2.Value = v3;
aGauge2.Cap_Idx = 1;
aGauge2.CapText = v3.ToString() + " " + (char)176 + "C";
txtList = "AN0:" + string.Format("{0:0000}", v1) + ":TMP:" + string.
Format("{0:0000}", v3);
int cal = Convert.ToInt32(txtSplit[6]) & 1;
if (cal==1)
{
pictureBox1.Image = AppUSB_HID.Properties.Resources.LED_ON;
}
else
pictureBox1.Image = AppUSB_HID.Properties.Resources.LED_OFF;
cal = Convert.ToInt32(txtSplit[6]) & 2;
if (cal == 2)
{
pictureBox2.Image = AppUSB_HID.Properties.Resources.LED_ON;
}
else
pictureBox2.Image = AppUSB_HID.Properties.Resources.LED_OFF;
cal = Convert.ToInt32(txtSplit[6]) & 4;
if (cal == 4)
{
pictureBox3.Image = AppUSB_HID.Properties.Resources.LED_ON;
}
else
pictureBox3.Image = AppUSB_HID.Properties.Resources.LED_OFF;

cal = Convert.ToInt32(txtSplit[6]) & 8;


if (cal == 8)
{
pictureBox4.Image = AppUSB_HID.Properties.Resources.LED_ON;
}
else
pictureBox4.Image = AppUSB_HID.Properties.Resources.LED_OFF;
cal = Convert.ToInt32(txtSplit[6]) & 16;
if (cal == 16)
{
pictureBox5.Image = AppUSB_HID.Properties.Resources.LED_ON;
}
else
pictureBox5.Image = AppUSB_HID.Properties.Resources.LED_OFF;
cal = Convert.ToInt32(txtSplit[6]) & 32;
if (cal == 32)
{
pictureBox6.Image = AppUSB_HID.Properties.Resources.LED_ON;
}
else
pictureBox6.Image = AppUSB_HID.Properties.Resources.LED_OFF;
}
private void Form1_Load(object sender, EventArgs e)
{
toolStripStatusLabel1.Text = "Dispositvo Desconectado...";
xyGraph1.AddGraph("XtraTitle", DashStyle.Solid, Color.White, 1, fals
e);
}
private void sairToolStripMenuItem_Click(object sender, EventArgs e)
{
Close();
}
private void conectarToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
USBCom.ProductId = 32;
USBCom.VendorId = 1121;
USBCom.CheckDevicePresent();
button1.Enabled = true;
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void USBCom_OnSpecifiedDeviceArrived(object sender, EventArgs e)
{
toolStripStatusLabel1.Text = "Dispositivo Conectado...";

}
private void timer1_Tick(object sender, EventArgs e)
{
eixo_x++;
eixo_y = aGauge2.Value;
TempList.Add(DateTime.Now + " - " + txtList);
qtde_data++;
if (eixo_x >= 120)
{
timer1.Enabled = false;
button1.Enabled = true;
button2.Enabled = false;
}
xyGraph1.AddValue(0, eixo_x, eixo_y);
xyGraph1.DrawAll();
}
private void button2_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
button1.Enabled = true;
button2.Enabled = false;
}
private void button1_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
button1.Enabled = false;
button2.Enabled = true;
}
private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
TextWriter Arq;
try
{
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
Arq = File.AppendText(saveFileDialog1.FileName);
for (int i = 0; i < qtde_data; i++)
Arq.WriteLine(TempList[i]);
Arq.Close();
}
MessageBox.Show("Cadastro realizado com sucesso!");
}
catch (Exception erro)
{
MessageBox.Show(erro.ToString());
}
}
private void toolStripMenuItem3_Click(object sender, EventArgs e)

{
StreamReader Arq;
string Recebe = string.Empty;
eixo_x = 0;
xyGraph1.ClearGraph(0);
try
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
Arq = new StreamReader(openFileDialog1.FileName);
while (!Arq.EndOfStream)
{
Recebe = Arq.ReadLine().Substring(35, 4);
eixo_y = float.Parse(Recebe);
xyGraph1.AddValue(0, eixo_x, eixo_y);
xyGraph1.DrawAll();
eixo_x++;
}
}
}
catch (Exception erro)
{
MessageBox.Show(erro.ToString());
}
}
private void Envia_USB()
{
try
{
if (this.USBCom.SpecifiedDevice != null)
{
USBCom.SpecifiedDevice.SendData(BufferOut);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
private void pictureBox1_Click(object sender, EventArgs e)
{
BufferOut[0] = 0x00;
BufferOut[1] = (byte)'L';
//Caractere 'L'
BufferOut[2] = (byte)'D';
//Caractere 'D'
BufferOut[3] = (byte)'1';
//Caractere '1'
for (clr_buffer = 4; clr_buffer < 32; clr_buffer++) BufferOut[clr_bu
ffer] = 0;
Envia_USB();

}
private void pictureBox2_Click(object sender, EventArgs e)
{
BufferOut[0] = 0x00;
BufferOut[1] = (byte)'L';
//Caractere 'L'
BufferOut[2] = (byte)'D';
//Caractere 'D'
BufferOut[3] = (byte)'2';
//Caractere '2'
for (clr_buffer = 4; clr_buffer < 32; clr_buffer++)
BufferOut[clr_buffer] = 0;
Envia_USB();
}
private void pictureBox3_Click(object sender, EventArgs e)
{
BufferOut[0] = 0x00;
BufferOut[1] = (byte)'L';
//Caractere 'L'
BufferOut[2] = (byte)'D';
//Caractere 'D'
BufferOut[3] = (byte)'3';
//Caractere '3'
for (clr_buffer = 4; clr_buffer < 32; clr_buffer++) BufferOut[clr_bu
ffer] = 0;
Envia_USB();
}
private void pictureBox4_Click(object sender, EventArgs e)
{
BufferOut[0] = 0x00;
BufferOut[1] = (byte)'L';
//Caractere 'L'
BufferOut[2] = (byte)'D';
//Caractere 'D'
BufferOut[3] = (byte)'4';
//Caractere '4'
for (clr_buffer = 4; clr_buffer < 32; clr_buffer++) BufferOut[clr_bu
ffer] = 0;
Envia_USB();
}
private void pictureBox5_Click(object sender, EventArgs e)
{
BufferOut[0] = 0x00;
BufferOut[1] = (byte)'L';
//Caractere 'L'
BufferOut[2] = (byte)'D';
//Caractere 'D'
BufferOut[3] = (byte)'A';
//Caractere 'A'
for (clr_buffer = 4; clr_buffer < 32; clr_buffer++) BufferOut[clr_bu
ffer] = 0;
Envia_USB();
}
}
}

You might also like