รายละเอียดของการตอบ ::
... ใส่ความคิดเห็นตรงนี้.......
ต้องขออภัยด้วยจริงๆค่ะ น้องไม่ค่อยมีความรู้ค่ะ เพิ่งหัดทำ
concept ของโปรแกรมที่จะทำคือ
1. Scan QR เพื่อ แสดง Item กับ Standars master
2. ชั่งน้ำหนักที่เครืองชั่ง
3. เทียบน้ำหนัก Standard กับ น้ำหนักที่ชั่งได้
ปัญหาตอนนี้คือ ค่านำนักจากเครื่องชั่งที่รับมา มันวิ่งไม่หยุดเลยค่ะ พอจะมีวิธิการ หรือ เทคนิควิธีแนะนำเพื่อนำค่าที่รับได้ออกมาใช้งานต่อได้มั้ยค่ะ
Code การเชื่อมต่อ Port ก็ได้มาจากกระทู้ในเว็บนี้แหล่ะค่ะ และเอามาอะแด๊ปเอา แต่ไปต่อไม่ได้
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label7.Text = dtime
myPort = IO.Ports.SerialPort.GetPortNames()
cmbBaud.Items.Add(2400)
For i = 0 To UBound(myPort)
cmbPort.Items.Add(myPort(i))
Next
cmbPort.Text = cmbPort.Items.Item(0) 'Set cmbPort text to the first COM port detected
cmbBaud.Text = cmbBaud.Items.Item(0) 'Set cmbBaud text to the first Baud rate on the list
'===Connect
SerialPort1.PortName = cmbPort.Text 'Set SerialPort1 to the selected COM port at startup
SerialPort1.BaudRate = cmbBaud.Text 'Set Baud rate to the selected value on
''Other Serial Port Property
SerialPort1.Parity = IO.Ports.Parity.None
SerialPort1.StopBits = IO.Ports.StopBits.One
SerialPort1.DataBits = 8 'Open our serial port
SerialPort1.Open()
'btnConnect.Enabled = False 'Disable Connect button
'btnDisconnect.Enabled = True 'and Enable Disconnect button
'=======
End Sub
Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
ReceivedText(SerialPort1.ReadExisting()) 'Automatically called every time a data is received at the serialPort
End Sub
Private Sub ReceivedText(ByVal [text] As String)
'compares the ID of the creating Thread to the ID of the calling Thread
If Me.txtSN.InvokeRequired Then
Dim x As New SetTextCallback(AddressOf ReceivedText)
Me.Invoke(x, New Object() {(text)})
Else
Me.txtSN.Text &= [text]
End If
End Sub