电子时钟labview-()
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子时钟labview-()
————————————————————————————————作者:————————————————————————————————日期:
目录
1目的及基本要求 0
2 电子时钟原理 (1)
3电子时钟设计和仿真 (2)
3.1 具体设计步骤 (3)
3.2 前后面板 (12)
3.3 设计中遇到的问题 (14)
4结果及性能分析 (14)
4.1 运行结果 (14)
4.2 性能分析 (15)
参考文献 (16)
1 目的及基本要求
熟悉LabVIEW开发环境,掌握基于LabVIEW的虚拟仪器原理、设计方法和实现技巧,运用专业课程中的基本理论和实践知识,采用LabVIEW开发工具,实现电子时钟的设计和仿真。要求通过本课程设计使学生熟悉LabVIEW开发环境,掌握基于LabVIEW的虚拟仪器设计原理、设计方法和实现技巧,使学生掌握通信系统设计和仿真工具,为毕业设计做准备,为将来的学习及今后从事科学研究、工程技术工作打下较坚实的基础。
本课程设计要求实现电子时钟的设计与仿真,即通过获取电脑的系统时间,并分离出给数字,在通过布尔显示显示。数字的显示主要是7个长条的布尔显示组成,原理与7段数码管相似。7段数码管显示不同的数字主要通过其7个布尔不同的真假值控制,将0-9对应的7段布尔显示值依次存入一个布尔数组里,只需提取此数组的不同段即可让其显示不同的值,如显示“0”提取数组的0-6位分别赋值给7段布尔显示。以此类推,可以实现九位数字即0到9的可视化显示。而且要求实现时钟功能多样化,比如加入显示时段、星期,甚至实现闹钟功能,可以自定义时间显示等,做到界面简约而生动,方便操作和用户理解。
2 电子时钟原理
由于电子时钟在现实生活、工作中,特别是在科学研究工作中有非常很重要的、广泛的应用。在这种情况下,对电子时钟的研究和制作、仿真是十分很重要。本文就对基于LabVIEW的电子时钟的设计与仿真做详细的说明。
本课程设计要求实现电子时钟的设计与仿真,即通过获取电脑的系统时间,并分离出给数字,在通过布尔显示显示。数字的显示主要是7个长条的布尔显示组成,原理与7段数码管相似。7段数码管显示不同的数字主要通过其7个布尔不同的真假值控制,将0-9对应的7段布尔显示值依次存入一个布尔数组里,只需提取此数组的不同段即可让其显示不同的值,如显示“0”提取数组的0-6位分别赋值给7段布尔显示。以此类推,可以实现九位数字即0到9的可视化显示。
电子时钟的基本设计思路是通过可以获取时间的控件来获取相关信息,如:
年、月、日、星期、时、分、秒等,可以返回当前时间的时间标识。LabVIEW将时间标识计算为自1904年1月1日星期五12:00 a.m(通用时间)以来的秒数。使用转换为双精度浮点数函数,将时间标识的值转换为精度较低的浮点数。取得的值最终为整型数据,利用除数取余即可分离个十位。
设计中要用到自动获取时系统时间的控件、指示灯、获取日期/时间(秒)、格式化日期/时间字符串、截取字符串、While循环、条件结构(Case结构)、常量、局部变量、真常量、假常量等等,通过基本的连接就制作好一个电子时钟了。自动获取时系统时间的控件主要是用来获取时间和分离时间,格式化日期/时间字符串:使用时间格式代码指定格式,按照该格式将时间标识的值或数值显示为时间。时间格式代码包括:%a(星期名缩写),%b(月份名缩写),%c(地区日期/时间),%d (日期),%H(时,24小时制),%I(时,12小时制),%m(月份),%M (分钟),%p(am/pm标识),%S(秒),%x(地区日期),%X(地区时间),%y(两位数年份),%Y(四位数年份)等。并利用常量和偏移量截取字符串由七段数码管输出,时间输出和日期输出都同理。为方便用户操作和时钟功能多样化,可以自定义时间显示与输出,基本原理就是创建一个子.VI文件,与主程序相连,运行时,先运行子.VI文件,再运行主程序,即可完成自定义时间的显示与输出。为了获得更好的显示效果将背景改为黑色,布尔显示的颜色为绿色。如下图所示,即最终显示效果图:
图1 电子时钟效果图
3 电子时钟设计和仿真
首先熟悉虚拟仪器的设计思想,而后便可着手进行电子时钟的相关设计,控件架构以及函数设置。
3.1 具体设计步骤
1.时间设置
获取时间的各整型数据,软件中获取日期/时间(秒)控件从计算机系统中自动提取时间,并转换成日期、时间等,控件图如下:
图2 时间设置控件图
2.时间显示
通过除10取余便可得到个位,商为十位,以此方法也可求出年的各个数字,取出各位数字后,并不可直接显示,要通过统一编码规范显示的格式,这样才能显示各位数。要显示数字时,只需将数字乘以7,再将乘积的值作为索引在那存放真值的数组里寻找对应显示的七个布尔显示控件的值。如显示‘2’,则从数组的第2*7=14位开始,依次取出7个(分别代表着七个布尔的真值),其他也同理。最后捆绑成簇,因为七段显示布尔已做成簇。如下数码管显示图,其包含七段显示布尔,即A、B、C、D、E、F、G,如显示“0”的时候,将其分别置为1111110,即可显示数字“0”(“1”代表真,“0”代表假),其他的同理。
但在显示时间的时候,要用六个方形指示灯,对应时、分、秒,每个占用两个指示灯;用两个圆形指示灯表示时分秒之间的冒号间隔。
这其中包括截取字符串,截取字符串即返回输入字符串的子字符串,从偏移量位置开始,包含长度个字符。连线板显示了该多态函数的默认数据类型。字符串是输入字符串,偏移量是起始位置并且必须为数值。字符串中第一个字符的偏移量为0。如没有连线或小于0,则默认值为0。长度必须为数值。如长度没有连线,则默认值为字符串长度减去偏移量。子字符串如偏移量大于字符串的长度,或长度小于等于0,则值为空。如长度大于或等于字符串长度减去偏移量,则子字符串是从偏移量开始的剩余部分。
控件图如下所示: