Mình đang làm cái mạch điều khiển bật tắt led bằng cách giao tiếp VXL với máy tính, mạch giao tiếp VXl 89C51 qua cổng RS233với máy tính mình đã làm rối, code để nạp vào con 89 mình cũng đã viết xong, giờ chỉ còn phần code cho visual basic 6.0 là mình ko biết viết thôi. MÌnh tự học visual basic,thấy tài liêu trên mạng nhiều lắm ,nhưng ko có ví dụ.Bạn nào có đoạn code thì viết cho mình nhé, nhìn vào đó mình sẽ hiểu hơn về visual basic!!
Thông báo
Collapse
No announcement yet.
giúp mình về visual basic 6.0
Collapse
X
-
Nguyên văn bởi trungBK Xem bài viếtẶc ặc ăc, sao ko ai giúp mình vậy! Mình tự học nên thật sự cảm thấy kho khăn quá
bạn thử cái này xem sao, ctrinh nay mình viết để xuất dòng chữ lên lcd
Private Sub Form_Load()
Text.FontSize = 10
MSComm1.CommPort = 1
MSComm1.Settings = "115200,n,8,1"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
MSComm1.InputMode = comInputModeText
'che do modetext se truyen du lieu dang ANSI, vi du khi truyen
'so 0 thi may se truyen gi tri hex la 30h
'che do binary se truyen chinh xac gia tri,vi du khi truyen so 9
'thi gia tri se truyen la 9 thay vi 39h trong che do text
End Sub
Private Sub OK_Click()
MSComm1.Output = "`" 'TRUYEN MA BAO HIEU BAT DAU
MSComm1.Output = Left(Text.Text, 16) 'TRUYEN 16 KI TU = 1 DONG LCD
MSComm1.Output = "|" ' TRUYEN MA BAO HIEU KET THUC CHUOI
Text.Text = ""
Text.SetFocus
End Sub
Private Sub Text_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
OK_Click
End If
End Sub
bạn cần tạo 1 textbox (trong ctrinh minh lấy tên là text), và 1 command button (mình đặt tên là OK)
lưu ý là phải có sự bắt tay giữa VDK và softvb6
trong chương trình vb6, trước khi truyền nội dung nó sẽ truyền kí tự "`" để báo cho VDK biết là nó bắt đầu truyền, và khi kết thúc thì nó truyền kí tự "|" để báo cho VDK biết là đã truyền hết nội dung. (bạn có thể tự định nghĩa cách bắt tay riêng của bạn,tùy thích)
Cố gắng đọc kĩ bài của a Ngô Hải Bắc.chúc bạn thành công
Comment
-
mình biết chương trình như vậy ko biết có đúng ko nhỉ:
Private Sub Check1_Click()
If Check1.Value = vbChecked Then
MSComm1.Output = 1
Else
MSComm1.Output = 0
End If
End Sub
Private Sub Check2_Click()
If Check2.Value = vbChecked Then
MSComm1.Output = 2
Else
MSComm1.Output = 0
End If
End Sub
Private Sub MSComm1_OnComm()
MSComm1.CommPort = 1
MSComm1.Settings = "9600,N,81,"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
MSComm1.InputMode = comInputModeBinary
End Sub
với 2 led được đặt ở chân P1.6 và P1.7
nhưng mà nó cứ báo cái lỗi này.chọn nút nào cũng thế, bạn nào sửa giúp mình nhéAttached Files
Comment
-
Nguyên văn bởi trungBK Xem bài viếtMSComm1.Settings = "9600,N,81,"
Comment
-
Nguyên văn bởi trungBK Xem bài viếtmình biết chương trình như vậy ko biết có đúng ko nhỉ:
Private Sub MSComm1_OnComm() ' bị Sai
MSComm1.CommPort = 1
MSComm1.Settings = "9600,N,81,"
MSComm1.InputLen = 0
MSComm1.PortOpen = True ' Bị Sai
MSComm1.InputMode = comInputModeBinary
End Sub
CODE Viết lại:
Private Sub Form1_Load()
MSComm1.CommPort = 1 ' chọn COM1
MSComm1.PortOpen = False ' trước tiên là đóng cổng COM 1 đã ( lệnh này ko có cũng được )
MSComm1.Settings = "9600,N,8,1,"
MSComm1.InputLen = 0 ' Đọc toàn bộ đệm
MSComm1.InputMode = 1 ' Kiểu truyền là nhị phân
MSComm1.PortOpen = True ' Chỉ mở cổng COM sau khi Thiết lập hết
End Sub
Chúc bạn thành công!My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
Mình có đoạn code này góp vui cùng các bạn :
'Khoi tao giao tiep RS232
Public Sub Init_Com()
frmMain.MSComm.CommPort = 1
frmMain.MSComm.Settings = "9600,N,8,1"
frmMain.MSComm.InputLen = 0
End Sub
Public Sub Set_TTI(Set_Str As String)
frmMain.MSComm.PortOpen = True
frmMain.MSComm.Output = Set_Str & Chr$(13)
frmMain.MSComm.PortOpen = False
End Sub
' Doc du lieu tu TTI
Public Function Read_TTI() As String
Dim s As String
frmMain.MSComm.PortOpen = True
frmMain.MSComm.Output = "Read?" & Chr$(13)
Delay (1)
s = frmMain.MSComm.Input
s = Mid(s, 5, 4)
frmMain.MSComm.PortOpen = False
Read_TTI = s
End Function
hatran318@yahoo.com.vn
Comment
-
Các bác cho em hỏi một tí. là khi mình muốn truyền 1 byte dạng số hex (ví dụ: 01h xuống cổng cóm trong Vb thì ta phải định dạng dữ liệu như thế nào để 89c51 có nhận được byte đó dưới dạng số hẽ như ý của mình.
Em có làm thử nhưng không được như ý muốn. code em viết cho lệnh xuất giá trị ra com như vấy có đúng không:
Mscomm1.output= "1"
89c51 nhận được số này là: 71h (khồng như ý muốn là 01h)
mong các bác chỉ giúm em.
Comment
-
Nguyên văn bởi mrhahung_87 Xem bài viếtCác bác cho em hỏi một tí. là khi mình muốn truyền 1 byte dạng số hex (ví dụ: 01h xuống cổng cóm trong Vb thì ta phải định dạng dữ liệu như thế nào để 89c51 có nhận được byte đó dưới dạng số hẽ như ý của mình.
Em có làm thử nhưng không được như ý muốn. code em viết cho lệnh xuất giá trị ra com như vấy có đúng không:
Mscomm1.output= "1"
89c51 nhận được số này là: 71h (khồng như ý muốn là 01h)
mong các bác chỉ giúm em.
email:mahaco@fpt.vn
Comment
-
cam on bac,em lam theo va chay duoc roi nhung co mot dieu la goi nhung so >15 thi nhan luc duoc dung luc khong. vay thi em phai khac phuc the nao? con de may tinh nhan duoc mot byte do vxl goi den thi phai khai bao nhu the nao? em thu lam nhu bai cua Ngohaibac nhung may tinh khong nhan duoc. vay ai da lam ve cai nay roi thi xin giup do gium!
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677nhân tiện cho mình hỏi thêm về cái phần test hipot (cao áp),là để kiểm tra độ bền cách điện giưa các cuộn dây,mà thấy thông số test thường ở mức 4kvac,vậy nếu mấy con fail đó xài bình thường vẫn dduocj phải không ạ,vì điện mình làm gì lên tới mức đó
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:52 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677máy đo số vòng thì cty có ,mà nó to quá,tưởng có máy nào gọn gọn bỏ túi được thì tiện hơn,vì đi lại nhiều...
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:47 -
-
bởi tmcodonMình thấy diễn đàn có chuyên mục quảng cáo rồi mà. Bạn đóng góp để mở luồng riêng
-
Channel: Hướng dẫn sử dụng diễn đàn
09-11-2024, 13:36 -
-
bởi Nicole08Xin chào mọi người, tôi đã sử dụng Flashforge Inventor 2 được gần 5 năm và rất hài lòng với nó, nhưng tuần trước đã xảy ra sự cố. Có vẻ như động cơ bước đưa sợi in vào đầu nóng đã bị hỏng. Mọi thứ khác có vẻ ổn trên máy...
-
Channel: Điện tử dành cho người mới bắt đầu
09-11-2024, 12:55 -
Comment