Thông báo

Collapse
No announcement yet.

Giao tiếp RS232 trên PC bằng Visual Basic 6.0

Collapse
This is a sticky topic.
X
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Nguyên văn bởi leemanhj916 Xem bài viết
    Đề tài của bạn chỉ có phần đọc dữ liệu dòng và áp là chính thôi. việc đó làm được thì chỉ việc gửi dữ liệu đó lên thôi
    nên có header, checksum ... để kiểm tra dữ liệu đúng hay sai và hiển thị dữ liệu nhận được từ mạch thôi
    Có ai chỉ dùm mình cái code viết thế nào không nhỉ?

    Comment


    • em đang làm thực tập công nhân mạch UPS ông thầy yêu cầu viết code lưu trữ dữ liệu trên máy tính. Có nghĩa là hằng ngày acquy nạp dòng áp bao nhiêu thời gian bao lâu thì em phải lưu lại trên máy tính nhưng mà em chẳng biết hướng làm là viết code kiểu chi. Dòng áp nạp có vdk 8051 lưu trữ nhưng do ROM nó nhẹ nên ông thầy bắt em lưu trên máy tính nữa. mấy anh chị giúp em với!!!

      Comment


      • Mình cũng đang bí chỗ này,mong các bạn giúp đỡ.

        Vi điều khiển của mình gởi lên, chương trình Terminal nhận được tốt, nhưng chương trình VB của mình không nhận được, nó báo lỗi 8020 ngay chỗ Buff = MScomm1.input (Error reading com device). Mình nghĩ đủ cách rồi vẫn chưa ra. Mong các bạn giúp đỡ cho !

        Xin cám ơn nhiều !

        Comment


        • Nguyên văn bởi tienrkwlotus Xem bài viết
          Mình cũng đang bí chỗ này,mong các bạn giúp đỡ.

          Vi điều khiển của mình gởi lên, chương trình Terminal nhận được tốt, nhưng chương trình VB của mình không nhận được, nó báo lỗi 8020 ngay chỗ Buff = MScomm1.input (Error reading com device). Mình nghĩ đủ cách rồi vẫn chưa ra. Mong các bạn giúp đỡ cho !

          Xin cám ơn nhiều !
          e cũng lam mach thật và bị lỗi như thế này. ai có thể giúp với e sắp báo cáo rồi. !

          Comment


          • bác nào bày em tạo cái combobox để chọn cổng com cái ví dụ như bấm vô conbobox sẽ có 1 list cổng com com1,com2,com3,com4,thay vì phải vô comport điền số vào

            Comment


            • các anh chị cho em hỏi một chút là cần sử dụng những hàm nào để lấy dữ liệu từ cổng COM để hiển thị trên giao diện VB với ạ?
              tại vì em cứ nghĩ là dữ liệu được đưa lên cổng COM thì sẽ hiển thị trực tiếp, nhưng khi em thiết lập hàm khởi tạo như thế này rồi mà khi kết nói chương trìng vẫn báo lỗi "Invalid property value" ạ:
              void CCommunicationDlg::Settings()// ham thiet lap tham so cho MSComm
              {
              //neu cong dang mo thi dong cong de thiet lap tham so
              if (m_mscomm1.get_PortOpen())
              m_mscomm1.put_PortOpen(false);
              // thiet lap ten cong
              m_mscomm1.put_CommPort(m_cboComPort.GetCurSel()+1) ;
              // thiet lap handshaking
              //m_mscomm1.put_Handshaking(m_cboHandshaking.GetCurS el());
              // thiet lap tan so, bit du lieu, bit stop
              CString str_bitrate = getCurStrInCombobox(m_cboBitRate);
              CString str_parity = getCurStrInCombobox(m_cboParityBit);
              CString str_stopbit = getCurStrInCombobox(m_cboStopBit);
              CString str_databit = getCurStrInCombobox(m_cboDataBit);
              CString str_setting;
              str_setting.Format(L"%s, %c,%s,&s", str_bitrate, str_parity[1], str_databit, str_stopbit);
              m_mscomm1.put_Settings(str_setting);
              m_mscomm1.put_RThreshold(1);
              m_mscomm1.put_InputLen(1); //moi lan doc mot ki tu
              m_mscomm1.put_InBufferSize(1024);
              m_mscomm1.put_InputMode(0); // 0- text mode, 1- binary mode
              m_mscomm1.put_OutBufferSize(1024);
              m_mscomm1.put_PortOpen(true);
              }

              Comment


              • Anh Lethang85 ơi.anh có thể mail cho em với đc k?............link đó hỏng mất rồi....Mail: Baha09d2@gmail.com....thanks anh nhiều

                Comment


                • mấy anh em cho mình hỏi chút. mình đang làm đồ án nhưng tới phần giao tiếp máy tính với vđk thì nó k chạy,dưới đây là code vđk và vb của mình,mấy anh em xem giúp đỡ với:
                  code vđk:
                  org 00H
                  jmp main
                  org 30h
                  main:
                  mov SCON, #52h ;Port noi tiep mode 1
                  mov TMOD, #20h ;Timer 1 mode 2
                  mov TH1,#0Fdh ;9600 baud
                  setb TR1
                  loop:
                  jnb RI, $ ;doi nhan du lieu
                  clr RI
                  mov A, SBUF ;lay du lieu
                  kt_sang_trai:
                  cjne A, #'a', kt_sang_phai ;neu la yeu cau sang trai
                  MOV P0,#11001100B
                  CALL DELAY_50MS
                  MOV P0,#0
                  CALL DELAY_50MS
                  jmp main
                  kt_sang_phai:
                  cjne A, #'d', kt_tien ;Neu la yeu cau sang phai
                  MOV P0,#10111011B
                  CALL DELAY_50MS
                  MOV P0,#0
                  CALL DELAY_50MS
                  jmp main

                  kt_tien:
                  cjne A, #'w', kt_lui ;Neu la yeu cau tien
                  MOV P0,#11101110B ;CHI QUAN TAM DEN 4 BIT THAP 1000 UNG VOI ROBOT CHAY THANG
                  CALL DELAY_50MS
                  MOV P0,#0
                  CALL DELAY_50MS
                  jmp main

                  kt_lui:
                  cjne A,#'s', kt_dung ;Neu la yeu cau lui
                  MOV P0,#11011101B ;LUI ROBOT
                  CALL DELAY_50MS
                  MOV P0,#0
                  CALL DELAY_50MS
                  jmp main

                  kt_dung: ;Neu la yeu cau dung
                  cjne A,#'j', kt_cam_trai
                  MOV P0,#10101010B;DUNG ROBOT VA QUAY CAMERA
                  CALL DELAY_50MS
                  MOV P0,#0
                  CALL DELAY_50MS
                  jmp main

                  kt_cam_trai:
                  cjne A, #'k',kt_cam_phai
                  MOV P0,#10011001B;DUNG ROBOT VA QUAY CAMERA
                  CALL DELAY_50MS
                  MOV P0,#0
                  CALL DELAY_50MS ;Neu la yeu cau quay camera sang phai
                  jmp main
                  kt_cam_phai:
                  cjne A, #'l',kt_bao_dong
                  MOV P0,#10001000B;DUNG ROBOT VA QUAY CAMERA
                  CALL DELAY_50MS
                  MOV P0,#0
                  CALL DELAY_50MS ;Neu la yeu cau quay camera sang phai
                  jmp main
                  kt_bao_dong:
                  cjne A, #'h',kt_dung
                  MOV P0,#01110111B;bao dong
                  CALL DELAY_50MS
                  MOV P0,#0 ;Neu la yeu cau quay camera sang phai
                  CALL DELAY_50MS
                  jmp main

                  DELAY_50MS:
                  MOV TMOD,#01H
                  MOV R0,#50
                  LOOP20:
                  MOV TH0,#0ECH
                  MOV TL0,#78H
                  SETB TR0
                  JNB TF0,$
                  CLR TF0
                  CLR TR0
                  DJNZ R0,LOOP20
                  RET
                  end
                  ,,,,,,,,,,,,,,,,,,,,,,
                  ,,,,,,,,,,,,,,,,,,,,
                  chương trình vb:
                  Public Class Form1

                  Private Sub Nut_thoat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_thoat.Click
                  Form2.ShowDialog()

                  End Sub

                  Private Sub HướngDẫnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HướngDẫnToolStripMenuItem.Click


                  End Sub

                  Private Sub ThôngTinToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ThôngTinToolStripMenuItem.Click

                  End Sub

                  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
                  If SerialPort1.IsOpen Then SerialPort1.Close()
                  SerialPort1.Open()
                  End Sub

                  Private Sub Button_phai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_phai.Click
                  SerialPort1.Write("d")
                  Label2.Text = ("Robot đang rẽ phải")
                  End Sub

                  Private Sub Button_toi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_toi.Click
                  SerialPort1.Write("w")
                  Label2.Text = ("Robot đang đi tới")
                  End Sub

                  Private Sub Button_trai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_trai.Click
                  SerialPort1.Write("a")
                  Label2.Text = ("Robot đang rẽ trái")
                  End Sub

                  Private Sub Button_dung_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_dung.Click
                  SerialPort1.Write("j")
                  Label2.Text = ("Robot đã dừng")
                  End Sub

                  Private Sub Button_lui_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_lui.Click
                  SerialPort1.Write("s")
                  Label2.Text = ("Robot đang đi lui")
                  End Sub

                  Private Sub Form1_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
                  If (SerialPort1.IsOpen) Then SerialPort1.Close()
                  End Sub

                  Private Sub TớiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TớiToolStripMenuItem.Click
                  SerialPort1.Write("w")
                  Label2.Text = ("Robot đang đi tới")

                  End Sub

                  Private Sub LuiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LuiToolStripMenuItem.Click
                  SerialPort1.Write("s")
                  Label2.Text = ("Robot đang đi lui")
                  End Sub

                  Private Sub PhảiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PhảiToolStripMenuItem.Click
                  SerialPort1.Write("d")
                  Label2.Text = ("Robot đang rẽ phải")
                  End Sub

                  Private Sub TráiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TráiToolStripMenuItem.Click
                  SerialPort1.Write("a")
                  Label2.Text = ("Robot đang rẽ trái")
                  End Sub

                  Private Sub DừngToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DừngToolStripMenuItem.Click
                  SerialPort1.Write("j")
                  Label2.Text = ("Robot đã dừng")
                  End Sub

                  Private Sub ThôngTinToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ThôngTinToolStripMenuItem1.Click
                  MsgBox(" Chương trình điều khiển từ xa phiên bản 1.0 này là Đồ án môn học Hệ thống Cơ điện tử, do sinh viên Nguyễn Quốc Vũ - lớp 06CDT2 - ngành Cơ Điện Tử - Trường Đại Học Bách Khoa Đà Nẵng viết. ")
                  End Sub

                  Private Sub CáchĐiềuKhiểnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CáchĐiềuKhiểnToolStripMenuItem.Click
                  MsgBox(" Bạn có thể điều khiển Robot bằng bàn phím trên máy tính: Ctrl + W: đi tới ; Ctrl + S: đi lui; Ctrl + A: sang trái ; Ctrl + D: sang phải ; Cltr + J: dừng ; Cltr + K: Camera quay trái ; Cltr + L: Camera quay phải")
                  End Sub

                  Private Sub PhôngNềnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PhôngNềnToolStripMenuItem.Click
                  ColorDialog1.ShowDialog()
                  Me.BackColor = ColorDialog1.Color
                  End Sub

                  Private Sub MàuNútNhấnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MàuNútNhấnToolStripMenuItem.Click
                  ColorDialog1.ShowDialog()
                  Button_cam_phai.BackColor = ColorDialog1.Color
                  Button_cam_trai.BackColor = ColorDialog1.Color
                  Button_trai.BackColor = ColorDialog1.Color
                  Button_phai.BackColor = ColorDialog1.Color
                  Button_toi.BackColor = ColorDialog1.Color
                  Button_lui.BackColor = ColorDialog1.Color
                  Button_dung.BackColor = ColorDialog1.Color
                  Button_thoat.BackColor = ColorDialog1.Color


                  End Sub

                  Private Sub Button_cam_trai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_cam_trai.Click
                  SerialPort1.Write("k")
                  Label2.Text = ("Camera đang quay trái")
                  End Sub

                  Private Sub Button_cam_phai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_cam_phai.Click
                  SerialPort1.Write("l")
                  Label2.Text = ("Camera đang quay phải")
                  End Sub

                  Private Sub CameraTráiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CameraTráiToolStripMenuItem.Click
                  SerialPort1.Write("k")
                  Label2.Text = ("Camera đang quay trái")
                  End Sub

                  Private Sub CameraPhảiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CameraPhảiToolStripMenuItem.Click
                  SerialPort1.Write("l")
                  Label2.Text = ("Camera đang quay phải")
                  End Sub
                  End Class

                  Public Class Form2

                  Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click


                  End Sub

                  Private Sub Nut_khong_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Nut_khong.Click
                  Me.Close()
                  End Sub

                  Private Sub Nut_co_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Nut_co.Click
                  End

                  End Sub

                  Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
                  Beep()
                  End Sub
                  End Class

                  mong mấy bác giúp đỡ dùm,mình còn mấy ngày nữa là bảo vệ r

                  Comment


                  • tks bác bác học giỏi thế

                    Comment


                    • tks a rtai nhé e đang cần cái này bạn ò

                      Comment


                      • tks anh giao tiếp với máy tín chưa chắc thánh nào cung làm đựoc

                        Comment

                        Về tác giả

                        Collapse

                        ngohaibac Tìm hiểu thêm về ngohaibac

                        Bài viết mới nhất

                        Collapse

                        Đang tải...
                        X