浙江大学宁波理工学院实验报告纸
用了好几次的子VI,原理我不是很了解。 b. 实验结果(包括程序代码)
滚动屏内容字体加粗
- 6 -
浙江大学宁波理工学院实验报告纸
滚动屏内容字体倾斜
【四】 实验总结与讨论
本课题的设计思路来源于刚结束的竞赛中的竞赛题目“模拟电梯升降系统”,当时已经做出了实物,并相应的写好了主、从机程序,所以整个思路还算比较清晰,以为会比较顺利,一开始,因为完全是自己DIY,除了画protues并调试从机和设计程序框图花费了一些时间外倒没有遇到其他的一些困难。但是在设计快要成型的时候遇到了困难:
1、 子vi的调用。我在一个labview学习书上看到一个“通过点阵控制显示图形”的设计,想用它来做我的扩展功能—滚动屏,然后想当然的直接把它做成自VI进行调用,运行才发现,父VI中并没有输出,检查来检查去,才发现 我的子VI中最外层是一个while循环,没有跳出条件,并不能把结果输出到父VI中。总结:设计和调用子VI要考虑好子VI中的逻辑。
2、 第二个卡了我好久好久,就算到现在还不是很明白的一个点就是串口的接收发送问题,我尝试了所有的结构体,也用了延时啊啥的,就是解决不了,每接收过一次数据,就不能立即发送的问题,而且和串口接
- 7 -
浙江大学宁波理工学院实验报告纸
收程序在同一个while结构体里的程序也会受到影响,导致响应迟缓。虽然我怎么都没有搞懂为什么和怎么解决,在老师的指点下,我用各种不同的方法乱试,不惜耗费大量的时间,终于在一个偶然间让我给蒙出来了,我将整个大工程分成了三个while结构体,“串口接收部分”、“滚动屏部分”、“串口发送部分”让他们分开来各自自行,并在“串口接收部分”里加了200ms延时,虽然这个延时会影响“滚动屏部分”至于为啥,我也不知道,然后在“发送部分”加了“时间结构体”,当按下按键就要发送数据的时候就把“串口接收关掉”,等发送完后再打开,尽管程序中还是存在一些细小的bug,不过设计目标基本已经实现了
- 8 -
相关推荐: