搜索
bottom↓
回复: 18

大家用上位机显示单片机串口输出数据波形都用什么软件,这两天看到论坛里提到labview,

[复制链接]

出0入0汤圆

发表于 2011-7-10 15:41:30 | 显示全部楼层 |阅读模式
需要做的工作:
51单片机上传感器采样,(现只有温度传感器,变化太小,做程序时,是用随机数代替的)上位机软件接收数据画出图形(横轴是时间,纵轴是采样数值),这里要使用labview,输出类似示波器的效果。

我使用的方法发如下:(第一天接触labview,可以说真是一无所知,四处查资料,不得要领,另外单片机串口通讯也只是刚刚学),遇到了问题,请大家帮忙指点。
一、
上位机从网上找到一个labview的实例VI,串口试验的,功能界面基本等同于常用开发板上的“串口调试程序”,VI如下:
这是我在网上看到的串口接收数据的VI,我加了个波形控件ourdev_656458S2UVM6.rar(文件大小:54K) (原文件名:串口调试程序.rar)
界面如图:
这个VI的界面图和程序框图画红圈的是我自己添加的 (原文件名:1.JPG)


(原文件名:2.JPG)

二、单片机上是简单的循环发送数据程序,摘部分写在下面:

/*------------------------------------------------
                    主函数
------------------------------------------------*/
void main (void)
{

   InitUART();
   int temp[5];
   while (1)                       
    {
      for(i=0;i<3;i++)
        {
          temp=rand()*9+1;
        }
      SendStr(temp);//这个字符串就会每次发送三位随机数(100-999)过去
      //延时循环发送
      DelayMs(240);
    }
}

/*------------------------------------------------
                    发送一个字节
------------------------------------------------*/
void SendByte(unsigned char dat)
{
SBUF = dat;
while(!TI);
      TI = 0;
}
/*------------------------------------------------
                    发送一个字符串
------------------------------------------------*/
void SendStr(unsigned char *s)
{
while(*s!='\0')// \0 表示字符串结束标志,
                //通过检测是否字符串末尾
  {
  SendByte(*s);
  s++;
  }
}

运行单片机,打开串口程序,这里我让单片机试验了两种数据,一个是随机3数整数,另一个是循环加1,都是在(100-999之 间),运行都接收正常,国图中绿色的就是接收的循环加一的效果。
三、我在上位机程序中加入图形“控件”(这里因对labview不懂,它没有文本编程,只有程序框图,所以感到很难下手。)根据自己的理解,在原程序框图中在接收区前端和图形控件间连了线,但不支持,后来试着在中间加入一个函数(转字符串为整数),一下子成了!(也是没想到)运行VI,图线出来了,但不是我想要的效果。

现在的问题如下:

曲线不是我想要的样子,我是要把这些点用线连起来,labview把每个点向下连到横轴上,这是要解决的第一个
第二个是当我把下位机延迟减到delay(20),原来是delay(200),就不是每个点都显示了,似乎处理速度不够的样子,不明白因为什么,点显示的断断续续的
还有就是如果我要传两种数据进来,用两条曲线分别显示,应该怎么做,请会的朋友,给些指点,谢谢了!!!!


网上有现成例子,是将温度发送成四个字节,然后用labview去读取,因对labview看得不得要领,也没看懂,不过大概路子应该是一样的!有了解的朋友指出我labview中的问题.....

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2011-7-10 16:22:43 | 显示全部楼层

这是温度采集得到的,温度只取了两位整数,用手使之升高再放开 (原文件名:4.JPG)

但这根本不是我想要的,我想要的是平滑曲线也就是把图中的点与点连起来,即便是采集时间间隔再长一些,也是曲线也可以,但这里只是孤立的点,哪个地方的问题呢??

出0入4汤圆

发表于 2011-7-10 16:51:14 | 显示全部楼层
右单击控件

(原文件名:Snap1.jpg)

出0入0汤圆

 楼主| 发表于 2011-7-10 16:57:16 | 显示全部楼层
我看看,这个好像我调了,我把单片机上改成那个四个字节发送的然后用网上一个例子是对的,我试试你的,再对一下他的labview,改成他的以后图线如下:显示效果是对的

(原文件名:5.JPG)

出0入0汤圆

 楼主| 发表于 2011-7-10 17:22:42 | 显示全部楼层
不是那个原因,因为我的图形中,我是把点到x轴他本来画的线给用黑色掩盖掉了,所以一定不对,就是labview程序框图的问题.....在哪呢?

出0入0汤圆

发表于 2011-7-10 19:02:19 | 显示全部楼层
TeeChart...
查论坛里有。

出0入0汤圆

发表于 2011-7-11 08:43:02 | 显示全部楼层
强大的控件 先收藏

出0入0汤圆

发表于 2011-7-11 09:29:33 | 显示全部楼层
MARK

出0入0汤圆

发表于 2011-12-2 10:41:59 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-12-14 22:42:53 | 显示全部楼层
mar

出0入0汤圆

发表于 2011-12-14 23:03:07 | 显示全部楼层
我想用bcb做

出0入0汤圆

发表于 2011-12-23 19:00:51 | 显示全部楼层
支持!  

& Mark!

出0入0汤圆

发表于 2012-1-15 09:56:37 | 显示全部楼层
强大,标记学习!

出0入0汤圆

发表于 2012-3-27 13:57:07 | 显示全部楼层
谢谢分享………………支持

出0入0汤圆

发表于 2012-3-27 13:59:03 | 显示全部楼层
(原文件名:串口调试程序.rar)        里面的子VI不在了,可以发一个给我不。。谢了哈 578357980@qq.com

出0入0汤圆

发表于 2012-4-9 14:34:20 | 显示全部楼层
mark
串口Labview

出0入0汤圆

发表于 2012-4-9 14:44:10 | 显示全部楼层
LabView是个很方便的工具
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 13:03

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表