labview控制单片机led灯

现在想利用labview程序控制stm32单片机led灯亮先利用串口工具测试,证明可以,led灯会在收到1后亮这里发送的是1和回车,所以是3个字节,第一位占位,所以接收4... 现在想利用labview程序控制stm32单片机led灯亮
先利用串口工具测试,证明可以,led灯会在收到1后亮
这里发送的是1和回车,所以是3个字节,第一位占位,所以接收4字节

可是用labview测试时就不行了,VI图如下:

个人觉得应该是数据传送格式的问题,不过研究了好久都没找到方法,所以
才来问大家,请知道的朋友不惜指教,谢谢!
展开
 我来答
banshouren4077
推荐于2016-01-23 · TA获得超过1999个赞
知道小有建树答主
回答量:818
采纳率:0%
帮助的人:1121万
展开全部
1. LabVIEW默认的串口设置就是“9600, 8, n, 1”,所以你不连9600的波特率选项都没事,这里没问题。

2. 十一级的那位是个姐姐吧,这里是编程的,不是美容。这里没法蒙人的。

3. 先说说你的程序中的坏习惯:无视错误簇,while循环不加延时高速空转(上位机可不是单任务的),无用的属性节点没删掉(如果你想看收到多少回传字节,应该在发送后加适当延时,比如100ms,然后再给串口字节数一个显示控件)。

4. 真正的问题出现在你用的回车符上,你用的是一个字节,是0x0d,或者叫“\r”,也叫CR,是“回车符”。你说的两个字节的那个是Windows里面CR和LF连用的回车换行符,比这个后面多一个字节的换行符(0x0a,"\n",LF)。这3个字符串常量在字符串选板里面都有,就是倒数第4个到倒数第2个。现在知道它们的区别了吧。
更多追问追答
追问

首先谢谢你的回答

按照你的第3点,我加入了你所说的,按照第4点,我也试了,不过依旧是无法实现我所需要的效果。

改动了单片机的程序,取消了回车结束的标示符,直接读取一个字符的数

串口工具如图所示,发送1,单片机led灯亮,不按16进制显示和按16进制显示的接收如图

labview的VI如图所示,不过,不论是按照字符串输入,还是如图所示的转化为16进制,都无法实现

不知道是输入的问题,还是VI的问题

追答
从串口助手看,你发的是ASCII的1,就是0x31。你用LabVIEW发送的时候直接发字符串“1”就行。不用后面的转换。

另外,LabVIEW中如果想用串口,需要装IIOA的VISA驱动等,在驱动盘中。只安装基本的LabVIEW是不行的,串口根本就没驱动。你应该是没装吧………………

如果一时找不到,可以用VB的"MSComm.ocx"串口控件,ActiveX的。具体做法如果需要再问吧。
tangguosheng1
2012-10-12 · TA获得超过1595个赞
知道小有建树答主
回答量:313
采纳率:0%
帮助的人:131万
展开全部

abview里面的通信协议与单片机里面的设置一样吗?

比如:

你用的串口调试器在你的abview里面有设置吗?

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
水岸落日
2012-10-13 · TA获得超过3660个赞
知道大有可为答主
回答量:5614
采纳率:6%
帮助的人:754万
展开全部
同学,你好,你先告诉我,根据您的K是积极的高或低效率。是底层或高光,明亮的LED。 K和通过这些I / O端口和单片机的LED放在一起。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-10-12
展开全部
哈哈哈哈哈
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式