Bạn coi bên ở trang 2 của Thread này nhé ,có Cách Làm ở bên đó ,Mỗi lần có Sự Kiện ONCOME là lw vào mảng và Gọi hàm Vẽ đồ thị là OK thui .Khi nào rảnh ,mình sẽ POST code cho hen
Thông báo
Collapse
No announcement yet.
làm thế nào để vẽ Đồ thị (X,Y), dữ liệu nhận từ cổng COM, ngôn ngữ Visual Baic 6.0
Collapse
This is a sticky topic.
X
X
-
My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
-
Mình quên nữa chứ ,ở bên trang số 3 của Thread này ,có các SAMPLE CODE rất hay và đầy đủ ( có thêm 1 Fie PDF chỉ các bước đơn giản tạo Giao diện cho Teechart nữa ). Link ở trang Mediafire.com nên rất dễ Down.My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
Bạn thechinhcdt à, trước hết bạn phải TÌM hiểu , viết được GIAO DIỆN Visual Basic kết nối với Vi Điều KHiển đã , Truyền và Nhận dữ liệu OK hết rùi ,thì mới vẽ được Đồ Thị. Khi nào bạn làm OK rùi thi mình sẽ POST CODE cho bạn Tham Khảo phần Teechart.My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
Anh em nào yêu thích MCU của MOTOROLA ( 68HC05 , 68HC08, 68HC11, 68HC12 ...) thì vào THREAD này (do mình lập ra) để tìm TOOLs, CODE mẫu ,tài liệu ( đầy đủ từ A--> Z luôn) nghen.
http://dientuvietnam.net/forums/show...7572#post97572
( mong bác Admin thông cảm - do em POST không đúng chỗ lắm ,hi hi)My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
Measurement Studio 8.0.1 For Visual Basic 2005
Nguyên văn bởi hoanglongu Xem bài viếtBạn ATYLA ơi, cái Istripchart ActiveX Control này cũng vẽ đồ thị OK phải không? Bạn có thể hướng dẫn mọi người về Istripchart ActiveX để vẽ ĐỒ THỊ được không? Mình cũng đang nghiên cứu Teechart mà cũng chưa được thành thạo lắm. Mong sự giúp đợ của bạn, để chung ta biết được sử dụng 1 công cụ vẽ ĐỒ THỊ với VB
Measurement Studio 8.1 of NI National Instruments Using for Visual Basic 6.0 and Visual Studio2003/ 2005.
+ Code VB6.0:
Private Sub Form_Load()
First_Time = False
CWGraph.ChartLength = 30000
CWGraph.Axes(2).SetMinMax -10, 100
End Sub
Private Sub TIMERCHART_Timer()
Dim i As Integer
Dim Y As Integer
LPV.Caption = TankPV((CNT + 1) / 2)
LSV.Caption = TankSV((CNT + 1) / 2)
LblTimeRun = Format(Now, "dd-mm-yyyy hh:nn:ss")
Select Case First_Time
Case False
First_Time = True
CWGraph.Axes(1).Minimum = Now 'set x-axis
CWGraph.Axes(1).Maximum = Now + 0.0072 '0.0024
Case True
End Select
If Now >= CWGraph.Axes(1).Maximum Then
CWGraph.Axes(1).Maximum = CWGraph.Axes(1).Maximum + 0.00035
CWGraph.Axes(1).Minimum = CWGraph.Axes(1).Minimum + 0.00035
End If
For i = 1 To 10 Step 2
CWGraph.Plots(i).ChartXvsY Now, TankPV((i + 1) / 2)
CWGraph.Plots(i + 1).ChartXvsY Now, TankSV((i + 1) / 2)
Next i
'CHO PHEP HIEN THI PLOTS.
CWGraph.Plots(CNT).Visible = True
CWGraph.Plots(CNT + 1).Visible = True
End Sub
+ Code Vb2005:
Private Sub CWGTime_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CWGTime.Tick
Dim MaxY As Double = 100, MinY As Double = 0
Dim YValues As Double(,) = {{Val(TxtSV.Text)}, {Val(TxtPV.Text)}}
Dim XValuesAsDateTime As DateTime() = {DateTime.Now}
Dim XValues As Double() = CType(DataConverter.Convert(XValuesAsDateTime, GetType(Double())), Double())
If FlagCWU = True Then
ScatterGraph1.Plots(0).XAxis.Mode = AxisMode.StripChart
ScatterGraph1.XAxes.Item(0).Range = New Range(Now(), TimeSpan.FromSeconds(100)) ' MinX=Now(), MaxX= TimeSpan.FromSeconds(100).
FlagCWU = False
End If
ScatterGraph1.PlotXYAppendMultiple(XValues, YValues)
ScatterGraph1.YAxes.Item(0).Range = New Range(MinY, MaxY)
ToolStripStatus.Text = "Status: Running..."
ToolStripTime.Text = " Time: " & Format(Now(), "hh : mm: ss tt")
End Sub
Last edited by mstudio8x; 08-04-2008, 17:30.katllu
Comment
-
Nguyên văn bởi mstudio8x Xem bài viết
Measurement Studio 8.1 of NI National Instruments Using for Visual Basic 6.0 and Visual Studio2003/ 2005.
+ Code VB6.0:
Private Sub Form_Load()
First_Time = False
CWGraph.ChartLength = 30000
CWGraph.Axes(2).SetMinMax -10, 100
End Sub
Private Sub TIMERCHART_Timer()
Dim i As Integer
Dim Y As Integer
LPV.Caption = TankPV((CNT + 1) / 2)
LSV.Caption = TankSV((CNT + 1) / 2)
LblTimeRun = Format(Now, "dd-mm-yyyy hh:nn:ss")
Select Case First_Time
Case False
First_Time = True
CWGraph.Axes(1).Minimum = Now 'set x-axis
CWGraph.Axes(1).Maximum = Now + 0.0072 '0.0024
Case True
End Select
If Now >= CWGraph.Axes(1).Maximum Then
CWGraph.Axes(1).Maximum = CWGraph.Axes(1).Maximum + 0.00035
CWGraph.Axes(1).Minimum = CWGraph.Axes(1).Minimum + 0.00035
End If
For i = 1 To 10 Step 2
CWGraph.Plots(i).ChartXvsY Now, TankPV((i + 1) / 2)
CWGraph.Plots(i + 1).ChartXvsY Now, TankSV((i + 1) / 2)
Next i
'CHO PHEP HIEN THI PLOTS.
CWGraph.Plots(CNT).Visible = True
CWGraph.Plots(CNT + 1).Visible = True
End Sub
+ Code Vb2005:
Private Sub CWGTime_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CWGTime.Tick
Dim MaxY As Double = 100, MinY As Double = 0
Dim YValues As Double(,) = {{Val(TxtSV.Text)}, {Val(TxtPV.Text)}}
Dim XValuesAsDateTime As DateTime() = {DateTime.Now}
Dim XValues As Double() = CType(DataConverter.Convert(XValuesAsDateTime, GetType(Double())), Double())
If FlagCWU = True Then
ScatterGraph1.Plots(0).XAxis.Mode = AxisMode.StripChart
ScatterGraph1.XAxes.Item(0).Range = New Range(Now(), TimeSpan.FromSeconds(100)) ' MinX=Now(), MaxX= TimeSpan.FromSeconds(100).
FlagCWU = False
End If
ScatterGraph1.PlotXYAppendMultiple(XValues, YValues)
ScatterGraph1.YAxes.Item(0).Range = New Range(MinY, MaxY)
ToolStripStatus.Text = "Status: Running..."
ToolStripTime.Text = " Time: " & Format(Now(), "hh : mm: ss tt")
End Sub
My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
Nguyên văn bởi duongthanh85 Xem bài viếtĐồ thị à? GNUplot chiến cho pro ^^My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
Nguyên văn bởi mstudio8x Xem bài viết
Measurement Studio 8.1 of NI National Instruments Using for Visual Basic 6.0 and Visual Studio2003/ 2005.
+ Code VB6.0:
Private Sub Form_Load()
First_Time = False
CWGraph.ChartLength = 30000
CWGraph.Axes(2).SetMinMax -10, 100
End Sub
Private Sub TIMERCHART_Timer()
Dim i As Integer
Dim Y As Integer
LPV.Caption = TankPV((CNT + 1) / 2)
LSV.Caption = TankSV((CNT + 1) / 2)
LblTimeRun = Format(Now, "dd-mm-yyyy hh:nn:ss")
Select Case First_Time
Case False
First_Time = True
CWGraph.Axes(1).Minimum = Now 'set x-axis
CWGraph.Axes(1).Maximum = Now + 0.0072 '0.0024
Case True
End Select
If Now >= CWGraph.Axes(1).Maximum Then
CWGraph.Axes(1).Maximum = CWGraph.Axes(1).Maximum + 0.00035
CWGraph.Axes(1).Minimum = CWGraph.Axes(1).Minimum + 0.00035
End If
For i = 1 To 10 Step 2
CWGraph.Plots(i).ChartXvsY Now, TankPV((i + 1) / 2)
CWGraph.Plots(i + 1).ChartXvsY Now, TankSV((i + 1) / 2)
Next i
'CHO PHEP HIEN THI PLOTS.
CWGraph.Plots(CNT).Visible = True
CWGraph.Plots(CNT + 1).Visible = True
End Sub
+ Code Vb2005:
Private Sub CWGTime_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CWGTime.Tick
Dim MaxY As Double = 100, MinY As Double = 0
Dim YValues As Double(,) = {{Val(TxtSV.Text)}, {Val(TxtPV.Text)}}
Dim XValuesAsDateTime As DateTime() = {DateTime.Now}
Dim XValues As Double() = CType(DataConverter.Convert(XValuesAsDateTime, GetType(Double())), Double())
If FlagCWU = True Then
ScatterGraph1.Plots(0).XAxis.Mode = AxisMode.StripChart
ScatterGraph1.XAxes.Item(0).Range = New Range(Now(), TimeSpan.FromSeconds(100)) ' MinX=Now(), MaxX= TimeSpan.FromSeconds(100).
FlagCWU = False
End If
ScatterGraph1.PlotXYAppendMultiple(XValues, YValues)
ScatterGraph1.YAxes.Item(0).Range = New Range(MinY, MaxY)
ToolStripStatus.Text = "Status: Running..."
ToolStripTime.Text = " Time: " & Format(Now(), "hh : mm: ss tt")
End Sub
Comment
-
-
Nguyên văn bởi nodiesun Xem bài viếtAnh ơi cái này cũng viết bằng VB à?
Bạn có thể xem cách sử dụng ,File hướng dẫn , mình gởi kèm ở trang 2, trang 3 của Thread này
Chúc vui!My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
Nguyên văn bởi nodiesun Xem bài viếtAnh Lưu ơi giúp em với! Em download PC access về mà chẳng cài được gì cả. PC access v1.0 (Sp1,2,3) đều báo là phiên bản này không cài được trên máy.
ĐC: 36H22 Tân Mai - Hoàng Mai - Hà Nộikatllu
Comment
-
[QUOTE=mstudio8x;101012]Bạn ở Hưng Yên gần Hà nội nên đó Mình Copy cho 1 bản mà dùng dung lượng có mấy chục MB gửi qua E-mail nâu lắm.
ĐC: 36H22 Tân Mai - Hoàng Mai - Hà Nội[/QUOTE
Anh Lưu ơi em đọc trong phần help của Microwin viết chương trình truyền thông như sau:
NETWORK 1 // Main Program
LD SM0.1 //On the first scan,
MOVB 16#09 SMB30 //Initialize Freeport:
// - Select 9600 baud
// - Select 8 data bits
// - Select no parity
MOVB 16#B0 SMB87 //Initialize RCV message control byte:
// - RCV enabled
// - Detect end of message character
// - Detect idle line condition as
// as message start condition
MOVB 16#0A SMB89 //Set end of message character to hex OA (line feed)
MOVW +5 SMW90 //Set idle line timeout to 5 ms.
MOVB 100 SMB94 //Set maximum number of characters to 100.
ATCH INT_0 23 //Attach interrupt 0 to the receive complete event.
ATCH INT_2 9 //Attach interrupt 2 to the transmit complete event.
ENI //Enable user interrupts
RCV VB100 0 //Enable receive box with buffer at VB100 for port 0
NETWORK 1 // Interrupt 0
//Receive complete interrupt routine
LDB= SMB86 16#20 //If receive status shows receive of end character,
MOVB 10 SMB34 //then attach a 10 ms timer
ATCH INT_1 10 //to trigger a transmit
CRETI //and return.
NOT
RCV VB100 0 //If the receive completed for any other
//reason, then start a new receive.
NETWORK 1 // Interrupt 1
//10 ms timer interrupt
LD SM0.0
DTCH 10 //Detach timer interrupt
XMT VB100 0 //Transmit message back to user on port 0
Em không thấy viết INT_2 và INT_1 có cần thêm lệnh gì nữa không?Dữ liệu nhận được sẽ lưu vào đâu hả anh? Em tưởng dữ liệu nhận được phải lưu vào SMB2 chứ? Giúp em với nhé. Thanks anh! À mà khi nào anh có thời gian để em gặp anh chút!
Comment
Về tác giả
Collapse
- Received the Bachelor (honors) and Master (by research) of Engineering in Automatic Control at Faculty of Electrical-Electronics Engineering, Ho Chi Minh City University of Technology (HCMUT), Vietnam, in 2009 and 2011, respectively.
- Majors: Automatic Control, Solar/Wind Energy systems, Electrical Machines, Two-wheeled Self-Balancing Robot, Microcontrollers.
Tìm hiểu thêm về hoanglongu
Bài viết mới nhất
Collapse
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi mèomướpDạ hông dám làm thì chắc chắn sẽ mãi ko thể làm được đâu ạ. Nguồn xung dân dụng vài kw giờ rất nhìu ạ, sạc ô tô điện, máy hàn, lò vi sóng, âm ly... tùy chất lượng mà độ phức tạp sẽ khác nhau ạ. Và cái giá phải trả về kinh tế...
-
Channel: Điện tử công suất
hôm nay, 13:11 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi tuyennhanSửa dạng này thì chuyên còn không dám chắc khộng cháy nổ với linh kiện bán ngoài chợ nói gì khộng chuyên .
-
Channel: Điện tử công suất
hôm nay, 09:25 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi tuyennhanĐúng rồi chọn mua theo tai . ca thì phải toàn dải nhạc thì chỉ cao và thấp thé nên loa ca thì nghe nhạc không hay và ngược lại .
Muốn ca và nhạc đều hay thì phải dúng 2 giàn , còn nếu chỉ có 1 thì phải chỉnh sửa lại sao cho ca và nhạc đều được không quá dở ....-
Channel: Điện thanh
hôm nay, 09:10 -
-
bởi Ng.Phuong.5Vấn đề cũ: khi in mạch ra pdf và bấm chọn Keep Drill Holes Open, in ra thì pdf trắng đen các lỗ chân linh kiện như nhau. Mặc dù có linh kiện phần Drill là 1mm, có linh kiện thì là 3mm. Cho em hỏi cách sửa phần này ở Orcad 9.2 với ạ.
Mấy con...-
Channel: Cadence ORCAD
Hôm qua, 19:44 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi viettinhBác nói đúng quá. Cơ mà muốn mua hàng chính hãng, hàng thương hiệu mà tai lại hợp hàng tầu mới khổ chứ.
Đang tính mua cái loa tầu nữa cột đằng sau loa này, Loa sony chỉ để hát nhép thôi, có dc k các bác ...-
Channel: Điện thanh
Hôm qua, 18:12 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi nguyendinhvanTheo tôi thì khi hpj sản xuất ra cái loa đó, đã có nhiều chuyên gia kỹ thuật hiệu chỉnh, tính toán các phần tử kỹ lưỡng rồi.
Bây giờ tính toán hiệu chỉnh lại cần có đội ngũ tương đương với nhà sản xuất.
Cách đơn giản...-
Channel: Điện thanh
Hôm qua, 00:04 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi mèomướpDạ cháu có ý tốt muốn động viên chú ấy ngâm cứu khoa học thôi ạ. Về phần kiểm tra dao động thì chú ấy chưa biết thì sẽ tìm hiểu được là cần những gì ạ, chắc chắn là khi hướng dẫn phần ấy các cô chú nào đó sẽ lưu ý cần loại sò công suất ra tránh cháy nổ rồi ạ....
-
Channel: Điện tử công suất
08-01-2025, 19:02 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi tuyennhanChủ thớt hỏi có kiểm tra được dao động mà không cấp nguồn thì rõ trình ở mức nào mà mèo còn xúi ngâm cứu nữa ác vậy ....
-
Channel: Điện tử công suất
08-01-2025, 15:43 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi tuyennhanLoa bass đấu trực tiếp không qua phân tần để thành loa toàn dải xem có thoát tiếng khộng , nếu không thoát cần phải sửa lại mạch cs hay âm sắc nếu đủ trình còn nếu thoát ca hay nhưng chưa vừa ý vì bass kém chăc thì đấu lại như cũ và đấu thêm loa mid treble bên ngoài .
-
Channel: Điện thanh
08-01-2025, 15:28 -
-
Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.bởi mèomướpDạ loa tép bé xíu như ngón chân cái thôi ạ. Thiếu gì chỗ để đâu. Quan trọng là gắn thêm nó loa nghe ok hay ko thôi ạ...
-
Channel: Điện thanh
08-01-2025, 11:44 -
Comment