基于LabVIEW的PC机与单片机串口通信
基于LABVIEW的串口通信实验
![基于LABVIEW的串口通信实验](https://img.taocdn.com/s3/m/9bcd03e8aeaad1f346933f21.png)
基于LABVIEW的串口通信实验一、实验目的1.了解LabVIEW串口通信基本方法2.通过LabVIEW串口获取数字温度传感器的数据二、实验器材1.计算机一台2.LabVIEW8.20软件一套3.串口线一根4.虚拟仪器实验平台一台5.分布式温度采集模块一块6.传感器控制模块一块三、实验原理串行通信是工业现场仪器或设备常用的通信方式,它是将一条信号的各位数据按顺序逐位传送。
计算机串行通信(简称串口)采用RS232协议,允许一个发送设备连接到一个接收设备以传送数据,最大速率为115200bps。
计算机串行口采用Intel8250异步串行通信组件构成,通常以COM1~COM4来表示。
bView串口节点LabView中提供了已封装好的串口通信节点,它们位于函数->数据通信->协议->串口。
这里主要介绍程序中使用到的串口配置、串口读取、串口写入和串口关闭,其他串口相关的节点使用方法查询LabView帮助。
(1)串口配置在进行串口通信时,首先要对串口进行初始化和配置。
这可以由VISA配置串口节点来完成,串口配置节点如下图所示。
使用该节点可以设置串口的VISA资源名称、波特率、数据位、校验位、超时时间、终止符以及流控制等参数。
VISA资源名称控件用于规定对VISA会话句柄开放的资源,并维持会话句柄和类。
VISA 会话句柄是VISA使用的唯一逻辑标识符,用于与资源进行通信。
VISA会话句柄由VISA 资源名称输入控件保持,用户不可见。
VISA资源名称输出是VISA函数中输出的VISA资源名称的副本。
通过将资源名称输出或输入函数和VI,并链接函数和VI,从而简化数据流编程。
这与文件I/O函数使用的文件引用句柄输出相似。
(2)串口写入串口写入是将写入缓冲区的数据写入VISA资源名称指定的设备或接口,可以选择同步或异步。
该操作仅当传输结束后才返回。
VISA写入的节点图标及端口定义如下图所示。
其中写入缓冲区包含要写入设备的数据。
基于labview的计算机与单片机的通信系统设计
![基于labview的计算机与单片机的通信系统设计](https://img.taocdn.com/s3/m/b421af9327d3240c8547ef4e.png)
www�ele169�com | 79应用技术0 引言在计算机分布测控系统中,数据的收集和分析分别是由下位机和上位机实现。
由于单片机成本较低且功能强大,被广泛的运用到分布测控系统中,因此,一般情况下单片机都被作为分布测控系统的下位机,同时,由于计算机具有很好的人机交互功能和数据处理功能,所以被作为分布测控系统的上位机。
而上位机与下位机,即:计算机和单片机,两者之间的数据传输通常是采用串口通信的模式,虽然其传输速度慢,但因其成本低、运行可靠等特点,仍然是数据通信的主流模式。
目前,针对串行通信程序的开发,主要采用的是VC++、VB、VF 等语言进行编写,但这些以文本语言编写为主的串口通信程序较为复杂、花费时间较长。
同时,在实现串口通信的过程中,存在一个问题,就是在发送方与接收方信息传输的过程中如何保持一致性。
虽然串口能够将所收到的数据信息进行缓存,但受到缓存容量的限制,当缓存装满后,收到的数据就会溢出,导致数据丢失。
LabVIEW 是一款以数据流为基础的图形化编程软件,有软件与硬件两种握手协议,通过握手,信息发送方与接收方就能在缓存即将存满时,进行相互通报,这样发送方就能及时的停止数据的传送,直到接收方清空缓存并做好接收新数据的准备后,再次发送消息,这样能够有效解决上下位机之间通信时序冲突问题,且在人机交互过程中具有一定的优势。
因此,利用 LabVIEW 开发计算机与单片机的通信系统不失为一种有效方案。
1 基于LabVIEW 的计算机与单片机的通信系统硬件设计计算机与外部仪器设备连接比较常见的接口主要有三种:串口、并口及USB 接口,其中,USB 接口目前成为计算机的标准接口。
因此,在本论文的设计中,采用USB 接口转串口的方式来实现计算机与单片机之间的数据通信,即:将单片机的串口经过USB 转芯片后,变成USB 接口。
基于此,本论文设计的计算机与单片机的线路结构如图1所示。
图1 计算机与单片机通信系统的线路结构图由图可知,通信系统硬件主要由四个部分组成:计算机(上位机,实现发送通信数据和人机交互功能)、单片机(下位机,实现串口数据接口功能)、USB 接口、CH340转换芯片(USB 转接芯片,实现USB 转串口功能)。
基于LabVIEW的MCU—PC串行通信的设计
![基于LabVIEW的MCU—PC串行通信的设计](https://img.taocdn.com/s3/m/54ef4f6827d3240c8447efad.png)
基于LabVIEW的MCU—PC串行通信的设计罗杰电气工程及其自动化专业摘要用单片机小系统作前端信号采集系统是工程设计中经常采用的一种设计方案。
本文介绍如何利用LabVIEW中的串行通信函数Serial Port Init.vi、Serial Port Read.vi 以及Serial Port Write.vi等来实现单片机MCS-51和PC机的串行通信。
关键词串行通信,波特率,LabVIEW,子VI,虚拟仪器1 引言传统的测试系统由模拟仪表或数字仪表组成,难以适应目前科技开发及工业领域提出的快速、准确、高精度测量的需要。
目前,测试技术和计算机技术结合日益紧密,利用计算机数据处理速度高、控制能力强等特点,使测试系统在数据采集、传送、处理、显示及存储等方面突破以往单一的仪器仪表的限制,从而形成了新一代测试系统———虚拟仪器。
虚拟仪器是基于通用计算机的电子测控仪器,代表了现代测控仪器发展的方向,目前得到了广泛的应用。
它让使用者能以一般的计算机加上一组软件和经济的硬件构成的仪器控制系统,使用者在操作这台计算机时,就象是在操作一台由他自己设计的专用传统仪器。
虚拟仪器是以软件为核心,利用计算机超强的运算、显示及连接的能力,建立起功能强且弹性大的仪控设备。
虚拟仪器是当今测试系统发展的普遍趋势,其核心技术思想为“软件即仪器”。
目前的虚拟仪器软件开发工具有如下两类:文本式编程语言,如Visual C++,Visual Basic,LabWindows/CVI等;图形化编程语言,如LabVIEW,HPVEE等。
LabVIEW(Laboratory Virtual Instrument Engineering Workbench,实验室虚拟仪器工程平台)是美国国家仪器公司(National Instrument Company)推出的一种基于G语言(Graphics Language,图形化编程语言)的虚拟仪器软件开发工具,是目前国际上最先进的虚拟仪器控制软件。
labview实现PC与单片机之间的串口通信
![labview实现PC与单片机之间的串口通信](https://img.taocdn.com/s3/m/d5964a9a80eb6294dd886cc8.png)
labview实现PC与单片机之间的串口通信使用Proteus 进行单片机仿真,仿真硬件连接,串口通信部分使用keil 与labview 编写程序,实现:PC 通过串行口将数字(00,01,02,03...,FF,十六进制)发送给单片机,单片机收到后回传这个数字,PC 接收到回传数据后显示出来,若发送的数据和接收到的数据相等,则串行通信正确,否则有错误。
启始符是数字00,结束符是数字FF。
实验中注意PC 的串口名compim 与VISA 资源名称要相同,compim 中的参数值要调对,最好不要用虚拟的串口。
keil 中的程序为:# pragma db code# include# define uchar unsigned charvoid rece(void);void init(void);uchar re[17];void main(void){uchar temp;init();do{while(RI==0);temp=SBUF;if(temp==0x00){rece();}elsebreak;}while(1);}void init(void){TMOD=0x20;//定时器1--方式2PCON=0x80;//电源控制SCON=0x50;//方式1TL1=0xF3;TH1=0xF3;//22.1184MHz 晶振,波特率为4800 0xf396000xfa19200 0xfdTR1=1;}void rece(void){chari;i=0;do{while(RI==0);re[i]=SBUF;RI=0;SBUF=re[i];while(TI==0);TI=0;i++;}while(re[i-1]!=255);}labview 的前面板跟程序框图以及Proteus 图为tips:感谢大家的阅读,本文由我司收集整编。
仅供参阅!。
Labview实现PC机与C8051F320串口通信
![Labview实现PC机与C8051F320串口通信](https://img.taocdn.com/s3/m/119213e5998fcc22bcd10dba.png)
7.4 PC机与单片机串口通信编程7.4.1单片机电路介绍为有助于大家了解PC机与单片机的通信过程,特别设计了单片机电路系统以及相关的单片机软件资源。
实验板选用Silicon Lab的C8051F320单片机,该单片机除了具有一般单片机的常用资源外,最大特点是自带有USB收发器和控制处理器,可以方便的实现USB通信开发。
其主要功能部件及特点:1.模拟外设 10位的ADC(±1LSB INL):其最大可编程转换速率可达200kbps,可多达17个外部输入,可编程为单端输入或差分输入,内置一个温度传感器(±3℃);2个模拟比较器;2.4V的内部电压基准;精确的Vdd监视器和欠压检测器。
B功能控制模块满足USB2.0协议;可在全速(12 Mbps)或低速(1.5 Mbps)下运行;集成有一个时钟恢复源,对于全速或低速传输均可不用外部晶振;支持8个灵活通用的端点;内置一个1K的USB专用缓冲存储器;集成了一个USB接收器,不需要外部电阻。
3.片内调试模块片内调试电路提供全速、非侵入式的在系统调试(不需仿真器);支持端点、单步、观察点、堆栈监视器;可以观察/修改存储器和寄存器;比使用仿真芯片、目标仿真头和仿真插座的仿真系统有更好的性能。
4.工作温度范围:0~70℃5.高速8051微控制器内核采用流水线指令结构,其70%的指令的执行时间为一个或两个系统时钟周期;速度可达25 MIPS(时钟频率为25MHz时)。
6.存储器 1280字节的内部数据RAM(1K+256);16K字节的可以在系统编程的Flash闪速存储器。
7.数字外设 25个字节宽的端点I/O;所有口线均耐5V电压;可同时使用UART串口、硬件SMBusTM、SPITM;带有4个可编程的16位计数器/定时器阵列;带有5个捕捉/比较模块的通用16位计数器/定时器。
8.时钟源内部晶振,精度为0.25;支持所有USB和UART模式;外部晶振器:晶体、RC、C或外部时钟;内置一个针对USB控制器的片上时钟乘法器。
基于LabVIEW的PC机与单片机串口通信
![基于LabVIEW的PC机与单片机串口通信](https://img.taocdn.com/s3/m/102ee31c3c1ec5da50e2706a.png)
系主任(或责任教师)签名:______________年 月日
摘 要
介绍一种基于LabVIEW 7.0语言的AVR AT90系列单片机与PC机的串口通信技术,在体温检测中得到应用,并取得良好效果。
关键词: LabVIEW 7.0语言;AVR AT90系列中一片机;PC机;串口通信技术
Abstract:We introducethe application of serial portcommunication technology based on PC machinewith LabVIEW 7.0 language and AVR AT90series SCM in body temperature examination.And it has good effect.
确定定时器1的工作方式——写TMOD寄存器。
计算定时器1的初值——装载TH1、TL1。
启动定时器1——写TCON中的TR1位。
确定串口的控制——写SCON。
使用串口中断方式时,开CPU和中断源——写IE寄存器。
基于labview的PC与单片机的串口通信的循环计数设计方法设计
![基于labview的PC与单片机的串口通信的循环计数设计方法设计](https://img.taocdn.com/s3/m/d4c4dcc6998fcc22bdd10d17.png)
毕 业 设 计(论 文)题 目:(三号楷体)摘 要虚拟仪器是一种利用计算机技术替代传统仪器的全新概念仪器,本质就是利用电脑优越的硬件显示性能替代传统仪器达不到的显示效果,用多种不同的方式显示和存储采集的信号,根据电脑先进的硬件处理设备来处理和分析采集回来的数据,从而实现不同调试功能的PC虚拟仪器系统。
本毕设依据LabView虚拟仪器实现上位机与下位机之间的高速通讯,并根据LABVIEW中的VISA功能,将其应用于单片机串口通信中,通过Labview发送循环计数的初值,单片机接收并显示在数码管上,从接收到的初值开始计数,同时单片机返回循环计数结果,最后在Labview面板内容上动态显示循环计数值。
虚拟仪器软件LabVIEW的问世,大大提高了开发效率,减编写程序的难度,缩短了研发周期,从而减少研发成本,为我们实际项目研发提高了效率,带来了巨大财富。
关键词:LabVIEW; STC51单片机;串口通讯;数码管显示;PC and the microcontroller serial communication and indicating lamp control based on LabVIEWABSTRACTVirtual instrument is a kind of using computer technology to replace traditional instrument instrument of new concept, essence is the use of alternatives to traditional function of superior computer display instrument reach display effect, output measurement results in many different ways, and use the computer a powerful software function implementation evaluation of signal data, analysis and processing, complete all kinds of test functions of a computer instrument system.By using LabView virtual instrument was introduced in this paper the tell communication between upper machine and lower machine, using the LabView function, applied to the single chip microcomputer serial port communication, sent by LabView initial value of the cycle count, microcontroller to receive and display on the digital tube, starting from the received initial count, microcontroller return cycle count results at the same time, the content of the LabView panel on dynamic display cycle count.Virtual instrument software LabVIEW, greatly improves the development efficiency, reduce the difficulty of the program, shorten the development cycle, reducing development costs, for our practical project research and development efficiency, brought huge wealth.Keywords:Labview; STC51 microcontroller; A serial port communication; Digital tube display目录第一章绪论1.1 课题的背景和意义 (6)1.2 课题实现内容 (7)第二章软硬件介绍2.1 虚拟仪器与LabVIEW2.2 虚拟仪器的概述 (8)2.2.1 虚拟仪器方案的组成 (9)2.2.2 虚拟仪器方案的优势 (9)2.2.3 虚拟仪器和传统仪器的区别 (10)2.2.4 虚拟仪器的发展与现状 (11)2.2.4 虚拟仪器的应用 (11)2.3 LabVIEW简介 (35)2.4 LabVIEW基本特点 (35)2.5 STC89C51RC 单片机介绍 (35)2.6 单片机编程环境KEIL和下载软件STC-ISP介绍 (35)第三章总体设计方案3.1系统总体方案设计 (18)3.2系统硬件的选择 (18)3.2.1核心控制器选择 (18)3.2.2上位机编程软件的选择 (19)3.2.3显示系统选择 (19)第四章LabVIEW上位机介绍4.1 上位机程序内容 (20)4.2 上位机框图 (20)4.2.1 上位机前面板框图 (20)4.2.2 上位机创建虚拟仪器过程 (21)4.2.3 上位机程序流程图 (21)4.3 上位机Labview串口通讯的实现 (22)第五章单片机下位机设计5.1 下位机流程图 (28)5.2 设计目的和实现方案 (29)5.2.1 设计目的 (29)5.2.2 实现方案 (29)5.3 系统硬件结构 (30)5.3.1 系统硬件电路 (30)5.3.2 主控系统 (30)5.3.3 复位电路 (30)5.3.4 串口电路 (31)5.3.5 震荡电路 (31)5.3.6 LEd电路 (32)5.3.7 数码管显示电路 (33)5.5 串行通信 (34)5.4.1 串行通信的概念和特点 (35)5.4.2 串行通信的分类 (35)5.4.3 串行通信的工作模式 (36)5.4.4 单片机内部串口配置 (38)第六章系统整体调试联机调试 (40)致谢 (42)参考文献 (44)附录 (47)附录1 原理图 (47)附录2 单片机才程序 (47)第一章绪论1.1课题的背景和意义Labview是一种编译软件,和visual C++和KEIL累的的开发环境,他是由美国国家仪器(NI)公司研制开发的,但是它与其他高低端计算机语言的明显不同是:Labview使用图形化语言编辑程序框图,其以框图的形式通俗易懂和中国的象形文字有异曲同工之妙,用户只需要通过前面板即可操纵程序;其他语言如C 语言、C++、C#、VB等语言都学起来要花费大量的时间和精力,并且不容易读懂。
运用LabVIEW实现单片机MCS-51和PC机的串行通讯
![运用LabVIEW实现单片机MCS-51和PC机的串行通讯](https://img.taocdn.com/s3/m/0014cc2a4b35eefdc8d333d1.png)
3662001嵌入式系统覆单片机国际学术交流会论文集——————————————~————————————————————————~CI-RTI;清TI标志,允许再次发送RE,rEND4.2PC机部分LabVIEW串口通讯程序波特率为9600,禁止软、硬件握手・无奇偶校验.数据位为8位,停止位设置为。
,有1位停止位。
前台面板如图5所示。
方框图如图6所示。
田5前台面板围6串口初始化方框图串El初始化方框图中需要对SerialPortInit.vi的~些参数进行设置。
双击SerialPortlnit.vi可以看到参数设置对话框。
串El读的方框图如图7所示,一方面将串El读出的一帧字符信息显示在前面板,另一方面将所有从串口读出的信息转换为数据,并以二维数组的形式显示在前面板。
5结束语I,abVIEW是一种简单易学的图形化高级语言.利用其开发产品可以大大提高开发效率。
本文详细介绍了运用LabVIEW从MCS-51单片机到PC机的串行通讯。
该程序在本文作者所开发的近红外光谱肌血氧仪中运行良好。
同样运用SerialPortWrite.yi也可以实现从PC机到单片机的串行通讯。
第四篇网络、通信与数据传送367———————————————————————————————————————————————————————————————————————一——————————————————————一圈7串口读的方框图参考文献1运用VisualBasic实现PC与89C51单片机之间的串行通讯.计算机自动测量与控制.1999(2)2VB5.0实现与单片机串行通信的程序设计.微计算机信息,1999(3)3用VisualBasic实现工控机与单片机间的通信.电子产品维修与制作.1999(4)4用vc++5.0实现PS2003与PC机的串口通信.电子技术,1999(7)5李朝青.单片机原理以及接口技术.北京:北京航空航天大学出版社,19946王福瑞,等.单片微机测控系统设计大全.北京:北京航空航天大学出版社,1998SerialCommunicationbetweenMCS-51andPCUsingLabVIEWXiangShaoxiaLiGangCollegeofPrecisionInstrument&Opto-ElectronicEngineering,TianjinUniversityTianjin,300072,P.R.ChinaAbstractLabVIEWisanpopulargraphicallanguagethatiswelcometoengineer.Acquisitiondatausingsystem(MCS-51)withmicrocomputersystemisalsoanpopularmethod.SerialcommunicationmicrocompulerPCusingthefunctionsinLabVlEWsuchasSerialPortInit.vi,SerialPortWrite.viandSerialPortRead・vietc・isintroducedinthispaper.Wordsserialcommunication,subVI,baudrateKey。
基于LabVIEW的计算机与单片机串口通信系统
![基于LabVIEW的计算机与单片机串口通信系统](https://img.taocdn.com/s3/m/dea1a62c4b35eefdc8d3337c.png)
te h ol gy f r c n o o di t bu d t st s s m i t mai t ea i t s fi 1 . L bVl W— as d c m ut r s ri te e y te s he ns r m n hi ed a E b e op e s ri po and s e al rt eri co muni ati n s te us ng al m c o ys m i co ute MCS po rf dat pro mp r 5l we ul a ces ng si c pa li e an t e s n se i c m ni a o p t o1 s th t o pl x a k a e . a bi ti s d he xi ti g r al o mu c ti n ro oc . o a c m e t s e si r K w d vi tu l n t um nt: La Vl W: M 51: s i c m ni ti p t c ey or s r a i s r e b E CS er al o mu ca on ro o ol Au h ’ s d e s i h R t or a dr s R z ao adi a d T U v rsi y, Ri h o. S an o , Ch n 2 6 6 0 n V ni e t za h d ng i a 7 82
刘 文 君
日照广播 电视大学 山东 日照
2 62 786
摘 要 计 算机被 广泛 运用 到测 试领域 ,虚 拟仪 器技术 的分 布式 测试 系统 是这 一领域 的主 流 。基于L b IW aV E 的计算 机 串 口与M S 1 口通信 系统利 用计 算机 强大 的数据 处理 功能和 现有 的 串 口通信 协议 ,从 而使 复杂 的工作 简 易化 。 C5 串 关键 词 虚拟 仪器 ;Lb IW C 5 ;串 口通信 协议 a VE ;M S 1 中图分 类号 :T 315 P 1. 2 文献 标识 码 :B 文章 编号 : 17—8 X 2 1)60 1~ 2 6 14 9 (02 0— l4 O
基于Labview的计算机与单片机的通信设计与实现
![基于Labview的计算机与单片机的通信设计与实现](https://img.taocdn.com/s3/m/dad4be9bf705cc175527096c.png)
文中所设计的通信硬件主要包括 <部分,图 4为
收稿日期:-34563763- 稿件编号:-3453733.
计 算 机 和 单 片 机 的 线 路 设 计 结 构 ,计 算 机 属 于 上 位
基金项目:-348年陕西省教育厅科研项目(489:3;<;)
作者简介:刘 璐(4;5-—),男,陕西咸阳人,硕士研究生,讲师。研究方向:计算机软件。
晶的显示时序冲突问题,具有一定的工程实际使用价值。
关键词:?@AB)#C;计算机;单片机;通信
中图分类号:D2;;
文献标识码:E
文章编号:4.8<6.-1.(-345)-16333863<
"#$$%&'()*'#&+,-'.&)&+'$/0,$,&*)*'#(#$/%*,2)&+-'&.0,(3'/(#$/%*,2
需求,所以分布式系统逐渐备受重视。在分布式系 境,其被广泛应用到控制领域和检测方面。因为程
统数据收集过程中主要是通过下位机实现,将收集 序属于图形化框图的形式,在人机交互过程中具有
数 据 实 现 进 一 步 分 析 及 处 理 是 通 过 上 位 机 实 现 。 =4> 一定的优势,并且其逐渐成为上位机的编程软件 。 =1>
首 先 对 系 统 硬 件 结 构 进 行 全 面 的 分 析 ,之 后 实 现 其 软 件 设 计 。 软 件 主 要 包 括 通 信 协 议 、单 片 机 程
序、?@AB)#C程序的设计。最后对系统的运行进行调试和测试,通过测试结果表示,基于 ?@AB)#C的
PC机Labview程序与小车通讯协议
![PC机Labview程序与小车通讯协议](https://img.taocdn.com/s3/m/9607268ecc22bcd126ff0ceb.png)
PC机Labview程序与小车通讯协议
一、方式::PC机Labview程序通过无线串口与小车通讯。
二、系统串口协议内容:
1、当PC机接到小车单片机发送的信号“1”(数据类型为unsigned char)时,PC机便开始发送一帧数据,此时PC机的Labview程序一次性给小车发送四个数据,发送完毕后直到小车下一次发送回来的信号“1”时才再发数据。
例如发送的数据为:0 35 70 -48
分别代表:前进/后退油门刹车方向盘转角(注意发送的顺序不能变)
2、数据说明如下:
前进/后退(DirectionFlag):0表示前进,1表示后退(数据类型为unsigned
char型),只有两种状态。
油门(ThrottleData):数据范围0~127,0表示小车速度为0,127表
示速度为 3.0m/s,线性递增(数据类型为
unsigned char型,共128档。
刹车(BrakeData):数据范围0~127,0表示未踩刹车板,小车速
度为当前速度,127表示刹车板踩到底,小车
停止(数据类型为unsigned char型)。
方向盘(AngleData):数据范围-60~60,-60表示小车左转60度,60
表示右转60度,即左负右正,0表示正中间,
小车未转向(数据类型为char型)。
3、系统框图
说明:
为了保证数据能够有条不紊地在51单片机、PC机、飞思卡尔单片机间正常地通讯,必须有相应的协调信号,统一采用发送信号“1”来识别是否发送一帧数据。
基于LabVIEW的计算机与单片机串口通信系统
![基于LabVIEW的计算机与单片机串口通信系统](https://img.taocdn.com/s3/m/81102fdba0116c175e0e4825.png)
基于LabVIEW的计算机与单片机串口通信系统作者:刘文君来源:《中国教育技术装备》2012年第06期摘要计算机被广泛运用到测试领域,虚拟仪器技术的分布式测试系统是这一领域的主流。
基于LabVIEW的计算机串口与MCS51串口通信系统利用计算机强大的数据处理功能和现有的串口通信协议,从而使复杂的工作简易化。
关键词虚拟仪器;LabVIEW;MCS51;串口通信协议中图分类号:TP311.52 文献标识码:B 文章编号:1671-489X(2012)06-0114-02LabVIEW-based Computer and Microcontroller Serial Communication System Design//Liu WenjunAbstract The computer has been widely applied to the test area, based on virtual instrument technology for distributed test system is the mainstream in this field. LabVIEW-based computer serial port and serial communication system using computer MCS51 powerful data processing capabilities and the existing serial communication protocol, so that complex task easier.Key words virtual instrument; LabVIEW; MCS51; serial communication protocol Author’s address Rizhao Radio and TV University, Rizhao, Shandong, China 276826通讯即是不同的设备通过线路互相交换数据,其主要目的在于将数据从某端传送到另一端,实现数据的交换。
基于LabVIEW的PC机与单片机的串行通信研究
![基于LabVIEW的PC机与单片机的串行通信研究](https://img.taocdn.com/s3/m/fa4c90641eb91a37f1115c13.png)
用程序 采用L b E 80 发 。硬件 数据 采集器 采 aVIW .开 样 获得 的数 据 以串行 通信 的方 式发送 给P 机 ,P C C 机上 的软件 通 过RS 2 2 口模 块读 入波 形 数据 , - 3接
要 。本文结合断路器选相合闸技术介绍P 机通过 C
收稿 日期 :0 8 0 3 2 0 -1- 1
技术 研 究 ・ 串行通信
基于L b I a VE W的P : C 机与单 片机 的 串行通信研究
刘春 阳 贾兴建
( 北工 业 大 学 电 气与 自动 化 学院 ,天 津 3 0 0 河 01 ) 5
摘 要: 本文介 绍 了P机 与基于5 单 片机 的断路 器选 相合 闸的 串行 通信 程序 。给 出 了具体 的实现 方 法及接 c 1
片机 信 号
执 行 器
负 载
逻 辑 电平 使 用 的是 负逻 辑 ,即 逻辑 0 电压 范 围 的 是 +3 V~+1 V,而 逻 辑 1 电压 范 围是 一3 5 的 V~一
1V。在 MC - l 5 S 5 单片机 的 内部有 一个 全双 工 的异
图2 执 行 器 电路 图
步 串 口,它 的输 入 输 出为 T 逻 辑 电平 ,为 了解 TL
决这 一 矛盾 ,PC 与 8 C5 单 片机 进行 通 信 必 须 机 9 2 进行 T — 2 2 TL RS 3 电平 的 转换 。MAX2 2 片采 3芯 用单 一 的 + V供 电 ,外 围 电路 简单 、运 行 可靠 , 5
缺点 是 传送 距 离 短 。在 断 路 器 瞬动 特 性 检 测技 术
0 引言
在 断路器 瞬动 特性 检 测 技 术 中 ,为 了 产生 试 验所 需的瞬动调 试 电流 ,需要 消除谐 波 ,方法 是合 闸相 角等于 负 载 回路 的功 率 因数角 时合 闸川。这 就
教你如何使用Labview与单片机通信(串口)
![教你如何使用Labview与单片机通信(串口)](https://img.taocdn.com/s3/m/cdb2a8d95022aaea998f0f02.png)
第 13 章 LabVIEW 串口通信程序设计
环结构的条件端子 设置为“真时停止(Stop if True)” ,则不需要添加非(Not)函数。 (11)添加两个条件结构:编程(Programming)→结构(Structures)→ 条件结构(Case
Structure)。添加理由:发送字符时,需要单击按钮“发送字符”,因此需要判断是否单击了 发送按钮;接收数据时,需要判断串口接收缓冲区的数据个数是否不为 0。
(2)添加 4 个数值常量:编程(Programming)→数值(Numeric)→ 数值常量(数值常量 (Numeric Constant),值分别为 9600(波特率)、8(数据位)、0(校验位,无)、1(停止位)。
(3)添加两个关闭串口函数:编程(Programming)→仪器 I/O(Instrument I/O)→串口 (Serial)→VISA 关闭(VISA Close)。
(2)将数值常量 9600、8、0、1 分别与串口配置(VISA Configure Serial Port)函数的输 入端口波特率(baud rate)、数据比特(data bits)、奇偶(parity)、停止位(stop bits)相连。
(3)将数值常量(值为 500)与等待下一个整数倍毫秒(Wait Until Next ms Multiple)函 数的输入端口毫秒倍数(millisecond multiple)相连。
第 13 章 LabVIEW串口通信程序设计
以 PC 作为上位机,以调制解调器(Modem)、串行打印机、各种监控模块、PLC、摄像 头云台、数控机床、单片机及智能设备等作为下位机广泛应用于测控领域。本章举几个典型 实例,详细介绍利用 LabVIEW 实现 PC 与各种下位机设备串口通信的程序设计方法。
基于 LabVIEW 的单片机与 PC 机串口通信显示系统设计
![基于 LabVIEW 的单片机与 PC 机串口通信显示系统设计](https://img.taocdn.com/s3/m/0f26cccc6e1aff00bed5b9f3f90f76c661374c1a.png)
基于 LabVIEW 的单片机与 PC 机串口通信显示系统设计刘松斌;王海星;马双;柳明【摘要】为了实现上位机与下位机通信,设计了基于 LabVIEW 的单片机与 PC 机串口通信显示系统。
系统的显示模块可直观地显示通信数据,并解决了串口通信与字符液晶显示时序冲突的问题。
本系统可作为 NI 系列板卡的显示模块,具有实际工程应用价值。
%In order to realize the communication between the host computer and slave ones,the LabVIEW-based MCU and PC serial communication display system was designed.The display module in the system can visually display the communication data so as to eradicate the timing conflict incurred by the serial communica-tion and character LCD display.The improved system can be used as a display module of NI series boards and it has applicable value.【期刊名称】《化工自动化及仪表》【年(卷),期】2015(000)007【总页数】3页(P806-808)【关键词】串口通信显示系统;LabVIEW;单片机;PC 机;液晶屏【作者】刘松斌;王海星;马双;柳明【作者单位】东北石油大学电气信息工程学院,黑龙江大庆 163318;东北石油大学电气信息工程学院,黑龙江大庆 163318;大庆油田第一采油厂仪表安装维修大队,黑龙江大庆 163453;大庆储运销售分公司葡北油库,黑龙江大庆 163000【正文语种】中文【中图分类】TH85随着工业的不断进步与发展,控制系统越来越复杂,处理的数据量也越来越大,但单片机等主控芯片的处理能力有限,难以满足控制的需求,因此分布式系统逐渐成为主流。
基于LabVIEW的PC机与单片机串口通信
![基于LabVIEW的PC机与单片机串口通信](https://img.taocdn.com/s3/m/102ee31c3c1ec5da50e2706a.png)
在LabVIEW 7.0中,对串行口进行控制的方式通常有两种:一是利用LabVIEW功能模块的lnstrument 1/0-﹥VISA子模块;二是直接利用LabVIEW功能模块lnstrument 1/0一>Serial子模块,该程序库中包含进行串行通信操作的一些功能模块这正符合本软件开发的需要
第二章 软件实现
2.1 业标准的图形化开发环境,它结合了图形化编程方式的高性能与灵活性以及专为测试测量与自动化控制应用设计的高端性能与配置功能,能为数据采集、仪器控制、测量分析与数据显示等各种应用提供必要的开发工具。因此,LabVIEW通过降低应用系统开发时间与项目筹建成本帮助科学家与工程师们提高工作效率。LabVIEW被广泛应用于各种行业中,包括汽车、半导体、航空航天、交通运输、高校实验室、电信、生物医药与电子等无论在哪个行业中,工程师与科学家们都可以使用LabVIEW创建功能强大的测试测量与自动化控制系统,在产品开发中进行快速原型创建与仿真工作。在产品生产过程中,工程师们也可以利用LabVIEW进行生产测试,监控各个产品生产过程。总之,LabVIEW可用于各行各业产品开发的阶段。由于LabVIEW能够为用户提供简明、直观、易用的图形编程方式,能够将繁琐复杂的语言编程简化成为以菜中提示方式选择功能,并且用线条将各种功能连接起来,十分省时简便。与传统的编程语言比较,LabVIEW图形编程方式能够节省85%以上的程序开发时间,其运行速度却几乎不受影响,体现出了极高的效率。使用虚拟仪器产品,用户可以根据实际生产需要重新构筑新的仪器系统。例如,用户可以将原有的带有RS232接口的仪器、VXI总线仪器以及GPIB仪器通过计算机,联接在一起,组成各种各样新的仪器系统,由计算机进行统一管理和操作[1,2]。
基于LABVIEW通过串口通讯控制51单片机的的IO口
![基于LABVIEW通过串口通讯控制51单片机的的IO口](https://img.taocdn.com/s3/m/f6ad4d2552ea551810a687db.png)
利用labview作上位机实现51单片机串口通讯控制灯的实验作者Second z.k. BEST工具(人机界面:LABVIEW 底层:51单片机编译器:Keil uVision4烧录器:STC-ISP)底层代码如下(利用开发板串口教程)/*********************************************************************** **************** 串口通信实验*实现现象:下载程序后打开串口调试助手,将波特率设置为4800,选择发送的数据就可以显示在串口助手上。
具体操作参考操作视频注意事项:无。
************************************************************************ ***************/#include "reg52.h" //此文件中定义了单片机的一些特殊功能寄存器#include <string.h>#include<ctype.h>typedef unsigned int u16; //对数据类型进行声明定义typedef unsigned char u8;/*********************************************************************** ********* 函数名 :UsartInit()* 函数功能 :设置串口* 输入 : 无* 输出: 无************************************************************************ *******/void UsartInit(){SCON=0X50; //设置为工作方式1TMOD=0X20; //设置计数器工作方式2PCON=0X80; //波特率加倍TH1=0XF3; //计数器初始值设置,注意波特率是4800的TL1=0XF3;ES=1; //打开接收中断EA=1; //打开总中断TR1=1; //打开计数器}/*********************************************************************** ********* 函数名 : main* 函数功能: 主函数* 输入 : 无* 输出 : 无************************************************************************ *******/void main(){UsartInit(); // 串口初始化while(1);}/*********************************************************************** ********* 函数名 : Usart() interrupt 4* 函数功能: 串口通信中断函数* 输入 : 无* 输出: 无************************************************************************ *******/void Usart() interrupt 4{u8 receiveData; //P0=0x00;receiveData=SBUF;//出去接收到的数据RI = 0;//清除接收中断标志位SBUF=receiveData;//将接收到的数据放入到发送寄存器while(!TI); //等待发送数据完成TI=0; //清除发送完成标志位P0=receiveData-’0’;//receiveData收到的数据类型是字符,}上位机前面板如图下所示通过改变数组2布尔(灯)的状态,来控制硬件底层的显示。
基于LabVIEW语言的PC机与单片机的串口通信
![基于LabVIEW语言的PC机与单片机的串口通信](https://img.taocdn.com/s3/m/7d44d4d9b9f3f90f76c61b55.png)
3 结果检测
该 程 序 经 实 际 运 行 证 明具 有 较 高 的运 行 速 度 和 测 量精 度 。在此 笔 者仅 给 出 了 f =1 2 H z 时 的前 面板 结 果显
延 时 等待 。延 时 时间 可视情 况 而定 ,只要 大于单 片 图 中横 轴 表示 时 间 ( m s ) , 纵轴 为实 测 送 给 主机 的时 间就 行 。 具体 执 行时 间 可 由 L a b V I E W 工具 的单 片机 的采 样 电压 值 ( 单位 : v ) 。因在 程 序代码 4中进 菜单栏下的 a d v a n c e d下 的 p r o f i l e来 确 定 程 序 运 行 时 入波 形 图的数 据 本身 已经 过绑 定处 理 ,故得 到 的为 我们 间 。若 不 加 以延 时程 序会 有 出错提 示 。
熟悉 的十进 制数据 。又因单片机发送数据一般为八位 ,
最后 , 显示部分 , 主要程序代码如图 2 所示 。根据需 为检 验数 据 的正确 性 ,本文 采 用另 一种 显 示方式 —— 表 要 进 行 图形及 表格 显 示 。为能 准确 计算 被 测信 号 的频率 格显 示 。表格 中的 数据 是用无 符 号 的八位 整形 表示 ,范
维普资讯
基于 L a b V I E W 语言 的 P C机与单片机 的 串 口通信
桂 玲 吴舒辞 向 诚( 中南林 学 院 电子信 息工 程学 院)
摘
要
设计 了一 种基 于 L a b V I E W 语言 的单 片机 与 P C机 的串 口
1 。 2 通信 模 块 的引 入 在L a b V I E w中, 对 串行 口进 行控 制 的方 式通 常有 两 种 :一 是 利 用 L a b V I E W 功能模块的 I n s t r u m e n t I / O一) V I S A子 模块 ;二 是 直接 利 用 L a b V I E W 功 能 模块 I n s t u— r m e n t I / O一) S e r i a l 子模 块 , 该 程 序库 中包 含进 行 串行通
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计任务书学生姓名:李晓宁郁金华彭亚斌吴冰专业班级 0882022 0882021指导教师:杨谊华工作单位:南昌航空大学题目:基于LabVIEW的PC机与单片机串口通信初始条件:要求对单片机课程知识有所了解,同时熟悉labview软件的运用,同时了解基本的串口通信原理。
指导教师签名:________________年月日系主任(或责任教师)签名:______________ 年月日摘要介绍一种基于LabVIEW 7.0语言的A VR AT90系列单片机与PC 机的串口通信技术,在体温检测中得到应用,并取得良好效果。
关键词: LabVIEW 7.0语言;A VR AT90系列中一片机;PC机;串口通信技术Abstract:We introduce the application of serial port communication technology based on PC machine with LabVIEW 7.0 language and A VR AT90 series SCM in body temperature examination.And it has good effect.Key words:LabVIEw 7.0 language;A VR AT90 series SCM;PC machine;Serial port communication technology目录第一章绪论 (1)第二章软件实现 (2)2.1 LabVIEW应用软件概述 (2)2.2 LabVIEW串口通信模块 (2)2.3 LabVIEW通信模块的属性 (3)2.4 串口通信程序结构 (3)第三章程序设计 (4)3.1 单片机通信的设计 (4)3.2 PC机通信的设计 (4)3.3 输入显示程序设计 (4)3.3.1 LED 显示流程图 (6)3.4 单片机收发程序 (7)3.5 PC机收发程序 (8)3.6 硬件连接 (9)第四章利用LabVIEW实现PC与单片机串口通信任务 (12)4.1 建立新VI程序 (12)4.2.程序前面板设计 (12)4.3.框图程序设计——添加函数与连线 (12)4.4.运行程序 (15)致谢 (16)参考文献 (17)第一章绪论在计算机分布式测控系统中,经常要利用串行通信方式进行数据通信。
它包括单片机和上位机之间、客户端和服务器之间以及客户端和客户端之间的通信,而单片机和上位机之间数据通信则是整个系统的基础。
串行通信是一种常用的数据传输方法,虽然它的传输速度慢,但由于它占用的通信线路少、成本低、容易实现等优点,在数据通信方式上仍占有重要地位。
目前,串口通信程序的开发,在Windows操作系统下一般用VB、VC、VF Delphi 等等许多高级语言编写。
当用VB、VC、VF,开发串行通信程序时,开发人员不得不面对非常烦琐的API函数编程;而Delphi没有自带的串口通信控件,在它的帮助文档里也没有提及串口通信,这也给编程人员带来许多不便,其他高级语言也是如此。
可见,用文本语言编串口通信程序较为复杂,花费的时间较长。
利用LabVIEW7.0开发PC机与单片机的串口通信程序是一种更为简捷的方法。
第二章软件实现2.1 LabVIEW应用软件概述LabVIEW是一个工业标准的图形化开发环境,它结合了图形化编程方式的高性能与灵活性以及专为测试测量与自动化控制应用设计的高端性能与配置功能,能为数据采集、仪器控制、测量分析与数据显示等各种应用提供必要的开发工具。
因此,LabVIEW通过降低应用系统开发时间与项目筹建成本帮助科学家与工程师们提高工作效率。
LabVIEW被广泛应用于各种行业中,包括汽车、半导体、航空航天、交通运输、高校实验室、电信、生物医药与电子等无论在哪个行业中,工程师与科学家们都可以使用LabVIEW创建功能强大的测试测量与自动化控制系统,在产品开发中进行快速原型创建与仿真工作。
在产品生产过程中,工程师们也可以利用LabVIEW进行生产测试,监控各个产品生产过程。
总之,LabVIEW可用于各行各业产品开发的阶段。
由于LabVIEW能够为用户提供简明、直观、易用的图形编程方式,能够将繁琐复杂的语言编程简化成为以菜中提示方式选择功能,并且用线条将各种功能连接起来,十分省时简便。
与传统的编程语言比较,LabVIEW图形编程方式能够节省85%以上的程序开发时间,其运行速度却几乎不受影响,体现出了极高的效率。
使用虚拟仪器产品,用户可以根据实际生产需要重新构筑新的仪器系统。
例如,用户可以将原有的带有RS232接口的仪器、VXI总线仪器以及GPIB仪器通过计算机,联接在一起,组成各种各样新的仪器系统,由计算机进行统一管理和操作[1,2]。
2.2 LabVIEW串口通信模块在LabVIEW 7.0中,对串行口进行控制的方式通常有两种:一是利用LabVIEW功能模块的lnstrument 1/0-﹥VISA子模块;二是直接利用LabVIEW功能模块lnstrument 1/0一>Serial子模块,该程序库中包含进行串行通信操作的一些功能模块这正符合本软件开发的需要2.3 LabVIEW通信模块的属性表(1)给出了本系统用到的几个通信模块的基本属性的描述2.4 串口通信程序结构本程序主要采用顺序结构实现,具体流程描述如下:(1)初始化串口。
据实际需要选择并打开com口,打开串口时根据双方协议设置波特率、数据位、奇偶校验位、停止位、缓冲区大小等。
如果打开串口无误,指小灯亮;否则提小串口出错,并关闭串口。
初始化成功后,退出第一桢,进入第二桢。
(2)输入命令字到串口。
因双方约定单片机输入的命令字为}一六进制的55 (ASC Ⅱ码字符表示为U),故在程序框图中输入的字串若用ASC Ⅱ码字符表示为U,用HI;X进制表示为55。
若写入的命令字有误,或写入串口模块打不开,出现出错提小,重新要求打开串口。
(3)延时因涉及在操作系统的几层间传递信息,加之从主机发送命令到单片机,单片机判断为正确命令后返回数据给主机是需要一定的时间的,故这一步进行延时等待。
延时时间可视情祝而定,只要大于单片机回送给主机的时间就行。
具体执行时间可由LabVIEW工具菜中栏下的advanced下的profile来确定程序运行时间。
若不加以延时程序会有出错提示。
(4)显示部分,主要程序代码如图二所示根据需要进行图形及表格显示。
为能准确计算被测信号的频率值,使前面板横轴表示的时间尽可能准确,在显示图形Graph IJU用bundle 进行处理。
实践表明:通过这种处理方式,可使被测信号的频率值误差在百分之三以内。
在数组显示用一个重构数组函数将单片机送来的数据构建成一个10行8列的数组,后利用两层for循环实现数组的行列显示。
第三章程序设计设计思路:本设计分单片机和PC机两部分进行编程。
在单片机方面,使用汇编语言,用中断方式接收和发送数据。
单片机有五个终端源,本设计使用串行口中断请求标志RI或TI,当串行口接收完一帧串行数据时置位RI或当发送完一帧串行数据时置位TI,向CPU申请中断;在PC机方面,PC机数据的接收和发送采用VisualBasic中的通讯控件MSC0MM。
设计中使用LED数码管显示发送或接收到数据;使用4⨯6的矩阵式键盘发送数据。
3.1单片机通信的设计单片机完成通信数据的收发功能主要分为2个步骤。
错误!未找到引用源。
串口波特率的设定通常使用单片机的串口时,选用的晶振比较固定,常用于何微机通信的波特率也相对固定。
本设计设定通讯波特率为9600。
错误!未找到引用源。
串口初始化串口初始化主要是设置产生波特率的定时器1、串行口控制和串口的中断控制。
具体步骤如下。
●确定定时器1的工作方式——写TMOD寄存器。
●计算定时器1的初值——装载TH1、TL1。
●启动定时器1——写TCON中的TR1位。
●确定串口的控制——写SCON。
●使用串口中断方式时,开CPU和中断源——写IE寄存器。
本设计设定定时器T1工作在模式2,串行口工作于方式3。
3.2 PC机通信的设计MSC0MM控件不需要用户对通讯底层进行操作。
它有事件驱动通讯和查询通讯两种方式。
本设计中采用事件驱动方式,即接收缓冲区每接受规定字符数产生一次MSCOMM—OnC0Mm事件,发送时设置不产生该事件。
3.3 输入显示程序设计设计中使用7段LED数码管显示发送或接收到数据;使用4⨯6的矩阵式键盘发送数据。
程序可分为三个模块。
错误!未找到引用源。
键输入模块:扫描键盘、读取一次键盘并将键值存入键值缓冲单元。
错误!未找到引用源。
显示模块:将显示单元的内容在显示器上动态显示。
错误!未找到引用源。
主程序:调用键输入模块和显示模块。
键盘扫描中,向列扫描码地址逐列输出低电平,然后从行码地址读回。
如果有键按下,则相应行的地址应为低,如果无键按下,由于上拉的作用,行码为高。
这样就可以通过输出的列码和读取的行码来判断按下的是什么键了,由于在建的闭合和断开过程中有一个抖动期,抖动时间长短和开关的机械特性有关,一般为5~10ms,为了保证CPU 对键的闭合做一次且仅一次的处理,在编程时要有一定的延时,本设计设定了30ms 的延时来防止按键抖动。
程序框图如下:主程序框图 读键输入子程序框图NYY N N Y开始键值转换为显示数据读取键值 显示缓冲区初始化 LED 显示有键输入? 开始 输出列扫描信号 读入行信号 初始化地址参数列扫描信号复位 返回 查表得键码 等待按键释放按照行列计算键值 返回该列有键输入? 6列扫描完?LED显示流程图开始初始化显示参数关所有位显示取显示数据输出段码数据输出位选通信号否延时位选通信号移位指向下一个显示数据是8位完成?返回3.4 单片机收发程序单片机发送数据流程图 单片机接收数据流程图否是3.5 PC 机收发程序主程序开始在PC 机屏幕上显示按下的字符读接收寄存器内容串行口初始化向PC 机发送字符单片机小键盘按下设定波特率LED 初始化LCD 显示按下的字符 返回主程序开始串行口初始化LED 初始化开中断清接收中断标志R1接收PC 机发来数据开中断,恢复现场返回保护现场接受正确PC 机发送数据流程图 PC 机接收数据流程图否 否是是3.6 硬件连接 串口初始化在文本框中显示数据 等待控制命令 串口初始化 打开串口接收数据 接收数据的事件触发 数据在LED 数码管上显示打开串口发送数据等待控制命令发送数据的事件触发 显示正确显示正确图一:图二:图三:第四章 利用LabVIEW 实现PC 与单片机串口通信任务4.1.建立新VI 程序启动NI LabVIEW 程序,选择新建(New )选项中的VI 项,建立一个新VI 程序。