Nguyên văn bởi leemanhj916
Xem bài viết
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
-
em đang làm thực tập công nhân mạch UPS ông thầy yêu cầu viết code lưu trữ dữ liệu trên máy tính. Có nghĩa là hằng ngày acquy nạp dòng áp bao nhiêu thời gian bao lâu thì em phải lưu lại trên máy tính nhưng mà em chẳng biết hướng làm là viết code kiểu chi. Dòng áp nạp có vdk 8051 lưu trữ nhưng do ROM nó nhẹ nên ông thầy bắt em lưu trên máy tính nữa. mấy anh chị giúp em với!!!
Comment
-
Mình cũng đang bí chỗ này,mong các bạn giúp đỡ.
Vi điều khiển của mình gởi lên, chương trình Terminal nhận được tốt, nhưng chương trình VB của mình không nhận được, nó báo lỗi 8020 ngay chỗ Buff = MScomm1.input (Error reading com device). Mình nghĩ đủ cách rồi vẫn chưa ra. Mong các bạn giúp đỡ cho !
Xin cám ơn nhiều !
Comment
-
Nguyên văn bởi tienrkwlotus Xem bài viếtMình cũng đang bí chỗ này,mong các bạn giúp đỡ.
Vi điều khiển của mình gởi lên, chương trình Terminal nhận được tốt, nhưng chương trình VB của mình không nhận được, nó báo lỗi 8020 ngay chỗ Buff = MScomm1.input (Error reading com device). Mình nghĩ đủ cách rồi vẫn chưa ra. Mong các bạn giúp đỡ cho !
Xin cám ơn nhiều !
Comment
-
các anh chị cho em hỏi một chút là cần sử dụng những hàm nào để lấy dữ liệu từ cổng COM để hiển thị trên giao diện VB với ạ?
tại vì em cứ nghĩ là dữ liệu được đưa lên cổng COM thì sẽ hiển thị trực tiếp, nhưng khi em thiết lập hàm khởi tạo như thế này rồi mà khi kết nói chương trìng vẫn báo lỗi "Invalid property value" ạ:
void CCommunicationDlg::Settings()// ham thiet lap tham so cho MSComm
{
//neu cong dang mo thi dong cong de thiet lap tham so
if (m_mscomm1.get_PortOpen())
m_mscomm1.put_PortOpen(false);
// thiet lap ten cong
m_mscomm1.put_CommPort(m_cboComPort.GetCurSel()+1) ;
// thiet lap handshaking
//m_mscomm1.put_Handshaking(m_cboHandshaking.GetCurS el());
// thiet lap tan so, bit du lieu, bit stop
CString str_bitrate = getCurStrInCombobox(m_cboBitRate);
CString str_parity = getCurStrInCombobox(m_cboParityBit);
CString str_stopbit = getCurStrInCombobox(m_cboStopBit);
CString str_databit = getCurStrInCombobox(m_cboDataBit);
CString str_setting;
str_setting.Format(L"%s, %c,%s,&s", str_bitrate, str_parity[1], str_databit, str_stopbit);
m_mscomm1.put_Settings(str_setting);
m_mscomm1.put_RThreshold(1);
m_mscomm1.put_InputLen(1); //moi lan doc mot ki tu
m_mscomm1.put_InBufferSize(1024);
m_mscomm1.put_InputMode(0); // 0- text mode, 1- binary mode
m_mscomm1.put_OutBufferSize(1024);
m_mscomm1.put_PortOpen(true);
}
Comment
-
Anh Lethang85 ơi.anh có thể mail cho em với đc k?............link đó hỏng mất rồi....Mail: Baha09d2@gmail.com....thanks anh nhiều
Comment
-
mấy anh em cho mình hỏi chút. mình đang làm đồ án nhưng tới phần giao tiếp máy tính với vđk thì nó k chạy,dưới đây là code vđk và vb của mình,mấy anh em xem giúp đỡ với:
code vđk:
org 00H
jmp main
org 30h
main:
mov SCON, #52h ;Port noi tiep mode 1
mov TMOD, #20h ;Timer 1 mode 2
mov TH1,#0Fdh ;9600 baud
setb TR1
loop:
jnb RI, $ ;doi nhan du lieu
clr RI
mov A, SBUF ;lay du lieu
kt_sang_trai:
cjne A, #'a', kt_sang_phai ;neu la yeu cau sang trai
MOV P0,#11001100B
CALL DELAY_50MS
MOV P0,#0
CALL DELAY_50MS
jmp main
kt_sang_phai:
cjne A, #'d', kt_tien ;Neu la yeu cau sang phai
MOV P0,#10111011B
CALL DELAY_50MS
MOV P0,#0
CALL DELAY_50MS
jmp main
kt_tien:
cjne A, #'w', kt_lui ;Neu la yeu cau tien
MOV P0,#11101110B ;CHI QUAN TAM DEN 4 BIT THAP 1000 UNG VOI ROBOT CHAY THANG
CALL DELAY_50MS
MOV P0,#0
CALL DELAY_50MS
jmp main
kt_lui:
cjne A,#'s', kt_dung ;Neu la yeu cau lui
MOV P0,#11011101B ;LUI ROBOT
CALL DELAY_50MS
MOV P0,#0
CALL DELAY_50MS
jmp main
kt_dung: ;Neu la yeu cau dung
cjne A,#'j', kt_cam_trai
MOV P0,#10101010B;DUNG ROBOT VA QUAY CAMERA
CALL DELAY_50MS
MOV P0,#0
CALL DELAY_50MS
jmp main
kt_cam_trai:
cjne A, #'k',kt_cam_phai
MOV P0,#10011001B;DUNG ROBOT VA QUAY CAMERA
CALL DELAY_50MS
MOV P0,#0
CALL DELAY_50MS ;Neu la yeu cau quay camera sang phai
jmp main
kt_cam_phai:
cjne A, #'l',kt_bao_dong
MOV P0,#10001000B;DUNG ROBOT VA QUAY CAMERA
CALL DELAY_50MS
MOV P0,#0
CALL DELAY_50MS ;Neu la yeu cau quay camera sang phai
jmp main
kt_bao_dong:
cjne A, #'h',kt_dung
MOV P0,#01110111B;bao dong
CALL DELAY_50MS
MOV P0,#0 ;Neu la yeu cau quay camera sang phai
CALL DELAY_50MS
jmp main
DELAY_50MS:
MOV TMOD,#01H
MOV R0,#50
LOOP20:
MOV TH0,#0ECH
MOV TL0,#78H
SETB TR0
JNB TF0,$
CLR TF0
CLR TR0
DJNZ R0,LOOP20
RET
end
,,,,,,,,,,,,,,,,,,,,,,
,,,,,,,,,,,,,,,,,,,,
chương trình vb:
Public Class Form1
Private Sub Nut_thoat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_thoat.Click
Form2.ShowDialog()
End Sub
Private Sub HướngDẫnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HướngDẫnToolStripMenuItem.Click
End Sub
Private Sub ThôngTinToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ThôngTinToolStripMenuItem.Click
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If SerialPort1.IsOpen Then SerialPort1.Close()
SerialPort1.Open()
End Sub
Private Sub Button_phai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_phai.Click
SerialPort1.Write("d")
Label2.Text = ("Robot đang rẽ phải")
End Sub
Private Sub Button_toi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_toi.Click
SerialPort1.Write("w")
Label2.Text = ("Robot đang đi tới")
End Sub
Private Sub Button_trai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_trai.Click
SerialPort1.Write("a")
Label2.Text = ("Robot đang rẽ trái")
End Sub
Private Sub Button_dung_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_dung.Click
SerialPort1.Write("j")
Label2.Text = ("Robot đã dừng")
End Sub
Private Sub Button_lui_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_lui.Click
SerialPort1.Write("s")
Label2.Text = ("Robot đang đi lui")
End Sub
Private Sub Form1_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
If (SerialPort1.IsOpen) Then SerialPort1.Close()
End Sub
Private Sub TớiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TớiToolStripMenuItem.Click
SerialPort1.Write("w")
Label2.Text = ("Robot đang đi tới")
End Sub
Private Sub LuiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LuiToolStripMenuItem.Click
SerialPort1.Write("s")
Label2.Text = ("Robot đang đi lui")
End Sub
Private Sub PhảiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PhảiToolStripMenuItem.Click
SerialPort1.Write("d")
Label2.Text = ("Robot đang rẽ phải")
End Sub
Private Sub TráiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TráiToolStripMenuItem.Click
SerialPort1.Write("a")
Label2.Text = ("Robot đang rẽ trái")
End Sub
Private Sub DừngToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DừngToolStripMenuItem.Click
SerialPort1.Write("j")
Label2.Text = ("Robot đã dừng")
End Sub
Private Sub ThôngTinToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ThôngTinToolStripMenuItem1.Click
MsgBox(" Chương trình điều khiển từ xa phiên bản 1.0 này là Đồ án môn học Hệ thống Cơ điện tử, do sinh viên Nguyễn Quốc Vũ - lớp 06CDT2 - ngành Cơ Điện Tử - Trường Đại Học Bách Khoa Đà Nẵng viết. ")
End Sub
Private Sub CáchĐiềuKhiểnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CáchĐiềuKhiểnToolStripMenuItem.Click
MsgBox(" Bạn có thể điều khiển Robot bằng bàn phím trên máy tính: Ctrl + W: đi tới ; Ctrl + S: đi lui; Ctrl + A: sang trái ; Ctrl + D: sang phải ; Cltr + J: dừng ; Cltr + K: Camera quay trái ; Cltr + L: Camera quay phải")
End Sub
Private Sub PhôngNềnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PhôngNềnToolStripMenuItem.Click
ColorDialog1.ShowDialog()
Me.BackColor = ColorDialog1.Color
End Sub
Private Sub MàuNútNhấnToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MàuNútNhấnToolStripMenuItem.Click
ColorDialog1.ShowDialog()
Button_cam_phai.BackColor = ColorDialog1.Color
Button_cam_trai.BackColor = ColorDialog1.Color
Button_trai.BackColor = ColorDialog1.Color
Button_phai.BackColor = ColorDialog1.Color
Button_toi.BackColor = ColorDialog1.Color
Button_lui.BackColor = ColorDialog1.Color
Button_dung.BackColor = ColorDialog1.Color
Button_thoat.BackColor = ColorDialog1.Color
End Sub
Private Sub Button_cam_trai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_cam_trai.Click
SerialPort1.Write("k")
Label2.Text = ("Camera đang quay trái")
End Sub
Private Sub Button_cam_phai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button_cam_phai.Click
SerialPort1.Write("l")
Label2.Text = ("Camera đang quay phải")
End Sub
Private Sub CameraTráiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CameraTráiToolStripMenuItem.Click
SerialPort1.Write("k")
Label2.Text = ("Camera đang quay trái")
End Sub
Private Sub CameraPhảiToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CameraPhảiToolStripMenuItem.Click
SerialPort1.Write("l")
Label2.Text = ("Camera đang quay phải")
End Sub
End Class
Public Class Form2
Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
End Sub
Private Sub Nut_khong_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Nut_khong.Click
Me.Close()
End Sub
Private Sub Nut_co_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Nut_co.Click
End
End Sub
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Beep()
End Sub
End Class
mong mấy bác giúp đỡ dùm,mình còn mấy ngày nữa là bảo vệ r
Comment
Bài viết mới nhất
Collapse
-
bởi nhathung1101Với servo Yaskawa thì dùng phần mềm Wide field 3. Dùng được hay không thì động não đi....
-
Channel: Điện tử công nghiệp
Hôm qua, 00:35 -
-
bởi bqvietServo cuối cùng vẫn chỉ là điều chỉnh tốc độ và đọc phản hồi vị trí
Qua cổng song song LPT cổ
https://www.electronicsforu.com/elec...eed-controller
Qua cổng USB - xem thêm đám FT232RL-
Channel: Điện tử công nghiệp
22-11-2024, 15:56 -
-
bởi thiennam0703Em đang tìm hiểu cách xây dựng chương trình điều khiển động cơ Servo Yaskawa bằng máy tính tuy nhiên khi tìm kiếm trên mạng các hướng dẫn thì thường là điều khiển bằng vi điều khiển hoặc điều khiển bằng PLC hay điều khiển động cơ...
-
Channel: Điện tử công nghiệp
22-11-2024, 15:32 -
-
Trả lời cho Tổng hợp các thông tin về mạch nạp cho AVRbởi bacthoMình cũng bị như vậy mà chưa biết ở đâu
-
Channel: Vi điều khiển AVR
21-11-2024, 21:00 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi nhathung1101Câu trả lời là không dùng được.
Hai lớp dán mặt trước và mặt sau, gọi là film phân cực. Muốn hiểu rõ về nó thì chịu khó search nhé. Ở đây có rất nhiều chó cứ ngửi thấy phân là sủa nhặng, nên không giải thích nhiều....-
Channel: Thiết bị điện tử cá nhân
21-11-2024, 16:20 -
-
Comment on Tổng hợp các thông tin về mạch nạp cho AVRbởi Memem
-
Channel: Vi điều khiển AVR
21-11-2024, 15:10 -
-
Trả lời cho Tổng hợp các thông tin về mạch nạp cho AVRbởi MememMọi người ơi cho em hỏi cái này ạ, hiện tại em đang làm btl về hiển thị giá trị nhiệt độ trên led 7 thanh sử dụng atmega16, code em chạy trên mô phỏng rất oke nhưng khi lắp qua mạch thực thì bị lỗi ở led đầu tiên bị lỗi như thế này...
-
Channel: Vi điều khiển AVR
21-11-2024, 15:10 -
-
bởi mantruongepuNhờ cả nhà tìm giúp mình thông tin IC này với, thấy ghi 943B W58BAL mà mình tìm mấy ngày nay không được, nó được đóng gói dạng TSSOP 8. Cám ơn cả nhà....
-
Channel: Điện tử dành cho người mới bắt đầu
20-11-2024, 14:40 -
-
bởi TherulCảm ơn bạn đã chia sẻ câu chuyện và quá trình phát triển sản phẩm của mình. Trước tiên, thật may mắn khi bạn vượt qua tai nạn và vẫn giữ được niềm đam mê cũng như khả năng sáng tạo trong lĩnh vực kỹ thuật. Việc bạn tiếp tục...
-
Channel: từ PIC tới dsPIC
20-11-2024, 07:20 -
-
Trả lời cho Em muốn hỏi mọi người về nguyên lý hoạt động, tần số của mạch công suất trong máy rửa siêu âm ạ.bởi nguyendinhvanBạn nên nghiên cứu cái chấn lưu đèn ống Compact fluorescent lamp hay đèn compact trước đã. Nó rẻ đỡ tốn kém.
Sau khi hiểu rõ rồi thì chuyển sang cái mạch này.
Ở cái chấn lưu, tần số của nó linh tinh lắm, tùy điện áp nguồn, tùy...-
Channel: Hỗ trợ học tập
19-11-2024, 22:44 -
Comment