logo资料库

基于Labview的电子时钟设计.doc

第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
资料共13页,剩余部分请下载后查看
第一章 概述
第二章 总体设计
2.1 时钟显示的结构
2.2设计总思路
第三章 软件设计
3.1获取时间的各整型数据
3.2提取数字的各位
3.3 七段布尔显示控件编码
3.4 译码、布尔显示数字
3.5 显示时间的区段
3.6 闪烁
第四章 程序调试
总 结
附 录
程序框图前面板
程序面板程序框图
目 录 第一章 概述 ............................................................................................................. 1 第二章 总体设计 ......................................................................................................2 2.1 时钟显示的结构................................................................................................... 2 2.2 设计总思路............................................................................................................2 第三章 软件设计 ......................................................................................................3 3.1 获取时间的各整型数据........................................................................................3 3.2 提取数字的各位....................................................................................................3 3.3 七段布尔显示控件编码....................................................................................... 4 3.4 译码、布尔显示数字........................................................................................... 4 3.5 显示时间的区段................................................................................................... 5 3.6 闪烁....................................................................................................................... 5 第四章 程序调试 ......................................................................................................6 总 结 .....................................................................................................................7 附 录 .....................................................................................................................8 程序框图前面板...........................................................................................................8 程序面板程序框图.......................................................................................................9 0
第一章 概述 虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各 种测试、测量和自动化的应用。灵活高效的软件能帮助您创建完全自定义的用户 界面,模块化的硬件能方便地提供全方位的系统集成,标准的软硬件平台能满足 对同步和定时应用的需求。这也正是 NI 近 30 年来始终引领测试测量行业发展趋 势的原因所在。只有同时拥有高效的软件、模块化 I/O 硬件和用于集成的软硬件 平台这三大组成部分,才能充分发挥虚拟仪器技术性能高、扩展性强、开发时间 少,以及出色的集成这四大优势。LabVIEW(Laboratory Virtual Instrument Engineering Workbench,实验室虚拟仪器集成环境)是一种图形化的编程语言(又 称 G 语言),它是由美国 NI 公司推出的虚拟仪器开发平台,也是目前应用最广、 发展最快、功能最强的图形化软件集成开发环境。使用这种语言编程时,基本上 不用写程序代码,取而代之的是程序框图。LabVIEW 的特点如下:  编程简单;  开发周期短;  高效性;  开放性;  自定义性;  性价比高,能一机多用。 1
第二章 总体设计 2.1 时钟显示的结构 本课题要求设计一个数字时钟。通过获取电脑的系统时间,并分离出给数字, 在通过布尔显示显示。数字的显示主要是 7 个长条的布尔显示组成,原理与 7 段 数码管相似。7 段数码管显示不同的数字主要通过其 7 个布尔不同的真假值控制, 将 0-9 对应的 7 段布尔显示值依次存入一个布尔数组里,只需提取此数组的不同 段即可让其显示不同的值,如显示“0”提取数组的 0-6 位分别赋值给 7 段布尔显 示。 2.2 设计总思路 获取时间的控件可以获取的信息有:年、月、日、星期、天数、时、分、秒、 秒小数等,取得的值为整型数据,利用除数取余即可分离个十位。为了获得更好 的显示效果将背景改为黑色,布尔显示的颜色为绿色。 2
第三章 软件设计 3.1 获取时间的各整型数据 软件中获取日期/时间(秒)控件从计算机系统中自动提取时间,并转换成日 期、时间等,控件图如下: 在获取时间后,将数据解除捆绑即分别取得年、月、日、时间等,如下图: 图 3-1 图 3-2 3.2 提取数字的各位 通过除 10 取余便可得到个位,商为十位,以此方法也可求出年的各个数字, 如下图: 图 3-3 3
3.3 七段布尔显示控件编码 取出各位数字后,并不可直接显示,要通过统一编码规范显示的格式,这样 才能显示各位数,编码各段如下: 图 3-4 A、B、C、D、E、F、G 分别对应着七段布尔显示控件,要显示“0”时 A~G 的 赋值分别为:1 1 1 1 1 1 0(1 代表真,0 为假),显示其他数字也是按此做法的。 最后将此 70 个值串接起来存入一个布尔数组里,如图 3-4 右。 3.4 译码、布尔显示数字 要显示数字时,只需将数字乘以 7,再将乘积的值作为索引在那存放真值的数 组里寻找对应显示的七个布尔显示控件的值。如显示‘2’,则从数组的第 2*7=14 位开始,依次取出 7 个(分别代表着七个布尔的真值),其他也同理。最后捆绑成 簇,因为七段显示布尔已做成簇。Labview 表达如下: 4
图 3-5 3.5 显示时间的区段 显示的时间被分成 7 段,即凌晨、早上、上午、中午、下午、傍晚、晚上,只 需通过表达式节点计算出此时属于哪一段(1-7),再通过七个布尔文本分别显示 即可,布尔显示控件叠加在一起,程序及显示效果如下图: 图 3-6 3.6 闪烁 闪烁时只要判断其是否秒数大于 0.5S,大于则显示(为真),小于则熄灭(为 假),图 3-7 为程序框图,3-8 为实际效果: 图 3-7 5
图 3-8 第四章 程序调试 程序很容易上手,没有 C 语言那么复杂的语法等,图形界面让人更直观的对 各部分进行操作。此课程设计重点及难点在于布尔显示数字,开始时感觉其数据 量非常大,由于簇的特点使得程序的复杂性大大降低,而且程序更加清晰。显示 的主要借助于平时常用的数码管,它的显示原理就如本课程设计的要求是一样的, 主要有统一的编码,显示时通过解码即可显示出数字。 开始做好 7 段布尔显示后,不管怎么看都很生硬,完全不是数字时钟的模样, 研究了半天,原来是背景的缘故,当我换背景成黑色,且布尔显示位绿色后,显 示效果大不一样,让人感觉到它就是一个电子手表一样。不过它还是有一点不足: 显示的字还是那么生硬,不生动,字体台统一、死板了。不过由于是布尔显示, 它有它的局限性,只能做到这点了。 显示的时间原来为 24 小时制,但为了更直观些,所以把一天分成 7 个区,分 别为凌晨、早上、上午、中午、下午、傍晚、晚上,使得其更人性化。 6
总 结 Labview 是一个很强大的软件,学好它很难,但学会就很简单,所以只要多 做此类的程序就能做出一个好的 labview 程序。数字时钟功能很简单,实现起来也 很简单,但要做得美观、简洁却不那么容易。比如让其显示更多生动的字体,在 一个小窗口里实现更多的动画。 程序要实现丰富的内容及完美的界面主要还是要靠扎实的基础,掌握各控件 的使用及各类型的模块间的转换。本来把本次课程设计的界面显示做成各种字体 的,但由于时间及能力的关系,没有做得更好。 7
分享到:
收藏