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
-
sua cai dong nay lai xem sao "9600,N,8,1"Nguyên văn bởi trungBK Xem bài viếtMSComm1.Settings = "9600,N,81,"
Comment
-
Chương trình báo lỗi là do vầy nè bạn: Khai báo cổng thuộc thính cổng COM , bạn phải đặt trong : Private Sub Form1_Load() ( chứ ko phải trong Private Sub MSComm1_OnComm() - vì Oncomm là Sự kiện NGẮT khi nhận giá trị Từ VĐK gởi lên PC ); Chỉ mở cổng COM1 : MSComm1.PortOpen = True , khi đã thiết lập hết thuộc tính cho cổng COM1Nguyê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
-
Bạn đã sai rồi. Đơn giản như sau : Mscomm1.output= chr(01h), các số bạn muốn truyền bạn cho vào chr(x). Chú ý: nó chỉ là số 1 byte.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 Đấu tắt điện cho máy tính bảngbởi bqvietBqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
-
Channel: Thiết bị điện tử cá nhân
06-12-2025, 17:17 -
-
Trả lời cho Xin hỏi về mạch thu FM/AM trong catsettebởi nguyendinhvanTheo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
-
Channel: Điện thanh
05-12-2025, 19:59 -
-
Trả lời cho Đấu tắt điện cho máy tính bảngbởi afrendlyCó vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
-
Channel: Thiết bị điện tử cá nhân
04-12-2025, 01:27 -
-
Trả lời cho Máy điện châm ?bởi nick22Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
-
Channel: Điện tử y sinh
01-12-2025, 13:23 -


Comment