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

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

    Chào các bạn.

    Đây là TUT về RS232 dùng VC++ để lập trình :
    http://www.picvietnam.com/forum/show...=newpost&t=274

    Mình xin đưa cho bạn một Code mẫu đơn giản viết băng VB và có file gửi kèm.

    Code:
    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 = 1
            .RThreshold = 1
            .SThreshold = 0
            .InputMode = comInputModeText
            .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
    Chúc bạn thành công.
    Attached Files
    Last edited by ngohaibac; 05-05-2007, 11:03.
    Technical sale at WT Microelectronics S'pore
    Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
    Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

  • #2
    Cám ơn bạn nha

    Mình đang bí về đề tài này. Rất cám ơn bạn.!!
    |

    Comment


    • #3
      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.
      Technical sale at WT Microelectronics S'pore
      Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
      Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

      Comment


      • #4
        Bắc dạo này luyện về interface ghớm nhỉ! Chúc em sức khỏe!

        Comment


        • #5
          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.
          Cám ơn Ngô Bắc Hải.

          Nhưng bạn nên viết chượng trình cho VXL và VB để người theo dõi dễ dàng học thêm.

          Thân chào
          ---------------------------------------------------




          ---------------------------------------------------

          Comment


          • #6
            Bắc cho mình hỏi về cái kết nối rs232 với

            đây là phần lập trình cho pic và cho VB nhưng khi chạy thì chẳng hoạt động đúng mặc dù cái Mscomm1.input vẫn nhận nhưng cái text thì ko hiển thị được mình cho chạy debug thì thấy cái Mscomm1.input như là dòng chữ bị lỗi phông toàn ô vuông ko hiểu tại sao ? còn cái text thì vẫn ko thay đổi ko biết phải sửa lại ntn
            #include <16f877a.h>
            #include <def_877a.h>

            #device *=16
            #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
            #use delay(clock=20000000)
            #use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)//Su dung cong RS232
            void main()
            {
            int8 i;
            // Thiet lap che do cho PORTB
            TRISB = 0x00; // Tat ca PORTB deu la cong xuat du lieu
            PORTB = 0xFF; // Tat het cac LED
            While(1)
            {
            printf("Sampling:");
            }
            }
            Private Sub Command1_Click()
            MSComm1.PortOpen = False
            End
            End Sub

            Private Sub Form_Load()
            With MSComm1
            .Settings = "9600,N,8,1"
            .CommPort = 1
            .RThreshold = 1
            .SThreshold = 0
            .InputMode = comInputModeText
            .InputLen = 0
            .Handshaking = comNone


            If .PortOpen = False Then
            .PortOpen = True
            End If

            End With

            End Sub

            Private Sub Timer1_Timer()
            If MSComm1.InBufferSize = 32 Then
            Text1.Text = Text1.Text + MSComm1.Input
            End If

            End Sub

            Comment


            • #7
              Em thấy anh hướng dẫn rỏ ràng, mà em muốn viết chương trình nhỏ chỉ nhận dữ liệu từ máy đọc thẻ từ TR500A Series (TR512A Magnetic Card TK2, RS-232) làm hoài không được.
              "em muốn viết chương trình ghi lại thời gian vào và ra của nhân viên khi nhân viên gạch thẻ từ(từ máy đọc thẻ từ) qua cổng COM nối tiếp, nhưng không biết viết như thế nào. Nhờ anh chỉ giúp em cách thiết lập và viết code để nhận dữ liệu khi có sự kiện gạch thẻ.
              Em là thành viên mới chưa biết cách Post bài lên.

              Comment


              • #8
                Nguyên văn bởi thiennghi Xem bài viết
                Em thấy anh hướng dẫn rỏ ràng, mà em muốn viết chương trình nhỏ chỉ nhận dữ liệu từ máy đọc thẻ từ TR500A Series (TR512A Magnetic Card TK2, RS-232) làm hoài không được.
                "em muốn viết chương trình ghi lại thời gian vào và ra của nhân viên khi nhân viên gạch thẻ từ(từ máy đọc thẻ từ) qua cổng COM nối tiếp, nhưng không biết viết như thế nào. Nhờ anh chỉ giúp em cách thiết lập và viết code để nhận dữ liệu khi có sự kiện gạch thẻ.
                Em là thành viên mới chưa biết cách Post bài lên.
                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
                Attached Files
                Last edited by linhnc308; 08-03-2008, 23:20. Lý do: attach file
                Ethernet-RS232, PIC Webserver, RFID Reader
                CallerID, Cảnh báo BTS, ...
                0988006696
                linhnc308@gmail.com
                http://linhnc308.blogspot.com

                Comment


                • #9
                  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
                  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


                  • #10
                    Bác có thể tìm cuốn Cấu trúc MT của Phan Quốc Thắng HVKTQS để tham khảo. Cổng com đc truy cập qua ngắt 14h.
                    AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
                    Xem thêm tại Online Store ---> Click here
                    Mob: 0982.083.106

                    Comment


                    • #11
                      Địa chỉ của cổng COM có tại 0040:0000 . Mỗi cổng chiếm 2 byte địa chỉ.
                      AVR đã quay trở lại: ATMEGA32: 66k, ATMEGA8A: 30k, ATMEGA48: 30k.
                      Xem thêm tại Online Store ---> Click here
                      Mob: 0982.083.106

                      Comment


                      • #12
                        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ỉ
                        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


                        • #13
                          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

                          ?????????????????????????
                          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


                          • #14
                            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
                            cám ơn linhnc, mình đã lấy file đính kèm về chạy thử rồi nhưng vẫn chưa nhận dữ liệu được tử đầu đọc thẻ từ (hình như là sự kiện MSComm1.CommEvent = comEvReceive không xảy ra, vì khi mình gạch thẻ MSComm1.CommEvent = comEvReceive không thi hành. (máy đọc thẻ từ của mình là Model: TR500A Series)

                            Comment


                            • #15
                              các bác ơi! cho em hỏi một tý...
                              em đang lập trình giao tiếp giữa pc và pic 16f877a, em muon truyen một chuổi từ máy tính bằng vb6 đến pic thi nên viết code trên VB như thế nào và viết hàm nhận trong ccs như thế nào........

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              • mèomướp
                                Trả lời cho Công thức điện tử
                                bởi mèomướp
                                Dạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
                                Hôm qua, 21:21
                              • mèomướp
                                Trả lời cho Xin hỏi về màn hình laptop
                                bởi mèomướp
                                Dạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
                                Hôm qua, 20:31
                              • yname11
                                Trả lời cho Xin hỏi về màn hình laptop
                                bởi yname11
                                Ok , thanks bác đã chỉ...
                                Hôm qua, 15:06
                              • nguyendinhvan
                                Công thức điện tử
                                bởi nguyendinhvan
                                Sau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !

                                Chập thì thay. Cháy thì tháo
                                Làm thì láo. Báo thì hay
                                May thì khoe. Rủi thì bỏ
                                Thành tích nhỏ. Báo thành to
                                Làm cho có. Báo chi li
                                Sai cả li. Báo
                                ...
                                Hôm qua, 00:35
                              • yname11
                                Trả lời cho Xin hỏi về màn hình laptop
                                bởi yname11
                                có chắc ko b, màn lcd phải có cao áp mới sáng, màn led thì ko có, ko có cáp chuyển đổi thì lắp thế nào đc ??...
                                25-11-2024, 22:31
                              • mèomướp
                                Trả lời cho Xin hỏi về màn hình laptop
                                bởi mèomướp
                                Dạ ý chú là màn oled ấy ạ. Cùng chuẩn lvds cùng độ phân giải thì cắm được ạ. Còn nó mà khác thì hơi khó vì oled các điểm ảnh nó tự phát sáng chứ ko dùng đèn nền như lcd. Cháu chỉ biết đến vậy thôi ạ. Chú muốn nghịch phải tự tìm hiểu kỹ trước khi mua thôi, khó mà ông thợ nào tư vấn vụ này...
                                25-11-2024, 22:14
                              • bactho
                                Trả lời cho Tự làm máy đo Cuộn cảm
                                bởi bactho
                                Hay đấy bạn ạ. Đây có thể hiểu là máy đo cuộn dây. Tiện đây xin cho hỏi bạn có hiểu rõ về máy nạp rôm pcb 45 của hãng thiên minh không giúp mình cách cài fw của nó với vì mình vừa được anh bạn cho nhưng lại không biết cài fw nên chưa dùng được. Nếu có thể thì bạn giúp mình với...
                                25-11-2024, 21:48
                              • yname11
                                Trả lời cho Xin hỏi về màn hình laptop
                                bởi yname11
                                màn của mình là LCD , giờ m muốn mua màn LED để thay thế (ko muốn dùng màn LCD nữa) , lên muốn hỏi xem có cáp chuyển đổi nào có thể cắm đc màn LED vào ko , tất nhiên phải có cùng số chân pin với màn cũ rồi . VD: màn cũ là lcd mỏng , 40 pin...
                                25-11-2024, 21:43
                              • bactho
                                Trả lời cho các bạn giúp mình về file HEX với!!!
                                bởi bactho
                                Bạn vào trang phuclanshop.com ,tìm đến góc kỹ thuật. Tác giả vương khánh hưng nói rất rõ về điều bạn tìm...
                                25-11-2024, 21:21
                              • mèomướp
                                Trả lời cho Xin hỏi về màn hình laptop
                                bởi mèomướp
                                Dạ màn hình lcd đều có thể lai cấy cho nhau được hết ạ. Các loại cáp, bo mạch chuyển đổi lvds rất nhìu, với dòng sony còn phải nhổ cả chip nhớ của main cũ đưa lên gỗ thì mới lắp sang máy khác đc, chưa kể các bệnh về màu... ngay cả...
                                25-11-2024, 20:43
                              Đang tải...
                              X