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

  • #16
    cam on anh em nhieu nhe

    Comment


    • #17
      em thấy bài này hay ,em cũng đang làm chương trình mở barrier sử dụng plc s7-200 với VB6.0 .trong VB em có txtsend ,nút cmdsend, nếu em ghi kí tự A vào textbox1 và nhấn nút send thì Q0.0 mở . chương trình thì em viết thế này :
      private sub mscomm1_oncomm()
      dim buffer
      buffer =text1.text
      private sub cmdsend:
      mscomm1.output=chr(65)
      nhưng khi em test thì ko thấy tín hiệu Q0.0 và thấy xuất hiện lỗi truyền thông ,ko kết nối được với plc s7-200 của siemens nữa .vậy có ai biết xin chỉ dùm .cảm ơn nhiều .chúc vui

      Comment


      • #18
        các bác cho tôi hỏi về giao tiếp vp với mcu với.
        để gởi 1 chuỗi data từ pc xuống MCU cần có định dạng strar data stop. có thể gởi không có start nhưng cần có stop. ở vb phải định dạng thế nào để MCU hiểu đó là stop nhỉ.
        nếu dùng 1 byte nào đó để định dạng cho stop thì nếu trong data cũng có byte giống như stop thì sao. mong các bác chỉ giúp
        LMD 238 Tăng Bạc Hổ - TP. Quy Nhơn.

        Comment


        • #19
          mình có hai vân đề cần các bác giúp đớ với.
          1. làm thế nào để khi gắn cổng com kết nối VDK với máy tính thì máy tính tự nhận ra là có thiết bị đang kết nối không nhỉ (cái này giống như khi gắn một USB hay bậc nguồn máy in lên vậy các bác ạ).
          2. hiện nay mình muốn làm chương trình dùng 1 cổng com của máy tính để kết nối với 2 VDK khác nhau. khi pc truyền data cho VDK A thì chỉ có A nhận, B không nhận. khi PC truyền data cho B thì chỉ có VDK B nhận, A không nhận.
          bác nào biết giúp mình với nhé.
          LMD 238 Tăng Bạc Hổ - TP. Quy Nhơn.

          Comment


          • #20
            tay queduong này đi đâu cũng thấy, ba hoa chích chè. làm gì có cổng com ảo nào. USB là nối dài bus máy tính, nó là com thật chứ ảo cái gì. Máy tính AT có thể có 16 COM, theo bảng địa chỉ của tiêu chuẩn AT, cứ thế mà thêm vào. bảng địa chỉ, danh sách các com thì đọc trong rec của win hoặc khối thông tin bios của dos. Một cách mà cho MSCOMM32 nó quét qua cả 16 port, nếu lỗi ở đâu thì đọc thông tin lỗi xem com đó không có hay là bận.
            Càng nói càng thể hiện cái dốt mà thôi. Chuyên gia chí, acc chuyênchis rạch mặt của VN lính.

            Nguyên văn bởi queduong Xem bài viết
            thấy các bác bàn luận sôi nổi quá , biết mình công lực vẫn non kém ... nên hỏi mấy bác giúp đỡ .

            --- Giả sử ta có một thiết bị chuyển đổi USB sang RS232 .

            không sử dụng API , làm sao ta biết được thông tin để truy cập port đó một cách tự động . ( quy luật gán địa chỉ các com port ảo , LPT ảo )... dựa trên yếu tố nào ???

            VD : com 1 0x.... ??? com 2 ....
            LPT1 : $0378 ... LPT2 : $0278 ... LPT3: $03BC

            --- Đã bác nào làm truy cập DOS vào cổng com ảo được chưa ???

            Có thể đưa thông tin bằng giải thuật hoặc EX code được không

            VD : đặt 1 ID cho MCU
            dùng chương trình gửi (scan ) từng port , đến khi nhận port là detect phần cứng

            Comment


            • #21
              Tay này càng nói càng luyên thuyên.

              cái dòng dưới đây là thông tin driver của cái bus USB chứ không phải của cổng com

              Nguyên văn bởi queduong Xem bài viết
              các thông số Com ảo này nói lên điều gì ???

              USB\VID_067B&PID_2303\5&2D3FDD4A&0&1

              VID_067B = địa chỉ ???
              PID_2303 = Chip PL2303

              ?????????????????????????

              AT không phải 4 cổng com mà là 16, hiểu chửa. Các địa chỉ 16 cổng này được fix cố định rồi, hiểu không. MSCOMM32 cũng có sẵn 16 cái com này rồi
              Khi ở MSdôs, bus USB chưa chạy thì chưa có cái com usb nào chạy cả
              khi đã đủ 16 cái com thì cắm thêm USB com cũng chỉ để cho oai thôi


              Nguyên văn bởi queduong Xem bài viết
              các thông số Com ảo này nói lên điều gì ???

              USB\VID_067B&PID_2303\5&2D3FDD4A&0&1

              VID_067B = địa chỉ ???
              PID_2303 = Chip PL2303

              ?????????????????????????
              Nguyên văn bởi queduong Xem bài viết
              Hình như standard com port chỉ có từ Com1 đến com4 thôi thì phải ( trong bios )

              Việc quét những comport này để tự động nhận phần cứng thì đơn giản trong dos ( vì các port này map địa chỉ Bios )

              --- còn các port ảo ( mở rộng đến 256 port ) thường phải dùng win api để nhận dạng ( các port dll ) hoặc các hàm .

              ---
              Điều mình quan tâm là có thể truy cập các port này bằng các chương trình đã được dùng trong DOS trước đây được không ??? ( cõ lẽ là không được )

              --- Đã có ai ngâm cứu cái porttalk chưa ??? vì mình đã thấy một số chương trình viết trên các OS đời cũ ( 95 , 98 ... ) khi sang win32 không truy cập được port và phải dùng cái này để nhận port ( cái project AVR ISP 3. thì phải ) .

              --- mọi người có phương án gì không . Hay là cứ phải nâng đời máy rồi mấy cái phần mềm cũ vứt hết , viết cái phần mềm mới , hay phải mua 1 con máy tính cổ về để phục dịch cái phần mềm cũ ... chuối nhỉ
              (@F sửa)

              Comment


              • #22
                Nguyên văn bởi vnpolit Xem bài viết
                Tay này càng nói càng luyên thuyên.

                cái dòng dưới đây là thông tin driver của cái bus USB chứ không phải của cổng com




                AT không phải 4 cổng com mà là 16, hiểu chửa. Các địa chỉ 16 cổng này được fix cố định rồi, hiểu không. MSCOMM32 cũng có sẵn 16 cái com này rồi, nghe chửa
                Khi ở MSdôs, bus USB chưa chạy thì chưa có cái com usb nào chạy cả, hiểu chửa.
                khi đã đủ 16 cái com thì cắm thêm USB com cũng chỉ để cho oai thôi, đã hiểu ra chưa.

                Tay này chỉ làm chí rạch mặt ăn vạ là hợp lý. Càng nói chuyện càng thể hiện cái bản chất ra.

                @F xóa

                Người ta quan niệm các máy IBM ngày xưa các cổng com được tích hợp có sẵn trên Main Board chỉ gồm com1 , com2 thôi và nó thường được gán com1, com2 theo mặc định mức độ ưu tiên phần cứng đã tích hợp sẵn .

                Còn cái dây USB sang COM thì lạ cái gì ... Từ DOS mày có truy cập vào được cái cổng COM này không ...
                Phát biểu vớ vẩn ...
                Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com

                Comment


                • #23
                  mình làm theo gióng như vậy nhưng sao không dc nhỉ bà con giúp mình với .Đây là code
                  8051:
                  ORG 00H
                  LJMP MAIN
                  ORG 23H
                  LJMP SERIAL
                  MAIN:
                  MOV P1,#0FFH
                  MOV TMOD,#20H
                  MOV TH1,#0FDH
                  MOV SCON,#50H
                  MOV IE,#10010000B
                  SETB TR1
                  BACK:
                  MOV A,P2
                  MOV SBUF,A
                  MOV P1,A
                  SJMP BACK
                  ;====================================
                  ORG 100H
                  mov p2,#00h
                  SERIAL:
                  JB TI,TRANS
                  MOV A,SBUF
                  CLR RI
                  RETI
                  TRANS:
                  CLR TI
                  RETI
                  END
                  vb
                  Private Sub cmdClear_Click()
                  Text1.Text = ""

                  End Sub

                  Private Sub cmdExit_Click()
                  Unload Me
                  End Sub

                  Private Sub cmdSend_Click()
                  MSComm1.Output = Text2.Text
                  End Sub

                  Private Sub Form_Load()
                  cmdSend.Caption = "&Send"
                  Text1.Text = ""
                  Text2.Text = ""
                  Text1.Enabled = False
                  cmdExit.Caption = "&Exit"
                  With MSComm1
                  .Settings = "9600,N,8,1"
                  .CommPort = 4
                  .RThreshold = 1
                  .SThreshold = 0
                  .InputMode = 1
                  .InputLen = 0
                  .Handshaking = comNone
                  .InBufferSize = 1024
                  .OutBufferSize = 1024
                  If .PortOpen = False Then
                  .PortOpen = True
                  End If

                  End With
                  End Sub

                  Private Sub MSComm1_OnComm()
                  Dim Buffer As Variant
                  If MSComm1.CommEvent = comEvReceive Then
                  Text1.Text = Text1.Text + MSComm1.Input
                  End If
                  End Sub
                  -Linh Kiện Điện Tử DBOT
                  06-Ngô Sỹ Liên-Liên Chiểu-Đà Nẵng 0988690009-0914333224

                  Comment


                  • #24
                    bạn thử khai báo lại phần Comport xem thế nào

                    Comment


                    • #25
                      Em chào các bác, em thấy mọi người thảo luận xôn xao về giao tiếp cổng COM, cÓ rất nhìu bài hay luôn, nhưng em chưa thấy bác nào nói về tập lệnh AT.
                      Chẳng dấu là : em đang tìm hiểu tập lệnh AT, sau khi thiết lập giao tiếp với cổng COM, em muốn gửi, nhận tin nhắn bằng tập lệnh AT qua GSM modem G2403R .
                      Bác nào đã từng nghiên cứu về tập lệnh AT, cũng như là gửi nhận tin nhắn dùng tập lệnh AT xuất ra cổng COM -> GSM modem G2403R thì giúp em với.
                      Hiện tại em chưa biết viết câu lệnh như thế nào để xuất những câu lệnh AT ra cổng COM........................

                      Comment


                      • #26
                        Em thấy các ví dụ đều truyền theo dạng text. Nếu muốn truyền theo dạng Byte làm thế nào anh nào có ví dụ post lên cho em tham khảo với. Cảm ơn các anh nhiều lắm

                        Cho em hỏi thêm một tí MScomm1.SThreshold = 0 có tác dụng gị vậy em đọc tài liệu nhưng ko có nhắc tới. Các anh chi giúp em. Thank

                        Khi truyền dữ liệu từ máy tính dùng visual theo chuẩn ANSI là sao các anh giải thích giúp em với.
                        Last edited by ngohaibac; 30-03-2009, 17:22.

                        Comment


                        • #27
                          Nguyên văn bởi ngohaibac Xem bài viết
                          Anh em có cần vài cái hình ảnh hướng dẫn thêm cái thư viện MSCOMM32 vào không nhỉ ?

                          Cho hình ảnh cho hoành tráng và trực quan nhỉ. Vì các bạn khoái Visual Basic hơn thì phải .

                          Chúc các bạn thành công.
                          Hì,đúng là như vậy thật anh Bắc ạ,mình đang làm đồ án tốt nghiệp,có phần lập trinh giao diện bằng VB,phải học thêm cả giao tiếp với cổng COM mà.Cảm ơn anh rất nhiều nha.
                          |

                          Comment


                          • #28
                            Nguyên văn bởi linhnc308 Xem bài viết
                            Code chương trình VB6 giao tiếp 232 các bạn down load file đính kèm.
                            @thiennghi: Nếu bạn ở HN thì mang cái đó qua, tôi sẽ xử lý giúp bạn. Dễ mà, không có j là khó cả, chỉ là ta chưa biết mà thôi

                            Bác ơi , em có tải cái bài bác làm nhưng em chưa hiểu đoạn code mục "From_Load", đoạn này viết cho nút nào trên giao diện, em ko thấy,mong bác giúp đỡ, em mới tìm hiểu.............

                            Comment


                            • #29
                              Nguyên văn bởi tpasterisk Xem bài viết
                              Bác ơi , em có tải cái bài bác làm nhưng em chưa hiểu đoạn code mục "From_Load", đoạn này viết cho nút nào trên giao diện, em ko thấy,mong bác giúp đỡ, em mới tìm hiểu.............
                              Form Load là những thứ khi chương trình được mở ra nó sẽ ngay lập tức thực hiện.
                              Phải ko nhỉ?
                              123...

                              Comment


                              • #30
                                Em cũng mới học VB , và xem mục này thấy anh Bắc hướng dẫn chi tiết, em cũng thử làm 1 chương trình nhỏ truyền ký tự giữa máy tinh qua cổng com và em có thêm một số chức năng hay , gửi lên cho mọi người xem và cho ý kiến.
                                Attached Files

                                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