虚拟仪器课程设计-流水灯_第1页
虚拟仪器课程设计-流水灯_第2页
虚拟仪器课程设计-流水灯_第3页
虚拟仪器课程设计-流水灯_第4页
虚拟仪器课程设计-流水灯_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./电控学院课程设计〔论文〕课程名称:虚拟仪器题目:数字流水灯的设计院〔系〕:专业____学号:指导年月日.基于LabVIEW的流水灯设计摘要虚拟仪器〔virtualinstrumention〕是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。LabVIEW是一种程序开发环境,由美国国家仪器〔NI〕公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。流水灯是一种生活中比较常见的装饰,本文主要通过labview来设计了一个流水灯系统的上位机界面,通过串口通信实现了其有规律的亮灭,带来一定的观赏效果。关键词:虚拟仪器、上位机、串口通信、流水灯AbstractVirtualInstrument<virtualinstrumention>isacomputer-basedinstruments.Closecombinationofcomputerandinstrumentsisanimportantdevelopmentdirectionofthecurrentinstrument.LabVIEWisaprogramdevelopmentenvironmentfromNationalInstruments<NI>developedbythecompany,similartoCandBASICdevelopmentenvironment,butLabVIEWsignificantlydifferentfromothercomputerlanguages​​are:theuseofothercomputerlanguages​​aregeneratedtext-basedlanguagecode,andtheuseofLabVIEWgraphicalprogrammingGeditinglanguageprogramisproducedinblockdiagramform.LightwaterisarelativelycommonlifedecorativepaperlabviewmainlythroughthePCinterfacetodesignalightwatersystemthroughserialcommunicationachieveditsregularlightoff,bringsomeviewing.Keywords:VirtualInstrument,PC,serialcommunications,waterlights目录TOC\h\z\u\t"标题1,2,标题2,3,标题3,4,标题,1"1设计任务12系统方案选择12.1整体设计12.2通信协议12.3下位机设计方案22.4上位机设计方案23下位机设计33.1硬件设计3单片机串口发送数据单元43.2软件设计4跑马灯程序设计5串口发送数据程序设计54上位机设计64.1前面板设计64.2后面板设计75系统调试86结论97总结10参考文献11附录12.1设计任务1.通过RS232接口进行数据采集。通过RS232接口实现上位机〔PC〕与下位机〔单片机〕之间的数据通讯。2.利用上位机实时显示数据。对于界面数据的显示,主要由模拟的LED灯实现。2系统方案选择2.1整体设计采用单片机串口实现单片机流水灯的运行状态对上位机的发送,并且由上位机接受并且实现状态的显示,使下位机流水灯的运行状态能够直观的在LABVIEW中实现。下位机由单片机通过串口发送PC机,PC机接受信号并且显示到界面。2.2通信协议串口是计算机上一种非常通用的设备通信协议,串口通信协议也可以用于获取远程采集设备的数据,串行通信是计算机和外部设备进行数据交换的重要渠道,由于其成本低,性能稳定并遵循统一的标准,因而在工程中被广泛应用。所谓通信协议是指通信双方的一种约定。约定包括对数据格式、同步方式、传送速度、传送步骤、检纠错方式以与控制字符定义等问题做出统一规定,通信双方必须共同遵守。因此,也叫做通信控制规程,或称传输控制规程。目前较为常用的串口有9针串口和25针串口,通信距离较近时,可以用电缆线直接连接标准RS232端口,若距离较远,需附加调制解调器。RS-232是美国电子工业协会正式公布的串行总线标准,也是目前最常用的串行接口标准,用来实现计算机与计算机之间、计算机与外设之间的数据通讯。RS-232串行接口总线适用于:设备之间的通讯距离不大于15m,传输速率最大为20kBps,RS-232协议以-5V~-15V表示逻辑1,以+5V~15V表示逻辑0。AT89C52单片机具有一个异步串行收发模块USART,其主要特点如下:支持8和9位数据位,1位停止位的串行数据帧结构;由硬件支持的奇偶校验位发生和校验;二个完全独立的中断,TX发送完成RX接收完成;支持多机通信模式;支持倍速异步通信模式,典型的串口用于ASCII码字符的传输。通信使用3根线完成:地线,发送,接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据,其他线用于握手,但是不是必须的。这个系统只是初步采集,自己接触通信接口也不多,所以直接使用比较简单的通讯接口RS232通讯接口,此接口性能完全可以满足此次设计的数据传输要求,所以直接选择RS232通讯接口。2.3下位机设计方案由ATC89C52最小系统和8个流水灯组成。ATC89C52单片机是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,具有邓杜的内部资源:4kb闪存、128BRAM、32根I/O口线、2个16位定时器/计数器、5个向量两级中断结构、2个全双工的串行口。具有4.25-5.50V的电压工作X围和0-24MHz的工作频率,使用ATM89C52单片机时无须外扩存储器。因此控制流水灯就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机系统。2.4上位机设计方案对于labview处理主要包括前后面板的设计,包括三部分:参数设置部分、命令控制部分与显示部分。其中参数设置主要包括通讯口、波特率、数据位、校验位、停止位与接收周期的设置;命令控制主要包括启停数据接收、显示数据清空与退出运行等;显示界面主要包括接收数据显示、接收数据个数显示、当前下位机流水灯状态实时显示等。上位机接受下位机传送的数据,通过设计前面板以与框图程序的编写,将模拟的跑马灯显示在上位机的前面板上。3下位机设计3.1硬件设计STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。本次课程设计下位机使用单片机STC89C52控制流水灯,其硬件原理图如下:图3-1STC89C52控制流水灯电路3.1.1单片机串口发送数据单元单片机通过串口向上位机发送数据,如图3-2所示为串口连接电路:图3-2所示为串口连接电路3.2软件设计图3-3下位机软件设计流程图软件程序见附录3.2.1跑马灯程序设计.流水灯点亮顺序表:.UcharcodeLED[]={0x00,0x18,0x3c,0x7e,0xff,0xbd,0xdb,0xe7};.数据发送程序: for<i=0;i<7;i++>{P0=LED[i]; fs<LED[i]>;Delay<1000>; }for<i=7;i>0;i-->{P0=LED[i]; fs<LED[i]>;Delay<1000>; }.3.2.2串口发送数据程序设计.串口初始化子函数:voidCom_Init<void>{TMOD=0x20;PCON=0x00;SCON=0x50;TH1=0xFd;TL1=0xFd;TR1=1;}数据发送子函数:voidfs<charp>{SBUF=p;while<!TI>TI=0;...4上位机设计对于labview上位机主要包括前后面板的设计,包括三部分:参数设置部分、命令控制部分与显示部分。其中参数设置主要包括通讯口、波特率、数据位、校验位、停止位与接收周期的设置;命令控制主要包括启停数据接收、显示数据清空与退出运行等;显示界面主要包括接收数据显示、接收数据个数显示、当前下位机流水灯状态实时显示等。4.1前面板设计图4-1上位机前面板设计4.2后面板设计程序面板设计如下:图4-2程序设计面板5系统调试将下位机程序下载到单片机并使用串口调试助手对数据通信进行检测,无误后对上位机进行设计。运行结果如下:图5-1串口调试通过串口程序助手看以查看下位机发送数据是否正常,检查下位机的好坏,避免出现问题找不出是上位机还是下位机的因素。然后通过下位机测试上位机的接收情况、以与程序正确与否。6结论点击labview发送按钮进行数据的发送和流水灯演示,点击清空按钮清空数据接收显示区的数字,点击停止按钮停止数据的发送。可自行设置发送周期、波特率等的设置。下位机发送跑马灯的状态数据,上位机接收显示。前面板的接收到数据后,如下图所示:图6-1前面板显示图7总结经过这次虚拟仪器课程设计,是我对于单片机又了进一步的复习,对labview与上下位机之间的通信都有了进一步的认识,尤其是上下位机之间的通信。一个周的课设,也对LabVIEW又有了深一步的了解,LabVIEW入门很容易,如果要深入做下去,就必须懂得各方面的知识。这是一门实践性很强的课,很多知识是从实验中学来的,自己还觉的不错,但真到实际做东西的时候,就会觉得困难重重,这时再去思考一遍,便有了对知识的更深层次的理解。学以促用,用以促学,我们感觉这也是这门课教给我们的重要知识,在整个设计中我学会了在复杂的问题面前怎样去分析,找到问题的关键所在,而且认识到这种能力的重要性。这期间我们带着问题学习才能学到真正的知识。在整个设计中我学会了在复杂的问题面前怎样去分析,找到问题的关键所在,而且认识到这种能力的重要性。在这次虚拟仪器课程设计过程中,不仅巩固了上课所学的理论知识,也对labview有了更深入的了解和更熟练的操作,最重要的是学会了一种认真的态度,通过几天的不断研究不断改进,做出了自己的流水灯程序并且能够按要求正确的运行,经过诸多坎坷之后得到了成功的喜悦。参考文献[1]江建军,孙彪.LabVIEW程序设计教程[M].电子工业,2012.1[2]彭倩.虚拟仪器实验指导书[M].XX科技大学,2012附录硬件原理图和LabVIEW框图程序2.程序./****************************************虚拟仪器课程设计:流水灯上位机下位机通信*****************************************/#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint/****************************流水灯点亮顺序表*****************************/ucharcodeLED[]={0x00,0x18,0x3c,0x7e,0xff,0xbd,0xdb,0xe7};/****************************串口初始化子函数*****************************/voidCom_Init<void>{TMOD=0x20;PCON=0x00;SCON=0x50;TH1=0xFd;TL1=0xFd;TR1=1;}/****************************串口数据发送子函数*****************************/voidfs<charp>{SBUF=p;while<!TI>TI=0;}/****************************延时子函数*****************************/voidDelay<uintx>{uchari;while<x-->for<i=0;i<1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论