VS 2010 Can't Enable A Timer From A SerialPort.DataReceived Event
Dec 16, 2010
So I just spent the last 4 hours trying to find out what was wrong with my code, just to find out that there's a bug in this version or I just don't have enough knowledge of VB2010 (I'm coming from VB6, this is my first program on 2010)I removed the rest of the code just to point out the problem, here it simply tries to enable the Timer1 when you receive data in the SerialPort1
Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
If Me.Timer1.Enabled = False Then
[code]....
After this I found that the code inside the Timer1 didn't run when the 100miliseconds passed, so I added a msgbox to see debug.
Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
If Me.Timer1.Enabled = False Then
[code]....
View 16 Replies
ADVERTISEMENT
Jul 21, 2009
Im using VB express 2008 (compiled with .NET 3.5) to write a program that communicates with a USB device. The USB device is a communication class device and thus will emulate the usual rs232 serial port once attached to the PC. The USB device sends a fixed number of bytes and i have set the threshold received byte property to this value. I have run the program and it seems to read the USB device "correctly" but when i debug the code, i realise that the datareceived event of the serial port gets fired on the eventtype = EOF. I am using the Read function to read the bytes from the serial port and the Newline property is set to "" (but i thought that this is irrelevant if im not using ReadLine). When the datareceived event fires with EOF, the Read function blocks until one byte arrives, reads it and calls the function that processes the data. I went through the forum and realised that the EOF eventtype is no longer supported, is this true? I dont think that getting this eventtype is logical anyways in my case.
View 5 Replies
Apr 2, 2009
When I write a byte array to a device using this code, the DataReceived Event never fires.....
[Code]...
AND if the sleep is <40, the event doesn't fire. Is this necessary or am I overlooking something?
View 11 Replies
Jun 15, 2011
I've managed to make an application at home using a serialport emulator and connector that will read text from a file on my desktop send it to com1 and then my connector program will merge com1 with com2. In short my program works at home but when I connect it to my device it appears the data in DataReceived is a fraction of what my simulator setup at home is producing, which apparently is completely normal according to all these threads I've read here.
[Code]...
View 4 Replies
Dec 29, 2010
Every 5 to 10 seconds I receive 5-12 bytes of data (confirmed w/Hyperterminal). I can open the com port(btn1), read bytes(btn3) until bytes to read = 0, but then i'm stuck; the data received event doesn't seem to respond. If I close the serial port(btn2), re-open i can read more data until bytes to read = 0 then stuck again. I tried several suggestions for threads and delegate and invoke but none worked. (WIndows XP, VB 2008)
[Code]...
View 19 Replies
Jul 8, 2011
I have an application with serial port datareceived event. My instrument sends me aprox.00bytes every 1 second. Which I then process and update few textboxes on the main formRecently my application started crashing if I press close button.I am guessing form_closing closes serialport at the same time datareceived event triggers in which the sp1.bytestoread causes the crash.1. I added synclock in datareceived and in form_closing.Within synclock in form_closing I removed datareceived handler.
View 8 Replies
Sep 29, 2009
I'm trying to enable a timer from a SerialPort_DataReceived event. I can see that the timer is enabled, but the event does not fire. It's rather simple, but I need some help understanding why it doesn't run the code in TimerWait_Tick.
[code]...
View 11 Replies
Dec 3, 2009
I'm looking for a reference that can explain the concept and use of the DataReceived event and Delegates subject.The reference has to be pretty simple as I'm an "old dog attempting to learn a new trick". I'm not ignorant of things programming, but am ignorant of things dealing with serial communication in VB2005.I already have a couple of O'Rielly books ("VB2005 Cookbook", "VB2005 Desktop Reference") and I have a book that deals with serial communication from a Jan Axle-something. Neither O'Rielly books have any info, and the Axle-someting book's remotely related examples are too confusing for this slow learner.
View 6 Replies
Jun 29, 2011
I am trying to get a fairly simple Serial Port program working. So simple in fact I have been bashing my head over it for quite a while.
I have a piece of equipment connected over a null modem cable. When turned on, it just starts spitting data out RS232 and I need to capture it. Hyperterminal does see the data so the USB-serial converter is working.
When I run the code snippet included, the port opens fine, but the DataReceived event never fires.
Imports System.IO
Public Class Form1
Dim WithEvents serialPort As New IO.Ports.SerialPort
[Code]....
View 14 Replies
Nov 18, 2011
Why after you pressed the button Button1, this application crashes without considering the event timer1??
Public Class Form1
Public timer_event As Boolean
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
timer_event = False
Timer1.Interval = 3000 '3 sec
[Code] .....
View 3 Replies
Jun 22, 2010
my event in timer goes too fast, i need to slower it. the interval is ok, i cant use sleep because it freeze everything ( webbrowser control ) and it need to stay active not freezing. i tried application. doevents() no result same problem, is there a way to do what i need? its a program that automatically fill a webbrowser form and restart every-time. there no logout button so i need to use setmouseposition and mouse_event but timer do event too fast one after other and if i use sleep everything go wrong.
View 5 Replies
Feb 9, 2011
I am using a timer control to display a message form in my application, but it's not working the way I want it to. Currently, when the timer event fires I create a new instance of my message form & display it. But if the user is away from their desk & doesn't close the message form before the timer fires again, a new instance of the message form is created & shown. So how can I check to see if the message form is currently shown on the screen so multiple ones dont get displayed? This is my timer event:
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Using frm As New MsgForm
[Code]...
Do I need to use the default instance of the message form instead of creating a new one?
View 7 Replies
Nov 6, 2011
When I run the following code in the UI thread, it works without issue.
VB.NET private timer as new timer public sub test()timer.enabled = true timer.interval = 1000 timer.start()addhandler timer.tick, addressof timer_tickend sub private sub timer_tick(...) messagebox.show("fff")end sub
But if I run it within a background thread, nothing happens.
View 15 Replies
Jan 17, 2012
I'm having issues on where to begin on the next step in my Visual Studio 2010 project.
Here's my original code:
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyCode = Windows.Forms.Keys.VolumeUp Then Shell("C:USBRelayUSBRelay.exe -c:3 -r:1#1")
[Code]....
View 13 Replies
Jul 9, 2009
I have a timer on a page in ASP.NET.
After a certain period of time elapses, I want to disable the timer.
I want to put a static variable in the timers tick event that will track how many seconds have elapsed.
My question is, will this work?
If user X and Y are viewing the page will they both have separate local static variables?
What is the best method of shutting down an ASP.NET timer after a certain elapsed time?
View 1 Replies
Apr 23, 2009
I have a windows application that need to process som quite time consuming jobs. In my first try i did all processing under
the form thread. The result was bad response and update of the form due to the heavy jobs.To get around the problem with bad response from the form i created a new class "processing" where i put all the data processing. Then i instanciated a background worker where i in the "doWork" sub created a new instance of "processing".The "processing" class creates a timer from system.timer, and the timer drives the processing.On the Timer event Elapsed the timer starts a new thread from the thread pool.
My problem is now when i want to asynchronously close the background worker (with the corresponding function call what ever it is called ...) there is still a timer thread out there that causes exceptions for me.
1. How can i close my background worker and at the same time have the timer to be stopped?
2. Is there a way to synchronize the timer event so that the timer executes from the background worker thread?
3. Is there a better approach for me to adapt?
View 3 Replies
Apr 15, 2009
When a button is clicked on my forum i need it to enable a timer that has a RANDOM inverval. how to do it or give an example. (im trying to create an autotyper that types a given phrase at random times)
View 5 Replies
Jan 11, 2011
I want to create an array of timer in vb.net. My problem is that how will i raise the tick event for a particular timer, say mytimer(x).tick and inside the tick event there is also a button, say mybutton(x) which changes location every interval. for example:
public class blah
dim mybuttons(20) as button
dim mytimer(20) as timer
private sub form_load(....) handles me.load
for x as integer = 0 to 20
[Code]...
i dont know what to do next, all i want is to pass the button mybuttons(x) to mytimer(x) tick event, in which their index number are the same. i want to create one timer per button. how to do that? please help me and post example codes. i've researched the net but i cant understand passing variables, addhandlers, etc. i'm just new to programming object oriented.
View 6 Replies
Jun 16, 2011
In my Windows Form's application, I enable and start a Windows Form's Timer for a state machine which interacts with various User Controls. In one part of the state machine where an external device is being rebooted, I need to disable the User Interface (a User Control's UI) for the time it takes the device to reboot. The problem exists in that once I use System.Threading.Sleep, the timer that fires the State Machine stops and never restarts. I even re-enabled the Timer and re-started it after the Sleep command but to no avail. Is this expected operation or should a Windows Form's Timer be able to restart after a Sleep?
Snippet of code from a step in the state machine below:
Cursor.Current = Cursors.WaitCursor
MainForm.Enabled = False
System.Threading.Thread.Sleep(8000)
MainForm.Enabled = True
Cursor.Current = Cursors.Default
MainForm.t1.Enabled = True
MainForm.t1.Start()
View 4 Replies
Mar 28, 2010
how to enable /disable the timer with a button and how enable /disable the timer with a checkbox? and the opposite how to enable /disable a button with a timer and how to enable /disable a checkbox with a timer
View 5 Replies
Aug 31, 2009
I am wondering if there is any code guide to teach me how to enable the user to draw as many buttons as possible on the windows form and be able to move and resize the buttons on the GUI and also tie the buttons to the timer to toggle the button colour when ever a condition is true
View 5 Replies
Feb 12, 2010
Eg. ""vb.net" timer event trigger on purpose". This application is meant to run at all times to download a web page every minute. To avoid freezing the UI, I read that the best solution is to move the code from a While/Sleep loop to a Timer that will be triggered every minute. The problem I have, is that the user must wait for a minute before the event is triggered:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Timer1.Interval = 60000
Timer1.Enabled = True
[CODE]...
Is it possible to force this event to occur instead of waiting for it?
View 1 Replies
Jul 4, 2011
How can I incorporate the timer so once a page loads the timer activates, waits a few seconds then I tell my program what to do next.I tried this code but it didnt work:
Timer1.Interval = 5000
Timer1.Enabled = True
Timer1.Start()
[code]....
View 3 Replies
Jun 1, 2009
I populate a DataGridView during a sub routine. Later in my code I have a RowEnter event for that DataGridView when the user is assessing it after it has been populated during the main procedure. However this RowEnter event gets fired while the DGV is being populate. I only want it to file AFTER its populated. Is it possible to disable this specific event while the DGV is being populated? I really want the user to have the ability to cursor up/down the DGV and see affects of the RowEnter Event. I know I can also use the CellEnter event but it does not have the same effect.
View 4 Replies
Jun 2, 2011
We Could Easily Called A Functions By Pressing Enter In keypress Event. On textbox in vb.net. Eg.:-
If e.KeyChar = Microsoft.VisualBasic.ChrW(13) Then
Call Fsn()
End If
But. I can not called the functions on ComboBox. IN similar fashion. please help me to called a Funtion when we press ENTER IN ComboBox.
View 3 Replies
Apr 29, 2011
im looking for some code that can enable a e.keyvalue event when a player hits an object on form but i also want the form to load with the e.keyvalue event disabled
View 6 Replies
Feb 26, 2012
I 'm a beginner and have a project that I'm using to turn lights on and off. I need to use separate forms for display on remote monitors. My problem is each form needs the same serial port open to work and the port won't open unless it's closed in the previous form. Using a module works for opening and closing the port, but only for one round. If I try to revisit a form I already accessed it doesn't work.
Public Sub sp1(byval SerialPort1)If Form2.SerialPort1.IsOpen = TrueThen Form1.SerialPort1.Close() If Form3.SerialPort1.IsOpen = TrueThen Form3.SerialPort1.Close() Form1.SerialPort1.Open() end sub
Public Sub sp2(byval SerialPort1) If Form1.SerialPort1.IsOpen = TrueThen Form1.SerialPort1.Close() If Form3.SerialPort1.IsOpen = TrueThen Form3.SerialPort1.Close() Form2.SerialPort1.Open() EndSub
Public Sub sp3(byval SerialPort1) If Form1.SerialPort1.IsOpen = TrueThen Form1.SerialPort1.Close() If Form2.SerialPort1.IsOpen = TrueThen Form3.SerialPort1.Close() Form2.SerialPort1.Open() EndSub
end Module
View 2 Replies
Nov 18, 2011
I am working on a simple vb project to read data from a PC serial port and write that data to a file.The data is ascii sent in Hex format. I used MySerialPort.ReadChar() to read data and MyStreamWriter.Write(MySerialPort.ReadChar()) to write it to a file.
I copied my code below, sorry about the format.The trouble is: MySerialPort.ReadChar() acts the same as MySerialPort.ReadByte() , both takes the Hex data input and returns data in decimal format.I tried to use Convert.ToChar(MySerialPort.ReadChar()) to covert decimal to char, but it's too slow.I tried decimal.ToChar(MySerialPort.ReadChar()), but VB doesn't recognize decimal.ToChar, even after I installed .NET4.
Did I do something wrong? how to make MySerialPort.ReadChar() to read Hex data and return char?
[Code]...
View 8 Replies
Jan 23, 2011
I have created my own object, wich contains a SerialPort. I have a sub in my object wich handles the .DataRecieved-event. I'm trying to access my DataSet from that sub, but for some reason I'm unable to do that. It keeps telling me that my tables contains 0 rows, but I'm 100% sure that they contains several rows.
View 10 Replies
Sep 9, 2010
I have things set up so that the program is ready to start logging ,only when Recieving=true.This is controlled with Button1. So I click button1,Serial port is open and waiting for some signals from the Dyno.When 1 signal come it put a "1" in TextBox1 ,and for the second a "2" and so on. Thing is sometimes it starts right away, like I want it to,and sometimes it lags a fraction of a second, even though the Port is open.When it lags there are already 5 to 10 signals gone by before it starts logging 1,2,3,...and so on. Sometimes it don't start at all.Then I have to close and re-open the form and it works,but with lagging on the first "set"
"Textbox1 > 0 then" triggers a timer (not seen in this code)that samples Textbox1 once pre interval and writes the value to a listbox. On the upside as soon as a "1" is displayed in textbox1 the timer starts like it's supposed to.I noticed this behaviour before I added the timer and besides the timer has nothing to do with the signals coming from the SerialPort. I have my form setup so I can run "sets".Run one "set"...save...reset...run another "set" ...and compare.It's always the first "set" thats off.If I run multiple "sets" the first one is completely "whacked", and the rest are consistent.
Think this could be the SerialPort lagging,or code problems?
Public Class Form1
Dim resetValues As Boolean = False
Dim RPM As Double
[CODE]...
View 19 Replies