Grafico usando Chart atualizado em tempo real.

Programação Visual Basic

Moderadores: 51, guest2003

Grafico usando Chart atualizado em tempo real.

Mensagempor caferri » 04 Ago 2011 11:47

Bom dia pessoal,

Sou iniciante em VB e estou com uma dificuldade, agradeceria qualquer ajuda.

Estou montando um programa que recebe dados vindos pela serial e envia esse dado para o grafico em tempo real, mas nao consigo que seja executado. Sempre aparece a seguinte mensagem "Cross-thread operation not valid: Control 'Chart1' accessed from a thread other than the thread it was created on."

Codigo:

Imports System.IO
Imports System.Windows.Forms.DataVisualization.Charting
Imports System.Threading


Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived

Dim bytecount As Integer = SerialPort1.BytesToRead
Dim byteBuffer(bytecount) As Byte
Dim Num_Amost As Integer
Dim Ydados(1000) As Double
Dim xdados(1000) As Double

SerialPort1.Read(byteBuffer, 0, bytecount)

For x As Integer = 0 To (bytecount - 1)
Ydados(Num_Amost) = byteBuffer(bytecount)
oEscreve.WriteLine(byteBuffer(x))
xdados(Num_Amost) = 0
Num_Amost = Num_Amost + 1

Next

With Chart1
.Titles.Clear()
.Titles.Add("EMG Canal E")
.Series(0).Points.DataBindXY(xdados, Ydados)
End With


End Sub


Sempre que a serial recebe dados é chamado um Event para que os dados sejam passados para o grafico, mas sempre surge arquele erro.

Poderiam me ajudar com esse problema?

Obrigado

Alexandre
caferri
 
Mensagens: 1
Registrado em: 27 Jul 2011 10:41

Voltar para Visual Basic

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 0 visitantes

x