我从串口读数据,然后以动态波形形式显示出来,波特率为115200,我利用clPlot这个类,但是实时显示波形时CPU占有率达到100%,请教各位这个问题怎么解决?

解决方案 »

  1.   

    就是就是,建议1秒一点,并多用Sleep(0)
      

  2.   

    参见 http://community.csdn.net/Expert/topic/5023/5023972.xml?temp=.8079035
      

  3.   

    我之前是收到一帧就画一次,1秒钟200帧,听了各位专家的意见,我改成每隔8帧画一次,也就是1秒钟25帧,这样CPU占用率降下来了,但是曲线闪动很厉害,我想是不是因为显示器刷新频率一般是85HZ,因此曲线的显示频率也要接近设置的显示器的刷新频率?如果改成每隔3帧画一次,这样接近显示器的刷新频率,但是CPU占用率还是100%,请教各位,谢谢!
      

  4.   

    每秒40帧,CPU占用率80%左右。为什么我使用了双缓冲技术画出的曲线还是有闪动?谢谢
      

  5.   

    刷新的太快是会有点闪的,你用的是不是液晶显示器啊,另外你画线的算法可能要优化一下,我画8条曲线,100/秒,CPU使用不超过5%
      

  6.   

    用双缓冲屏幕绝对不会闪的,是你的方法有问题。一定要全部在内存DC中绘制完后,再一次BitBlt到屏幕上;刷新界面用Invalidate(FALSE),就是不要刷新背景;要响应WM_ERASEBKGND消息,直接返回TRUE。