PIC Vietnam

Go Back   PIC Vietnam > Truyền thông > Giao tiếp cổng COM và LPT

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Giao tiếp cổng COM và LPT RS232, RS485 và LPT là những giao tiếp cơ bản và kinh điển khi mới học về vi điều khiển...

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 12-11-2011, 12:21 PM   #33
langtudat87
Nhập môn đệ tử
 
Tham gia ngày: Oct 2011
Bài gửi: 1
:
Trích:
Nguyên văn bởi ngohaibac View Post
Chào các bạn.

Mình mở luồng này để hướng dẫn các bạn lập trình giao tiếp RS232 bằng phần mềm Visual Basic 6.0 của Microsoft.

Do site tailieuvietnam.net đang có vấn đề về nhỏ nên mình không upload file lên đó được. Tuy nhiên mình vẫn upload chương trình viết bằng VB để các bạn tham khảo.

Giao diện của chương trình như sau:



Hình 1: Giao diện chương trình đơn giản thứ 1 dùng VB.

Chương trình này là một ví dụ nhỏ bạn truyền một loạt byte rùi nhận về (mình nối 2 chân 2 và 3 để test chương trình). Các bạn có thể ứng dụng nó trong mạng truyền thông dùng các giao thức truyền khác nhau. Trong ví dụ của mình truyền đi 11 byte gồm 1 byte start, 8 byte dữ liệu, 1 byte CRC, 1 byte stop.

Chúc các bạn thành công.
cai nay truyen duoc 2byte nhung minh muon truyen 8byte thi nhu the nao mong cac ban giup do
Option Explicit
Dim Send_Data As String
Dim ket_noi As Integer
Dim Hbyte As Integer
Dim Lbyte As Integer
Dim arr() As Byte


Private Sub cmdclear_Click()
Text1.Text = ""
Text2.Text = ""
End Sub

Private Sub cmdClose_Click()
Unload Me
End Sub

Private Sub Form_Load()
'If MSComm1.PortOpen Then MSComm1.PortOpen = False
'With MSComm1
'.CommPort = 1
'.Settings = "9600,n,8,1"
'.RThreshold = 3 'so byte truyen
'.PortOpen = True
'End With
If MSComm1.PortOpen Then MSComm1.PortOpen = False
MSComm1.CommPort = 1
MSComm1.Settings = "9600,n,8,1"
MSComm1.RThreshold = 3
MSComm1.InputMode = comInputModeBinary
MSComm1.InBufferCount = 0
MSComm1.PortOpen = True
Text1.Text = ""
Text2.Text = ""
End Sub

Private Sub cmdSend_Click()
Send_Data = Trim(Text1.Text)
Hbyte = Send_Data \ 256
Lbyte = Send_Data Mod 256
MSComm1.Output = Chr(Hbyte) & Chr(Lbyte) & Chr$(13)
'MSComm1.Output = Send_Data & Chr$(13)
End Sub

Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = comEvReceive Then
Dim rcv
If MSComm1.CommEvent = comEvReceive Then
arr() = MSComm1.Input
'If (arr(2) = 255) Then
Text2.Text = arr(0) * 256 + arr(1)
'End If
End If
End If
End Sub
langtudat87 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 

Tags
forms!nhap!vao = x


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
Giao tiếp RS232 trên PC ngohaibac Giao tiếp cổng COM và LPT 193 18-02-2025 09:11 AM
Cho hỏi về giao tiếp RS232 của PIC16F877A enti Giao tiếp cổng COM và LPT 31 25-03-2016 10:14 PM
Giao tiếp RS232 trên PC qua Matlab ngohaibac Giao tiếp cổng COM và LPT 47 18-11-2015 03:51 PM
cần mua bộ thu GPS có giao tiếp RS232 kienvq Tìm mua sản phẩm 15 17-03-2011 11:25 PM
Help! Dùng C để giao tiếp RS232 dandiennang Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) 6 15-03-2009 06:41 PM


Múi giờ GMT. Hiện tại là 08:44 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam