Error In Serial Port Data Capture Program In Visual Studios 2010?
Apr 11, 2012
I'm trying to make a rs232 serial data logging program, that accepts a 12 bit hex RFID tagID from an RFID module. My end objective is to save this RFID tagID into a database and assigned to a person for a personnel management system.I had to use button3 to add the value of the variable 'msg' into textbox1 because I was getting the following error "Cross-thread operation not valid: Control 'TextBox1' accessed from a thread other than the thread it was created on". It is a temporary workaround.When I do press button3, I get the incomplete hex number, instead of "4C00A2C82A0C", I get "A2C82A0C", and sometimes I get random digits like 1,A,C etc etc.
Public Sub OpenPort()
Try
If SerialPort1.IsOpen Then
SerialPort1.Close()
To send serial data from Arduino Mega 2560 to a VB.Net PGM, then the VB.NET pgm will read data then send to via FSUIPC (an Addin DLL) to ms flight simm 2004.OK that said here is the question: how can I write or phrase or construct the proper syntex needed to 1-limit the data sent,or in reading the data-limit the data read?I have enclosed the VB.NET code and the Arduino code. Please take a look. I am very new to both,but I try hard. all the code works but I get strange all most random data in VB. The FSUIPC end works OK, I can send to and receive from Ok.It's the VB pgm that gets the data wrong some of the time. say 8 out of 10 it is OK then button x will also turn on or off another check box then do what was aked. It seems that I am not clearing the receive buffer so I get a last chr sent before.I have tryed readline, readexisting,readbyte but I don't know how to phrase or construct any but the readline. I have tryed to flush the buffer in both codes but, well I am stuck. [code]
I got an Arduino hooked up to the PC and would like to read the serial port of it. I read the serial port in Visual Basic with com.Readline, but it won't read everything. It looses around 2-3 lines that were sent over the serial port to the Visual Basic code. They get "lost".
when the user clicks on the add button another form launches, which enables the user to add student info such as name, address, course, start date and end date, this information is then written to class when the ok button on that form is clicked, and then displays the data on the initial form in data grid. the user can add multiple entries and they are all displayed on the intial form and a the data grid is populatedwhen any of the rows in the displayed grid is selected, and the update button is clicked then the same form launches as the previous one and but this time its in the update mode and pre populates the form with the inital values.
I am supposed to make a software for data logging via serial port but the hardware is expected to be delayed and iam required to continue with the programming of the software. What i need is that by some mechanism i want to send data on serial port (COM port) and after delay of some mili seconds i want to detect that data. I actually want to do this because i want to create environment like my software i intercepting COM port and on receiving data it captures the data values on port and record them to database. I have done most the work, the only thing left which i want is as above how i will send data on COM port (this was to actually to be done by hardware) and detect it in my program (same program from which data was sent). Please guide from where should i start.
i am a absolute beginner and i want to use vb to receive data from micro controller through serial port using rs232 standards, i found this code to receive the data serially, can any one tell me where should i paste this code, so that the data received will be displayed in message box.Private Sub DataReceived(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) HandlesSerialPort1.DataReceived
Private Sub receive_data(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived Dim aBuffer(255) As Byte Do While SerialPort1.BytesToRead > 0
[code]....
Basically, what I am trying to do is everytime I receive data from the serial port, I turn that data into an array (aBuffer) and I then call another sub using that info.The problem I'm having is that everytime I receive data, the array only fills up to the first 8 bytes! This isn't a problem when I receive smaller packets of 6 bytes but anything else gets chopped off.
What is really frustrating is that it seems quite fickle. I've read somewhere that this happens because the computer is handling the bytes received faster than they are being put in the buffer?? Not really sure but if I put a couple of breakpoints during debug, sometimes the array fills up correctly... Note the maximum size of any one incoming message would be 255 bytes.
This is an amateur radio project. I have a TNC (modem) that receives a digital stream (AX.25) from my radio. The TNC decodes the AX.25 frames and translates them to KISS frames (the protocol used between the TNC and the PC, see documentation here: [URL] It sends the data as HEX values.
What I'm looking for on the serial stream is the beginning of a data frame marked by 0xC0 0x00 and ending with 0xC0. Should be easy. Using serialport.readbyte() I should get binary data that I can convert to hex and look for the beginning of a data frame and then convert the subsequent data to ascii, as it will be text from a chat session.
Just to try it out and see the raw data coming from the port, I use teraterm or realterm and capture the data and it's a mix of junk (control frames and what not) and valid text. When I display the same data in a text box in VB I get data that look like this:
when I try to install it, after it extracts all of the needed temp files, it throws this error, and stops there..."windows cannot find 'C:users*my username*appdatalocal empSIT19120.tmpsetup.exe' make sure you typed the name correctly and then try again."anyone know what the heck I need to do to get this fixed...nothing has changed, not even the file location of the installation files...nothing..also, I just found out, the temp file's name is changed each time I try to run the setup application...
I have conquered the problem of the database however what i need is the serial port data sent to a database and outputted on screen however i keep getting cross thread errors ..
Imports System.Data.OleDb Imports System Imports System.ComponentModel Imports System.Threading
still working on my game, but a college classmate said that I need to use databases instead of text files...so I'm wanting to know, what databases does visual studios 2010 provide for you to use...what code line should I use to create/write to/read from a databasew, and how do/should I create a database table/refer to it??
I would love to provide code, but I'm both using my cell, and don't have access to my computer right now due to it not being accessale due to not having the ability to have it hooked up right now...got new floors and don't have it plugged in yet/set up again...
I'm doing this project with Visual Basic , where in I have an external prototype that needs to transmit data , We will be using a serial to USB cable. I need to build a PC based program in VB that will get the data being thrown by the microcontroller(the project is chess tracking, and we need to get the data tracked.) How will I start the program?
I'm using an serial port monitor to get the protocol used by a software that i want to emulate using VB.net but I don't know how to configure the serial port with this configuration:
IOCTL_SERIAL_SET_LINE_CONTROL: Set line control WordLength=8 StopBits=2 stop bits Parity=Space parity
Im having problem with the Serial Port. When i run my program, "Access to the port 'COM1' is denied". What does that mean? Im not sure whats happening because theres no error in my code. Someone suggest me to use 'COM2'. Which is also the same result. I have a microcontroller, programmed and run it. And i need to capture the data onto my vb, which is on a multiline textbox. How to i do that?Just to double check my code?
The link below has code to connect to a modem thru the serial port but it is for an earlier version of VB. when I convert the code, it does not fully convert and has 4 errors that prevent building the project. can someone tell me what needs to be changed or added?
I am currently working on a program that gets data from an external device (microcontroller) and saves the data into a database. I got everything to work except for one simple part. Everytime I disconnect from the serial port, the program stops working and highlights this part of my program:
x = SerialPort.ReadTo("a")
This part just gets the data from the serial port and saves it to variable [COLOR="rgb(72, 209, 204)"]x[/color]This is the complete subclass of my program:
[code]...
It is supposed to read data from the serial port and execute a command that tells VB store the data collected. Whenever I use the function
[COLOR="rgb(72, 209, 204)"]SerialPort.Close()[/color] , the program stops working. What could I be doing wrong? Could the program be stuck in the serialPort.ReadTo() function? Although it does execute the lines in the subclass.
I have very limited knowledge of any programming and am desperately trying to learn. I am attempting to use Visual Basic to create a simple program to operate our church's projector from the computer. I am able to control the projector using hyperterminal and accessing the serial port. I am wondering how I would code a button to send the correct signal to the correct port? I have a simple setup w/ my church logo in background with three buttons. There is an On, Off and Freeze button. I am simply needing to know how to program the buttons to access the serial ports. I hope I am being clear.
I have a VB.Net 2008 app that I have converted from VB6 which reads data from a weight scale connected to a serial port. I am able to read the received data and display it on the screen, but when I go to Stop the reading and attempt to close the serial port, the app hangs.
Private Delegate Sub ShowWeight(ByVal tWeight As String) Private Sub comScale_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles
i want to know how can grip messages come by serial port and create data base to this message ,,,i mean to drop this message to . record to store it and i can use in my program
i have the following code which runs ok, but it hogs upto 95% of the CPU.program outline: a timer tick event = 1000ms scans through 30 readlines of data on the comport for a specific line of hex, and then extracts information from the next line and converts it to decimal for viewing on the screen.i've only included the main part of the code to try and keep it simple.
Public Class Form1 Private WithEvents serial As New IO.Ports.SerialPort Public grab As String Public cardIndex As Integer
I am facing problem reading data from Serial port. Actually I am connecting with the hardware device called Crimp Force Analyzer. It gives the data on hyperterminal and I have to read that data from my <acronym title="Visual Basic">vb</acronym>.net program. The data is somewhat like this:
I'm currently working on a project where I am transmitting data from a comm device via the serial port and resorting the raw data (in binary) to its respective ascii values. The problem I'm facing is determining the most efficient method to accomplish my goal. Essentially, I have 68 bytes coming in, the first and second bytes represent the page and packet number and the data itself ranges from 3 to 64, the remaining for my checksum.
What I am needing to do is, grab 50 consecutive bytes per variable in my array, and that is where I'm confused. I have easily pulled my 3-64 bytes and stored that data to a string. I just don't know the most efficient method to accomplish my goal. Should I write directly to file all my data, as there are like 8 pages, of 128 packet data. [Code] I can capture the the first 50 by using a for-loop easily, but what would be the preferred method to track what data chunk I've taken? The more I think about it, I think I may just want to write to file, all my data, and then just take them back to back in 50 byte chunks. Is that the most efficient method?
I am trying to buld a DLL in VB.NET 2010 that will be use to control a vending machine.Whin a call into the DLL to a function to open and setup the comport the first time its opens it just fine, but if a call into the DLL again it does not know that the port is open even if it is still open. I can check with another program and is shows the port is open and if I try to call into the DLL again to open the port I get an error that the port is already open. Any idea how to set this up so it will work.
I need to open and config the com port in one call that leaves it open and then in other call use the com port to talk the equipment in the machine without closing the com port untill it is required to close it.
how to write code to read data from the serial port. I have a microcontroller connected to the serial port and I need the C++ program to read the input and to perform a certain task according to the information.