波形分析问题(急)

w249756642 2012-04-18 11:02:17
手里有一个呼吸波形模块,它会不停的一直发当前的呼吸感应值,也就是波形的Y值。我要如何处理分析能计算出呼吸频率呢?以下是我画波形的程序。
Private Sub rs232_DataReceived(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles rs232.DataReceived
Dim instring As String = String.Empty
If rs232.BytesToRead > 0 Then
rs232.Read(y, 1, 1)
If xx <= Picture.Size.Width Then
g.DrawLine(New Pen(Color.Blue), New Point(xx, 255 - yy), New Point(xx + 5, 255 - y(1)))
yy = y(1)
xx += 5
Picture.Invalidate() '清除画布
'Picture.Update()
Else
xx = 0
Picture.Image = New Bitmap(Picture.Width, Picture.Height)
'初始化绘图对象
g = Drawing.Graphics.FromImage(Picture.Image)
'设置光滑模式为反锯齿
g.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias
Dim x, y As Int32
x = 20
g.DrawLine(Pens.LightGreen, x, 0, x, Me.Picture.Height) '画Y轴
y = Me.Y_min
Dim i As Int32 = 0
While y > 0
i += 1
y = Me.Picture.Height * (1 - (Me.Steps * i / (Me.Y_max - Me.Y_min)))
g.DrawLine(Pens.LightGreen, x, y, Me.Picture.Width, y) '画网格横线
g.DrawString(Me.Y_min + Me.Steps * i, Me.Font, Brushes.Black, 0, y) '画Y轴卷标
End While
End If
End If
End Sub
我不知道如何通过波形参数分析计算呼吸频率,请高人指点。大体思路我知道,以一次峰值做为一次呼吸,之后求峰值间差,但是写程序没思路,有做过的朋友指点一二,谢谢大家了。
...全文
57 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧