智能车制作
标题:
手把手教你从零开始用labview编写智能车上位机程序(3)
[打印本页]
作者:
superyongzhe
时间:
2008-5-28 22:47
标题:
手把手教你从零开始用labview编写智能车上位机程序(3)
<
><FONT color=#1111ee size=5 face=楷体_GB2312><STRONG> 程序结构</STRONG></FONT></P><P><FONT color=#723cc4 size=5 face=楷体_GB2312><STRONG> 这一篇,我将给大家讲解一下labview中程序执行的顺序。最终目标是大家能够知道第二篇中那个程序里的框框是干什么的,为了简单,所以不会全讲,剩余的到以后需要使用的时候再说。</STRONG></FONT></P><P><FONT color=#1111ee size=5 face=楷体_GB2312><STRONG> 在labview中,默认情况下,程序的执行顺序是沿着数据流动的方向运行的。我们把第二篇中的那个串口接收程序简化一下就成了上面的这个样子。</STRONG></FONT><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图00.jpg"></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>首先是配置串口,配置好的串口的数据流到缓冲区,我们设置好一个4096字节大小的缓冲区。于是得到了来自于串口的4096个字节的串口数据,然后我们再用“串口读取”从中取出这4096字节个数据,然后把这4096字节是数据输出到“接收数据”的那个框里,于是我们就可以看到从串口收到的字符了。</FONT></STRONG></P><P><STRONG><FONT color=#f70968 size=5 face=楷体_GB2312> 但这样的话,你会发现程序只能运行一次,然后就停止。我们如何才能让程序不停的循环这个步骤,当我们想让他停的时候他才停呢?</FONT></STRONG></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312> 我们可以在函数面板的空白处点击右键,如下图所示找到while结构</FONT></STRONG><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图02.jpg" width=698 height=448></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>构然后就会出现一个可以拖动的方框,拖动他把你想不停执行的部分包含在这个框里面</FONT></STRONG><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图03.jpg"></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>然后就会变成这样</FONT></STRONG><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图04.jpg"></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>但是还没完,在这个框里面的右下角有一个红色的点,在他的左面有一个可以连接的“布尔”型连线,右击这个线,创建-》常量</FONT></STRONG><BR><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图05.jpg"><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>于是他的上面就连接了一个“F”的常量,表明这个循环不会停止。也就是说这个while大方框里面的程序会不停的循环运行。</FONT></STRONG></P><P><STRONG><FONT color=#f70938 size=5 face=楷体_GB2312> 现在我们的串口程序每从串口接收到4096个字节的数据就把它显示在那个“接收数据”方框里,不断循环。</FONT></STRONG><STRONG><FONT color=#f70938 size=5 face=楷体_GB2312>但是我们现在还面临一个问题,那就是。每当接收到4096个字符串后,把他们显示在程序中时,以前的数据就全部没有了,我们如何才能让以前的数据都保存在里面呢?</FONT></STRONG></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312> 在while循环里还有一种结构,叫移位寄存器,右键点击while循环的那个框,选择“添加移位寄存器”。如下图</FONT></STRONG><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图06.jpg"></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312> 在while方框上出现了两个三角形的符号,这就是移位寄存器。移位寄存器的意思大概是把一次循环中计算的数据放在右边的那个三角形里,在下一次循环时,从左边的那个三角形里取出来进行运算,其实就跟C语言里的变量类似,通过这种方式我们可以把上一次循环中的数据用在下一次循环中(我讲的不是很准确,应该就是这么用吧。其实还有其他方法,也可以使用局部变量实现这个功能)。</FONT></STRONG></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312> 再介绍一个函数--“连接字符串”,位置如下</FONT></STRONG><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图07.jpg" width=624 height=403></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>下面我们就把它连接成下面这个样子</FONT></STRONG><BR><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图08.jpg"></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>这样就可以把从串口接收到的数据完整的显示出来了,前面板如下</FONT></STRONG><BR><BR><IMG src="http://download.intelligentcar.cn/bbsupfile//upfile/截图09.jpg" width=626 height=346></P><P><STRONG><FONT color=#1111ee size=5 face=楷体_GB2312>至于我给的那个程序里面的if结构的用法,就更简单了,使用“ctrl+H”看看帮助就知道了,其实这个功能要不要无所谓。为了使我们这个程序尽可能简单,暂时我就不介绍这个了。</FONT></STRONG></P>
作者:
whut_wj
时间:
2008-5-28 23:46
标题:
Re:手把手教你从零开始用labview编写智能车上位机程序(3)
好贴。
作者:
cau
时间:
2008-5-29 23:50
标题:
Re:手把手教你从零开始用labview编写智能车上位机程序(3)
确实太好了。真的很
作者:
新兴MCU
时间:
2009-2-14 03:34
正在找的好资料啊~~~~~~~~谢谢
作者:
master.D
时间:
2009-2-23 22:22
服务器不争气啊
作者:
chenyongde
时间:
2009-3-6 00:55
有的图片看不了。不知道什么原因
作者:
zzw870621
时间:
2009-3-6 15:25
怎么 看不到图片呢?方便的话能发给我吗?
250558960@qq.com
谢谢
作者:
carol
时间:
2009-3-7 10:10
谢谢楼主,,
作者:
zhangkeke
时间:
2009-3-13 23:21
有些图片看不了,楼主发给我好吗,十分需要。谢谢
wozhangkeke@126.com
作者:
ruaina
时间:
2009-3-26 14:35
我也要图 急用啊 谢谢
duanna198659@yahoo.com.cn
作者:
fj_666666
时间:
2009-3-27 18:09
我也要图 非常谢谢
nuli_1@eyou.com
作者:
fj_666666
时间:
2009-3-27 18:10
能发个全部教程的压缩文件吗?非常感谢!
作者:
fj_666666
时间:
2009-3-27 18:10
能发个全部教程的压缩文件吗?非常感谢!
nuli_1@eyou.com
作者:
chenrunshe_007
时间:
2009-4-4 23:43
与楼上有同感
作者:
雨中泪11
时间:
2009-4-16 15:59
谢谢楼主
作者:
xingxing
时间:
2009-4-16 16:54
谢谢楼主
作者:
xingxing
时间:
2009-4-16 16:54
谢谢楼主
作者:
沉默1
时间:
2009-4-19 10:37
楼主太好了,能把全部的资料发给我吗?急需做无线发射模块‘ qq401553160
邮箱:
yandadawei@126.com
作者:
xw_0104
时间:
2009-5-17 09:18
我也要 谢谢
xiaowei_0104@163.com
.
作者:
gallen
时间:
2009-6-16 21:28
我也要
723852723@qq.com
作者:
吾陪你
时间:
2009-6-16 22:25
好东西不能错过,我也要啊 传至
wupeilin_2007@sina.com
谢谢啦
作者:
lzclyq
时间:
2009-7-27 16:45
怎么图片不显示了啊
作者:
april85e
时间:
2009-8-10 17:02
图片看不了啊, 能发一份到我的邮箱吗,
yijianxiao2006@yahoo.com.cn
,把labview的串口程序也带上,谢谢楼主,急需!
作者:
qingpingpei
时间:
2011-3-24 21:16
回复
1#
superyongzhe
厉害 支持原创
作者:
hasea
时间:
2011-4-21 09:28
服务器不给力啊,图都挂啦
作者:
明汐1
时间:
2011-4-27 21:50
哎,找到第三节了。第一节在哪
作者:
jia963801482
时间:
2011-4-29 19:19
图片根本看不了的,无语
作者:
hunter_sy
时间:
2011-6-3 13:35
图片看不了啊
作者:
止言
时间:
2013-7-24 19:46
楼主,怎么看不到你发的是什么啊。。能发我一份资料么?我邮箱
440130002@qq.com
作者:
王陆
时间:
2014-4-27 11:02
jiushi
作者:
LEAVING
时间:
2014-7-24 22:03
格式看着好乱啊。。。论坛崩溃了?
作者:
bzd_111
时间:
2014-12-12 19:25
:):)
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2