hi all..
i'm noob here..
sorry if i bother you all..
noob question here..
i am wondering how to put the gas sensor in arduino to my listbox in visual basic..
this is my VB code.
[code]
Imports System.IO
Imports System.IO.Ports
Imports System.Threading
Public Class Form1
Shared _continue As Boolean
Shared _serialPort As SerialPort
Dim valGas As Integer
Sub EventHandler(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
Dim datareceived As Boolean
Dim valGas As String
datareceived = False
valGas = " "
While Not datareceived
valGas = SerialPort1.ReadByte()
If valGas = 10 Or valGas = 13 Then
datareceived = True
Else
valGas = valGas + Chr(valGas)
End If
End While
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
SerialPort1.Close()
SerialPort1.PortName = "com3" 'change com port to match your Arduino port
SerialPort1.BaudRate = 9600
SerialPort1.DataBits = 8
SerialPort1.Parity = Parity.None
SerialPort1.StopBits = StopBits.One
SerialPort1.Handshake = Handshake.None
SerialPort1.Encoding = System.Text.Encoding.Default 'very important!
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
SerialPort1.Open()
SerialPort1.Write("1")
SerialPort1.Close()
lblTime.Show()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
SerialPort1.Open()
SerialPort1.Write("0")
SerialPort1.Close()
lblTime.Hide()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
lblTime.Text = TimeOfDay
End Sub
Private Sub EventLog1_EntryWritten(ByVal sender As System.Object, ByVal e As System.Diagnostics.EntryWrittenEventArgs) Handles EventLog1.EntryWritten
End Sub
End Class
[/code]
and this is my arduino coding..
int clock = 998;
int hour = 9;
int min = 55;
int sec = 0;
int lamp1 = 13;
int lamp2 = 4;
int valgas = 10;
void setup()
{
Serial.begin(9600); //Set serial baud rate to 9600 bps
pinMode(lamp1, OUTPUT);
pinMode(lamp2, OUTPUT);
pinMode(9, OUTPUT);
digitalWrite(lamp1, LOW); //turn off LED
digitalWrite(lamp2, LOW); //turn off LED
}
void loop ()
{
valgas = analogRead(0);
if(valgas>300)
{
digitalWrite (10,HIGH);
digitalWrite (lamp1,LOW);
digitalWrite (lamp2,LOW);
Serial.println(valgas);
}
else
{
digitalWrite (10,LOW);
}
while (Serial.available() == 0); // do nothing if nothing sent
int val = Serial.read() - '0'; // deduct ascii value of '0' to find numeric value of sent number
if (val == 1) { // test for command 1 then turn on LED
Serial.println("LED on");
digitalWrite(lamp1, HIGH); // turn on LED
digitalWrite(lamp2, HIGH);
}
else if (val == 0) // test for command 0 then turn off LED
{
Serial.println("LED OFF");
digitalWrite(lamp1, LOW); // turn off LED
digitalWrite(lamp2, HIGH);
}
else // if not one of above command, do nothing
delay(clock);
sec = sec + 1 ;
if (sec <= 40)
{
digitalWrite(lamp1, HIGH);
digitalWrite(lamp2, HIGH);
}
if (sec > 40)
{
digitalWrite(lamp1, LOW);
digitalWrite(lamp2, LOW);
}
/* if (min > 20 && min < 40) {
digitalWrite(lamp, HIGH);
} else {
digitalWrite(lamp, LOW);
} */
// time keeping stuff
if (sec > 59) {
sec = 0;
min = min + 1;
}
if (min > 59) {
min = 0;
hour = hour + 1;
}
if (hour > 23) {
hour = 0;
}
Serial.print(hour);
Serial.print(":");
Serial.print(min);
Serial.print(":");
Serial.print(sec);
Serial.print("s");
}
i want to put the value of "valgas" in visual basic...
hope u guys can help me correcting my errors..really appreciate it..thanx in advance..