Olá pessoal!
Estive vendo alguns tutoriais na internet e encontrei uma aplicação para acender/ apagar led pela porta serial usando VB. Eu achei mais fácil usar VB, pois foi a que funcionou e consegui fazer uma interface gráfica até que legal. Porém estou aprendendo ainda...
Basicamente funciona da seguinte forma, eu envio um dado no vb, caso seja idêntico a 'a', acende o LED, se for igual a 'b', apaga o LED
Em execução:
Código em VB:
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'inicial
Label2.Text = "Desativada a porta"
Label1.Text = "apagada"
'Configuração da Porta COM12
SerialPort1.BaudRate = 19200
SerialPort1.Parity = System.IO.Ports.Parity.None
SerialPort1.DataBits = 0
SerialPort1.StopBits = System.IO.Ports.StopBits.One
SerialPort1.PortName = "COM12"
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
'proteção de erro
If (SerialPort1.IsOpen = False) Then
SerialPort1.Open()
End If
Label2.Text = "Ativada a porta"
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
SerialPort1.Write("a")
System.Threading.Thread.Sleep(250)
Label1.Text = SerialPort1.ReadExisting()
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
SerialPort1.Write("b")
System.Threading.Thread.Sleep(250)
Label1.Text = SerialPort1.ReadExisting()
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
SerialPort1.Close()
Label2.Text = "Desativada a porta"
End Sub
Private Sub MaskedTextBox1_MaskInputRejected(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MaskInputRejectedEventArgs)
End Sub
End Class
Código Arduino
void setup() {
// put your setup code here, to run once:
Serial.begin(19200);
}
void loop() {
// put your main code here, to run repeatedly:
int readx = Serial.read();
if (readx == 'a')
{
digitalWrite(13, HIGH);
Serial.print("acesa");
}
if (readx == 'b')
{
digitalWrite(13, LOW);
Serial.print("apagada");
}
}
Estou agora tentando fazer para acender mais LEDs independentes, mas para isso estou estudando como fazer. Se alguém tiver alguma ideia, por favor não deixem de comentar!! Valeeu
Tags:
Legaal! Criei essa aplicação e consegui acender esses LEDs, porém agora estou querendo ler valores distintos do Arduíno, valores analógicos diferentes usando o VB. Procurei algumas coisas em arrays, porém é complicado, como irei saber que aquele dado é o dado que estou querendo ler?
Exemplo: Tenho um sinal de temperatura e um sinal de nível, e ele fica enviando os dados pelo comando Serial.print(Temperatura) e logo abaixo Serial.print(nivel), mas no VB como faria pra saber quem é quem e disponibilzá-los para leitura?
Acredito que com isso, poderei evoluir com meu projetinho, hehe! Logo posto o que eu consegui fazer, é que estou fora de casa!
Valeeu!
oi poderia colocar os arquivos do seu projeto
tentei refaze-lo aqui mas n consegui n
Você usou no programa VB a mesma serial que usa no IDE do Arduino ?
No exemplo é a COM 12.
usei sim
mas da erro =D
sou iniciante...
da uma ajuda ai
Divulgue as telas do VB e da IDE.
Tem alguma mensagem de erro?
Digitou a para ligar e b para desligar ?
Já que vai aprender, aproveita e usa uma outra linguagem melhor que VB. (dica)
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por