PC机串口与多个单片机红外无线通信的实现
基于DELPHI的PC机与单片机无线串口通讯--毕业设计
摘要本文设计了一种基于PC机与单片机构成的串口无线通讯方案,研究了实用的基于RS-232 串口的通信协议,并利用无线模块nRF905,探讨了FSK等调制方式。
通过对方案的设计,可以利用单片机与PC机组建成低成本、可控性强、使用灵活的控制系统,在工程控制方面体现出单片机较PLC的优势,同时也可以由多台单片机构成无线通信网络,为通讯提供无线方案,并且降低了网络的开发成本,这为个人组建合适的通讯网络提供可行性方案。
上位机控制平台采用DELPHI开发工具进行编写,所使用的DELPHI编程工具具有开发效率高、入门容易、开发周期短等特点,较之VB优势明显,更贴近英语格式。
因控制系统需要根据具体的应用环境,本文只介绍了简单的事例应用,控制简单的单片机输入输出端口。
根据设计要求和功能实现,模拟调试了控制台控制终端,编写了控制台的串口通讯控制软件,调试实现了串口通讯和无线通讯的结合,实现了理想的控制命令,介绍了编码方法以及在实验中运用了单片无线芯片。
介绍了无线模块的设计及其应用电路的设计要求,阐述了串口无线通讯在控制中的运用,并且展望了串口无线通讯的发展与未来无限通讯的发展趋势。
本文还提出了方案的二次开发和高级应用,为二次开发提供了软硬件的接口,实现了知识应用及专业技能的培养,为串口通讯提供了新的方向及发展前景。
关键词:RS-232; DELPHI;nRF905; AVR-MCU;无线通讯电路AbstractIn this paper,the serial wireless-comunication which bassed on practical RS-232 serial communication protocol, is constituted by Personal Computer-software and MCU, and using of wireless modules nRF905, which researchs FSK modulation and so on. The design of the program can be used to unit a systerm,which is controllability, flexible useful and controllable, with Microprocesser and Personal computer. It will no only reflect the advantages of Microprocesser than the PLC in engineering cyberne, but also can be constituted by numbers of Microprocesser with wireless communications chip to build a network communication program. The design provide a wireless programme, and reduce developing costs. It also provide a feasibility programme which is suitable for building private communication network.. Personal computer contol platform is built by DELPHI programming environment, which is used easily, high efficient, short development cycle and so on. The programming environment has many advantages than Visual Bassic programming environment, and it is more close to English. Because of cybernetic systerm being built bassing on practical application environment, The design only introduces a simple example application.According to demant of design and function realization, the design simulated and debuged control platform and terminate-controlled, programmed control platform software by serail communication. The design carries out a programme which is combined by serial communication and wireless communication. It achieves ideable control command, and introduces the method coding. It is also experimented by using of a single-chip wireless chip and the function of wireless module circuit. The design advanced second-exploit and advantage application, provided second-exploit software and hadware interface. It also educatedspeciality knowledge and skills, exhibited programming software.Keywords: RS-232; DELPHI; nRF905; AVR-MCU;wireless-communication目录1 绪论..............................................................................................................................- 1 -1.1设计的背景和现状............................................................................................- 1 -1.2设计要求及目的................................................................................................- 2 -1.3方案可行性分析................................................................................................- 2 -2 系统概述......................................................................................................................-3 -2.1 串口通讯原理...................................................................................................- 3 -2.1.1 串口信号线的接法................................................................................- 3 -2.2 数字信号调制解调方式介绍...........................................................................- 4 -2.2.1 ASK幅移键控法 ....................................................................................- 5 -2.2.2 PSK相移键控法.....................................................................................- 6 -2.2.3 FSK频移键控法.....................................................................................- 6 -2.2.4 QAM正交幅度调制法...........................................................................- 7 -2.2.5 MSK最小移频键控法 ...........................................................................- 7 -2.2.6 GMSK高斯滤波最小移频键控法.........................................................- 8 -2.3 系统框图...........................................................................................................- 8 -2.4 上位机设计原理...............................................................................................- 9 -2.4.1编译环境.................................................................................................- 9 -2.4.2上位机编写原理...................................................................................- 12 -第3章各功能部件硬件设计......................................................................................- 14 -3.1 无线模块设计及应用.....................................................................................- 14 -3.2 单片机串口通讯模块设计.............................................................................- 16 -3.3 演示电路工作原理及设计.............................................................................- 20 -4 软件流程设计............................................................................................................- 22 -4.1 上位机软件设计.............................................................................................- 22 -4.2 单片机软件设计.............................................................................................- 23 -4.3 无线模块驱动原理.........................................................................................- 25 -4.3.1 Shock Burst TX模式 ............................................................................- 26 -4.3.2 ShockBurst RX模式.............................................................................- 28 -4.3.3曼彻斯特编码.......................................................................................- 30 -5 调试实验....................................................................................................................- 32 -5.1 上位机运行介绍及截图.................................................................................- 32 -5.2 下位机运行介绍及截图.................................................................................- 33 -6 总结和展望................................................................................................................- 35 -参考文献........................................................................................................................- 36 -附录................................................................................................................................- 37 -致谢................................................................................................................................- 51 -1 绪论在计算机控制系统中,不可避免的要采用计算机串口进行通信。
利用RS-485通讯协议实现PC机与单片机的多点通讯
合肥学院毕业设计(论文)任务书课题类型:工程设计类,实验研究类,计算机软件设计类,电路设计类,其它类课题来源:科研,教研,预研,生产实践,其它类系主任教研室主任指导教师年月日年月日2007年11月1日利用RS-485通讯协议实现PC机与单片机的多点通讯摘要介绍一种RS-485接口芯片MAX485,利用此芯片可以很方便地实现PC机与单片机之间的串行通讯,同时给出PC机与单片机实现多点通讯的实例。
关键词 RS-485串行通讯多点通讯随着数据采集系统的广泛应用,通常由单片机构成的应用系统,如仪器仪表、智能设备等,都需要与PC机之间交换数据,实现与PC机之间的通讯功能,以充分发挥PC和单片机之间的功能互补,资源共享的优势。
以往常用的RS-232协议在很大程度上已不能满足设计的要求,如传输速率慢,传输距离短,传输信号易受外界的干扰等缺点。
本文介绍一种性能优越的RS-485接口芯片,以及如何利用此芯片实现单片机与PC机之间的远程通讯,并讨论将其功能进行扩充,实现PC机管理单片机阵列的功能。
1 RS-485协议简介及MAX485芯片介绍由于RS-232的种种缺点,新的串行通讯接口标准RS-449被制定出来,与之相对应的是RS-485的电气标准。
RS-485是美国电气工业联合会(EIA)制定的利用平衡双绞线作传输线的多点通讯标准。
它采用差分信号进行传输;最大传输距离可以达到1.2 km;最大可连接32个驱动器和收发器;接收器最小灵敏度可达±200 mV;最大传输速率可达2.5 Mb/s。
由此可见,RS-485协议正是针对远距离、高灵敏度、多点通讯制定的标准。
MAX485接口芯片是Maxim公司的一种RS-485芯片。
采用单一电源+5 V工作,额定电流为300 μA,采用半双工通讯方式。
它完成将TTL电平转换为RS-485电平的功能。
其引脚结构图如图1所示。
从图中可以看出,MAX485芯片的结构和引脚都非常简单,内部含有一个驱动器和接收器。
用VC实现PC机与单片机串口通讯
用VC实现PC机与单片机串口通讯梁伯福PC机与单片机串口通讯可以通过多种方式来实现,在这里只介绍使用MSCOMM控件进行通讯。
PC机与单片机进行串口通讯的电路如下:因为单片机输入输出的是TTL电平,而PC机串口输入输出的是RS232电平,其与TTL 电平不兼容,所以要通过RS232接口进行电平转换,这可通过集成电路MAX232来实现。
在这里,我们的通讯采用主从方式,即PC机做主机,单片机作从机,PC机控制单片机发送或者接收数据,单片机没有主动发起通讯的权力。
PC机程序。
我们首先在VC中通过appWizard生成一个基于对话框的程序,接着在对话框中添加MSCOMM控件。
方法是:右击对话框-> insert activeX control -> MSCOMM32.OCX。
添加MSCOMM控件后,我们需要在头文件中定义一个类型为CMScomm的变量。
CMSComm m_msComm;// CMSComm是添加控件后VC自动生成的类接着我们使用此变量对串口进行初始化操作(可在对话框初始化时或通讯前调用此函数)。
void InitComm(){m_msComm.SetCommPort(1); // 设置通讯的串口,可为1,2,….,N//(如你的PC机有N个串口的话)m_msComm.SetInputMode(1); //设置接收模式,0为文本,1为二进制,要想能接收//值为0的数据,一定要设置为二进制模式m_msComm.SetInputLen(0); // 设置读取方式,0为读取接收缓冲区的全部数据m_msComm.SetSettings("4800, n, 8, 1"); //设置串口的波特率为4800,//无校验位,8数据位, 1位停止位m_msComm.SetPortOpen(true); // 打开串口,准备通讯}为了方便,我们这里假定PC机一次只接收或发送一个数据。
利用VB实现PC机与多单片机远程无线通讯
摘要:本文给出了一种以数传电台为通讯媒体,由控制中心PC机和多个AT89C51单片机系统组成的远程无线通信系统,重点介绍了利用VB实现PC机与多个单片机控制系统远程无线通讯程序设计方法,实现了PC机对多个远端单元的实时控制与管理。
关键词:Visual Basic、串行通讯、数传电台、单片机、远程控制1 引言随着现代电子与信息技术的不断发展,计算机与单片机控制系统之间的远程无线通讯技术得到了广泛的应用,而数传电台目前已发展成为远程无线通信的一种重要工具,它使用灵活、性价比高,环境适应能力强,非常适用于大范围、分散控制系统及在恶劣环境中,不适于铺设有线网络的实时监控系统,数传电台已成功应用于电力设备监控、计算机实时监控与数据采集(SCADA)以及实时交易数据遥测遥控等领域。
同时VB6.0具有界面友好、编程简便高效、数据处理及驱动底层硬件功能强等优点,成为许多用户开发PC 机与单片机串行通信程序的首选工具。
本文以美国MDS OEM EL705数传电台为通讯媒体,利用VB6.0的通讯控件MSComm实现了控制中心PC机与多个远端AT89C51单片机控制系统之间远程无线通讯,实现了控制中心PC机对多个远端单元的实时控制与管理,并应用于工程设计中,通过实际应用,取得了满意的效果。
2 系统的组成及工作原理2.1系统的组成系统由控制中心和多个远端单元RTU(Remote Terminal Unit)组成。
控制中心主要由上位机PC和数传电台组成,各远端单元由数传电台、AT89C51单片机系统及现场设备组成,各远端单元根据实际需要分布在距控制中心一定距离的范围内,控制中心及远端单元结构分别如图1、图2所示。
2.2工作原理控制中心作为系统的数据终端设备DTE(Data Terminal Equipment),负责实现对远端单片机系统的实时控制与管理,打印单片机系统工作状态信息、自检信息、记录报表信息及远程单片机系统故障报警信息等,并可通过局域网与其它PC机进行信息传递。
PC机与多单片机的串口通信
PC机与多单片机的串口通信摘要:本文提出了一种PC机与多单片机进行串口通信的方案,该方案通过PC机的RS232串口、485总线实现与多个51单片机的串口通信, PC机送出的信号进行电平转换后送到485总线,单片机则接受经MAX485芯片转换得到的485总线上的信号,从而进行串口通信。
在本系统中,上位机采用Windows环境下VB6.0开发,编程简单,界面良好,维护方便;下位机利用单片机内自带的串口通信接口,很好的实现异步串行通信,串口通信协议由自己规定。
该系统特点是电路设计简单可行、通信稳定、实用性强。
关键词:PC机、串口通信,UATR,上位机,下位机Abstract: This paper presents a PC with many SCM for serial communication solutions, the scheme through the PC RS232 serial ports realization and 51 SCM of serial communication, the PC sent the signal level on 485 bus after conversion, microcontroller is accepted by MAX485 chip by converting the 485 bus signal, and thus for serial communication. In the system, and the upper machine adopts Windows environment VB6.0 development, simple programming and interface is good, convenient in maintenance, Lower place machine USES singlechip inside cabin of serial communication interface, well implemented asynchronous serial communication, serial communication agreement by oneself regulations. This system features are circuit design is simple and feasible, communication stable and strong practicability.Keywords: PC machine, serial communication, UATR, target machine, host machine目录1 前言 (1)2 整体方案设计(换页。
单片机与pc机串口通信
单片机与pc机串口通信单片机与 PC 机串口通信在现代电子技术领域,单片机与 PC 机之间的串口通信是一项非常重要的技术。
它为各种应用场景提供了便捷的数据传输方式,使得单片机系统能够与强大的 PC 机进行有效的信息交互。
首先,让我们来了解一下什么是单片机。
单片机,也被称为微控制器(MCU),是一种集成了 CPU、内存、I/O 接口等多种功能于一体的小型芯片。
它在各种电子设备中扮演着“大脑”的角色,负责控制和协调设备的运行。
而 PC 机,作为功能强大的通用计算机,拥有丰富的资源和强大的处理能力。
那么,为什么要实现单片机与 PC 机的串口通信呢?原因有很多。
一方面,通过串口通信,PC 机可以向单片机发送控制指令,实现对单片机所控制设备的远程操作。
另一方面,单片机可以将其采集到的数据实时传输给 PC 机,以便在 PC 机上进行进一步的处理、分析和存储。
串口通信的原理其实并不复杂。
它是一种基于串行数据传输的通信方式,通过发送和接收一系列的二进制位来实现信息的传递。
在串口通信中,数据以一位一位的顺序依次传输,相比于并行通信,虽然速度较慢,但具有线路简单、成本低、可靠性高等优点。
要实现单片机与 PC 机的串口通信,需要一些硬件和软件的支持。
在硬件方面,通常需要一个串口转换芯片,将单片机的 TTL 电平(通常为 0 5V)转换为 PC 机所使用的 RS232 电平(通常为-10V 到+10V)。
常见的串口转换芯片有 MAX232 等。
此外,还需要连接相应的数据线,将单片机的串口引脚与 PC 机的串口接口相连。
在软件方面,对于单片机来说,需要编写相应的串口通信程序,设置串口的工作模式、波特率、数据位、停止位等参数,并实现数据的发送和接收功能。
而对于 PC 机,通常可以使用各种编程语言,如 C++、C、Python 等,通过调用操作系统提供的串口通信库来实现与单片机的通信。
```cinclude <reg52h>void initUART(){TMOD = 0x20; //设置定时器 1 为模式 2TH1 = 0xfd; //波特率 9600TL1 = 0xfd;TR1 = 1; //启动定时器 1SCON = 0x50; //工作方式 1,允许接收}void sendByte(unsigned char dat){SBUF = dat;while (!TI);//等待发送完成TI = 0; //清除发送标志}void main(){initUART();while (1){sendByte('A');delay_ms(1000);}}```在这个示例中,首先通过`initUART` 函数对串口进行初始化设置,包括波特率等参数。
毕业论文PC机与单片机之间的串行通讯、数据的发送和接收
【摘要】本文以MCS-51单片机为例,详细介绍了PC机与单片机之间的串行通讯、数据的发送和接收。
在Windows98下利用VB的串行通讯控件可实现PC机与单片机之间的通讯。
其数据的发送和接收采用红外线通信方式,其优点是:省去了有线通信信号线的直接连接,使用简单,移动方便,微机与单片机无直接连接,属完全隔离状态,两者间不会因为电平的不同而造成数据传输的失误,抗干扰能力强。
本设计主要应用AT89C51作为控制核心,并与LED数码显示管、双向可控硅、红外发射与接收相结合的系统,充分发挥了单片机的性能。
其优点硬件电路简单,软件功能完善,控制系统可靠,性价比较高等特点,具有一定的使用和参考价值。
】【关键字关键字】MSC-51(单片机),红外,RS-232,电平转换器,串行通信半双工】Abstract】【AbstractThis text take one-chip computer MCS-51for example,introduce a serial communication,data’s sending and receiving.Under the Windows98we make use of a communication control of VB to achieve the communication of the machine of PC and one-chip computer. Its data’s sending and receiving adopts the method of the infrared ray communication,its advantage is that it exclude the direct link of signal line of with-wired communication,and usage are simple,and move is convenience etc.The tiny machine have no direct conjunction with single a machine,belonging to the complete insulation appearance,can't result in the error that data deliver both because give or get an electric shock even and different,the antijam ability is strong.This design is a system that it applies AT89C51as control core and combine the LED figures manifestation tube,MAX232CPE level changer,infrared’s sending and receiving.The system completely exerts the function of one-chip computer.Its advantage is that the hardware circuit is simple;the software function is perfect;the control system is dependable;the rate of price and function is high etc.So the system has certainly consult value.】【KeywordKeyword】MSC-51(One-chip computer),infrared,RS-232,Level changer,serial communication,half duplex目录前言3第一章系统分析4 1.1系统功能的概述5 1.2系统要求及主要内容5 1.3系统技术指标5第二章系统总体设计6 2.1硬件设计思路6 2.2软件设计思路7第三章7 3.1单片机模块设计8 3.2红外通信(发射与接收)电路的设计14 3.3PC机模块的设计第四章20 4.1单片机串行口通信21 4.2PC机串口通信24第五章软件设计25 5.1单片机通信程序设计25 5.2PC机通信程序设计29第六章系统调试30 6.1硬件调试30 6.2软件调试31 6.3综合调试33 6.4故障分析及解决方案33 6.5结论与经验34结束语35附录36附录1电路原理图36附录2程序流程图38附录3程序清单41附录4元器件清单44附录5英文资料45附录6中文翻译52参考文献56前言单片机的英文名称是Micro Controller unit,缩写为MCU,又称为微控制器,它是一种面向控制的大规模集成电路芯片。
计算机与多台单片机的串行通信方案实现郭克
Value Engineering String sdate =maxslh.substring(1,9);String lsh =maxslh.substring(9,13);if(sdate.equals(date)){int a =Integer.parseInt(lsh);a =a+1;String newlsh =(new DecimalFormat("0000")).format(a);newslh ="C"+date+newlsh;slh=newslh;}else{newslh ="C"+date+"0001";slh =newslh;}}}系统的操作界面友好、简单易用、操作方便,如图3所示。
4结束语住房用地分割登记有助于依法维护用地者的合法权益,有助于查处违法用地,使合法用地者能够办理土地使用登记,可以有效避免违法用地开发,对建立公平有序的房地产开发的土地市场具有十分重要的意义。
本系统的设计改进了原有分割登记流程,可以很大程度上优化土地管理部门的工作效率,提高公共行政部门的信息化管理形象。
参考文献:[1]张欢,周卫军.地籍管理信息系统研究进展[J].宜春学院学报,2010,(8):79-81,98.[2]田芳莲,孙延梅.基于GIS 的城镇地籍管理信息系统设计[J].价值工程,2010,(36):144-145.[3]赵盼盼,马晓红,赵立立.地籍管理信息系统的研究[J].中小企业管理与科技,2009,10(30):280-281.[4]敦力民.城市地籍信息管理系统的设计与实现[D].北京:中国科学院研究生院,2006.0引言现代的靶场测试现场,通常采用分布式测试系统,以便完成多点测试,提高测试效率。
由于单片机的运算能力较差,因此在对数据进行复杂处理时,通常需要使用计算机系统,因此,在许多实时控制和数据采集系统中,通常采用计算机和多台单片机构成主从式分布测试系统,这样不仅可以发挥单片机功能强、抗干扰性能好、面向控制等优点,而且可以利用计算机弥补单片机在数据处理方面的不足。
单片机与PC机串行通信的实现方法
单片机与PC机串行通信的实现方法随着单片机和微机技术的不断发展,特别是网络技术在测控领域的广泛应用,由PC机和多台单片机构成的多机网络测控系统已成为单片机技术发展的一个方向。
它结合了单片机在实时数据采集和微机对图形处理、显示的优点。
同时,windows环境下后台微机在数据库管理上具有明显的优势。
二者结合,使得单片机的应用已不仅仅局限于传统意义上的自动监测或控制,而形成了向以网络为核心的分布式多点系统发展的趋势。
本文主要介绍PC机与51系列单片机实现通信的一般方法和步骤。
硬件结构和单片机的通1S程序设计单片机和PC机的串行通信一般采用RS-232、RS-422或B3-485总线标准接口,也有采用非标准的20nnJL 电流环的。
为保证通信的可靠,在选择接口时必须注意:(1)通信的速率;(2)通信距离:(3)抗干扰能力;(4)组网方式。
本文主要介绍采用RS-232接口与单片机通信的方法。
1、 RS-232电平转换和PC机的接口电路RS-232是早期为公用电话网络数据通信而制定的标准,其逻辑电平与ITL\CMOS电乎完全不同。
逻辑"0"规定为+5- +15V之间,逻辑"1,,规定为-5~-15V之间。
由于RS-232发送和接收之间有公共地,传输采用非平衡模式,因此共模噪声会耦合到信号系统中,其标准建议的最大通信距离为15米.但实际应用中我们在300bi:/s的速率下可以达到300米。
RS-232规定的电平和一般微处理器的逻辑电平不一致,必须进行电平转换,实现逻辑电平转换可以采用以下三种方式。
采用MCl488和MCl489芯片的转换接口 MCl488和MCl489芯片为早期的RS-232至TTL逻辑电平的转换芯片,图1为实际电路。
该电路的不便之处是需要±12V电压,并且功耗较大,不适合用于低功耗的系统。
图中TXD、RXD分别接单片机的发送和接收端。
采用MAX232芯片的转换接口 MAX232是MAXIM公司生产的,包含两路驱动器和接收器的RS-232转换芯片。
基于VC的PC机与单片机无线串行通信的实现
据 为 无 线 发 送 数 据 此 端 应 置 为 逻辑 “ ” 1。 当上 位 机 串 口 无 数 据 发 出 时 , T D R端 的 功 能 为 指 示 上 位 机 是 否 可 以 接 收 计算 机 的 数 据 : 上 位 机 准 备 好 接 收 模 块 的 数 据 时 此 当
端 为 逻 辑 “ ” 当 上 位 机 不 能 接 收模 块 的 数据 时此 端 为 逻 辑 “” 0, 1。
端 5 G D) 地 (N :
端 6 R D)模 块 外 部 红 色指 示灯 驱动 (E : 端 7 GR E N)模 块 外 部 绿 色 指示 灯 驱 动 ( EE :
端 8 G D) 地 (N :
2无线 通信 模块 及 其连 接
本 设 计 采 用 无 线 通 信 模 块 来 实 现无 线 数 据 传 输 , 品 为 北 京 产 捷 麦 通 信 器 材 公 司 生 产 的 F 1 M, 采 用 F K 调 制 方 式 , 信 距 2D 它 s 通 离 1 M, 口为 r K 接 r L电平 , 以直 接 和 单 片 机 的 异 步 通 信 口连 接 。 可
(. fr t nSi c n etnt t o b i iesyo i c dT cn lg , i h ag0 0 5 ,hn;,otrdaeI i t 1 n mao c n eadp c Ist e f Io i e i Hee Un rt f S e ea eh oo y a u n 50 4C ia P s aut mtue u v i cn n s z 2 g t
c t n h w o n a e u e o o a o o t lk fc mmu i a o o t l n at S mm e l e t eP a d o e h p c mp t r i s n c t n c n r l g p r M Co i oi o t r a z C n —c i o u e . i h n
PC机与单片机的红外通信接口设计
PC机与单片机的红外通信接口设计
颜拥军;刘军
【期刊名称】《东莞理工学院学报》
【年(卷),期】2003(10)2
【摘要】文章提出了一种简易、成本低的PC机与单片机(也称为微控制器MCU)应用系统进行红外通信方法,并介绍了相应的接口电路,该方法可用于多机通信.【总页数】4页(P7-9,17)
【作者】颜拥军;刘军
【作者单位】南华大学计算机科学与技术学院,湖南衡阳,421001;南华大学计算机科学与技术学院,湖南衡阳,421001
【正文语种】中文
【中图分类】TP368
【相关文献】
1.基于VC的PIC单片机与PC机的接口设计 [J], 陈黎卿;任淼
2.基于VC++6.0的PC机和单片机的接口设计与实现 [J], 张晶晶
3.PC机与AT89C51单片机的串行通信接口设计 [J], 郭宏亮
4.AT89系列单片机与PC机之间的串行通信接口设计 [J], 郭成林
5.基于VC++
6.0的PC机和单片机的接口设计 [J], 尹若丹;马保吉
因版权原因,仅展示原文概要,查看原文内容请购买。
PC与单片机的串口通讯的简单实例
PC与单片机的串口通讯的简单实例这几天看了些串口方面的资料,决定设计一个简单的实验,以强化所学的东西。
实验实现的功能主要是:用PC上的一个软件通过串口通讯控制单片机I/O 口的输出。
本次实验主要涉及PC端上位机的程序编写(用VC)与单片机程序的编写(用Keil)。
为了简化实验,PC端软件设计成具有8个按钮的对话框,每个按钮分别控制单片机P2口的一个引脚的高低电平。
为了体现直观的结果,P2口上接上8个发光二极管。
实验的原理图如下:PC与单片机的通讯协议如下:采用4800波特率,无校验位,8个数据位,1个停止位,一次传输一个控制字节。
一、上位机软件的编写本来控制单片机只需单向传输数据即可,为了熟悉PC端接受数据的功能,在应用软件将控制数据传输到单片机端后,单片机端回传数据给应用软件,并用16进制格式显示在编辑控件中。
VC实现对串口的控制主要有两种方式:mscomm控件与api函数。
由于ms comm控件实现简单,本实验采用该方式。
1.在VC中创建一个基于对话框的应用程序,在该程序中插入Mscomm控件。
修改对话框资源,增加Mscomm及8个按钮控件与一个编辑框。
并为Mscomm控件增加一个控件变量m-com。
2.在对话框的OnInitDialog()函数中初始化串口,代码如下:if(m_com.GetPortOpen())m_com.SetPortOpen(FALSE);m_com.SetCommPort(1);//选择com1if(!m_com.GetPortOpen())m_com.SetPortOpen(TRUE);//打开串口elseMessageBox("无法打开串口!");m_com.SetSettings("4800,n,8,1");//波特率4800,无校验,8个数据位,1个停止位m_com.SetInputMode(1); //1:表示以二进制方式检取数据m_com.SetRThreshold(1);//参数1表示每当串口接收缓冲区中有多于//或等于1个字符时将引发一个接收数据的OnCom m事件m_com.SetInputLen(0); //设置当前接收区数据长度为0m_com.GetInput();//先预读缓冲区以清除残留数据3.为每个按钮添加命令函数。
PLC与单片机串口通信的实现探讨
PLC与单片机串口通信的实现探讨
PLC与单片机之间的串口通信是工业自动化过程中常见的一种通信方式。
具体的实现
方法有很多,下面将对其中一种常见的实现方式进行探讨。
PLC与单片机之间的串口通信需要确定使用的串口通信协议。
常见的串口通信协议包
括RS232、RS485、Modbus等。
在确定使用的协议之后,需要进行硬件连接,即将PLC和单片机的串口接口相连。
RS232协议需要使用串口线连接PLC的RS232口和单片机的UART口,而RS485协议则需要使用RS485转TTL模块进行连接。
接下来,需要在单片机中实现与PLC之间的串口通信。
一般来说,可以使用单片机的UART模块进行通信。
通过配置波特率、数据位、停止位、校验位等参数,可以使单片机的UART能够与PLC的串口进行数据交互。
在单片机程序中,通过读写串口的数据寄存器,可以实现数据的接收和发送。
在实际应用中,需要根据具体的通信需求来选择合适的通信方式和协议。
对于简单的
数据传输,可以使用透明传输方式,将单片机的数据直接通过串口发送到PLC,或者将PLC 的数据直接通过串口发送到单片机。
而对于复杂的通信需求,可以使用现成的通信协议,
如Modbus协议,通过读写寄存器的方式进行通信。
PLC与单片机之间的串口通信是一种常见且重要的通信方式。
在实现过程中,需要确
定通信协议、进行硬件连接,同时在单片机和PLC的程序中分别完成相应的配置和数据交互。
通过合理的选择和配置,可以实现可靠、高效的PLC与单片机之间的串口通信。
PC机与多个单片机之间的串行通信原理及其软硬件结构的实现
PC机与多个单片机之间的串行通信原理及其软硬件结构的实现实现串行通信的方法很多,例如可以根据通信协议的要求,用编写程序的方法完成串行通信中数据字符的接收和发送,但这种方法比较麻烦;为了快速、简便、有效的实现串行通信,PC系列及其兼容机都可以采用一个可编程异步串行通信接口芯片来执行异步串行通信协议。
这种异步通信接口芯片的核心是一个大规模集成通信组件,称为通用异步接收/发送器,或简称UART(Universal Asynchronous Receiver/Transmitter)。
1﹒ 8051实现多机通信原理8051串行通信相关的三个控制寄存器SCON(Serial Controller)、PCON(Power Controller)和IE (Interrupted Enhanced)分别用于设定四种不同的通信方式及定义波特率。
它的串行口工作方式3是可变波特率的9位数据异步通信方式,发送或接收一帧数据为1l位:1位起始位,8位数据位、1位附加的校验位和1位停止位。
其中附加的第9位数据是可编程的,利用这一可控的第9位数据,可以实现多机通信。
2﹒ PC机与8051通信原理PC机的串行通信适配器,其核心为可编程异步收发器UART8250芯片,8250有10个可寻址寄存器供CPU读/写,以实现与外界的通信,并制定通信协议和提供通信状态信息。
8051单片机的串行通道是一个全双工的串行通信口,既可以实现双机通信,也可以实现多机通信。
当串行口工作在方式2或方式3时,若串行控制寄存器SCON的多机通信控制位SM2由软件设置为“1”,则为多机方式;若SM2为“0”,则为9位异步通信方式。
在多机通信时,8051发送的帧格式是11位,其中第9位是SCON中的发送数据位TB8,它是多机通信时发送地址(TB8=1)或发送数据(TB8=0)的标志。
串行发送时自动装入串行帧格式的相应位。
在接收端,一帧数据的第9位信息被装入SCON的接受数据位RB8中,接收机根据RB8以及SM2的状态确定是否产生串行中断标志,从而可以响应或不响应串行中断,这样就实现了串行中断。
PC机与单片机的无线通信
PC机与单片机的无线通信摘要:本文重点介绍了pc机与单片机的无线通信系统。
该系统通过无线收发模块rf418实现pc机与单片机之间的数据异步串行无线传输,可用于小区无线抄表、gps及柱上断路器远程控制等。
本文从工程实际的角度,设计了硬件电路及相应的上下位机程序。
关键词:单片机无线通信 rf418 pc机近年来,随着单片机及微机技术的不断发展,特别是网络技术的广泛应用,采用pc机与多台单片机构成的测控系统越来越多。
但在一些场合,如与移动的测控对象进行通信、较远距离通信不适合布线的地方等,则不适合采用有线通信。
随着无线技术的不断完善和发展,无线通讯技术逐渐应用于pc机与单片机之间。
在本文中的无线通讯主要采用无线收发模块rf418,通过一定频率的电磁波实现pc机与单片机之间的无线通信,由此可以方便地进行数据处理和远程控制。
该无线通信系统可实现的通信距离为6~15公里,完全克服了红外无线传输的直线性、静止性、受环境因素影响等缺点。
一、无线通信系统的构成及工作原理(一)无线通信系统的构成机pc机在该无线通信系统中作为dte(数据终端设备),主要用于接收由下位机部分采集到了数据,并对数据进行计算、处理、动态显示等。
同时可以把一些数据、命令字等数据传给下位机部分,用于与下位机部分的双向信息沟通或对下位机部分控制等。
2.无线收发模块rf418该模块作为dce(数据通信设备),在该无线通信系统中有着重要的作用,主要用于两个或多个数据终端设备之间数据传输。
通过该模块可以把数据的电平信号转换成无线电信号,以一定频率电磁波的方式传送出去。
同时也可以接收电磁波中的无线电信号,并把其转化成数据的电平信号传输到数据终端设备。
总线标准接口板由于计算机内部的数据信号是ttl电平标准,而通信线上的数据信号却是rs-232c电平标准,该接口板主要用于较远距离通信的dce与dte之间的ttl电平和rs-232电平的相互转换。
4.单片机系统单片机通过一定的方式与控制元件相连,起到了数据采集、处理和发出控制指令的作用。
从PC串行口实现简单红外数据传输
从PC串行口实现简单红外数据传输常有这种情况,需要在没有直接电缆连接的情况下,将一些位或字节的数据送给一个微控制器。
实现这一目标的一种简单方式是使用到处可见的红外接收器,如Vishay公司的TSOP17xx或类似接收器,它们一般用于红外遥控设备,如电视和录像机。
这些装置很容易实现,因为它们不需要外接元件。
这些接收器通常使用一个38kHz的脉冲载波,并带有一个放大器、自动增益控制和解调器。
简单应用的主要问题是建立发射机,它需要一个38kHz的起始-停止振荡器、附加电源,以及毫秒与亚毫秒范围内的调制脉冲。
用PC操作系统难以控制这些要素。
另一方面,PC 串行端口的标准传输速率为38400bps,用一个简单的倍频器和两只红外LED就可以生成精确的38.4kHz的脉冲数据(图1)。
当用另一种O/I模式(HEX55)传输字节时,每个HEX55字节都生成一串18个脉冲,再加上起始位与停止位以及连续字节,就可以生成较长的脉冲。
接收器需要的脉冲串范围从10个~70个脉冲,之间有大致相当的间歇;用这种设置可以很容易满足这些要求。
可以发送HEX0字节生成短间歇,不过每个字节会传送两个脉冲,因为起始位与停止位的关系。
但是,接收器会忽略掉这些脉冲。
停止一次传输可以生成较长的间歇。
必须根据使用的接收器情况,偶尔插入较长的间歇。
用长、短脉冲串和适当的协议就可以实现数据传输。
图1中的电路与串行端口输出阻抗和电容一起构成了一个高通滤波器。
正脉冲驱动一只红外LED;负脉冲驱动另一只。
两只都应指向接收器。
PC端口一般提供5mA~20mA的最大电流,以及15V电压,因此输出电阻在数千欧姆范围内。
一般不需要限流电阻。
多数情况下,电容容量为1nF~10nF就可以了。
接收器有宽容度。
如果是非PC端口,则需要调整电容值,例如微控制器,因为它的阻抗较低。
在实际应用中,如果LED对准接收器,用低至5mA的LED峰值电流就可以实现2米~4米的传输距离。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《工业控制计算机》!""#年$%卷第%期&’机串口与多个单片机红外无线通信的实现周文举山东枣庄师专计算机系(!%%$(")&’机与一台或多台单片机的通信系统中的数据通讯一般采用的是串行通信方式。
串行通信可采用有线与无线两种方式,作者根据单片机串行通信原理、脉冲编码调制)&’*+技术和红外无线通信技术,开发设计了单片机编解码红外无线通信接口。
用该接口构成的多机通信系统,由于采用红外线为传输介质,而不是电缆线和电磁波,所以特别适用于那些不适合或不方便架设电缆线及电磁干扰较强的工作环境。
本文就利用红外技术实现&’机与多台单片机无线串行通信的实现作一介绍。
!多机通信原理在多机数据通信系统中,&’机与单片机之间的数据通信采用一对多的主从模式,利用波长为,#"!-的远红外波通信。
其原理示意图如图$。
主机为&’机,从机选择*’./0$系列单片机,在&’机上用12345675328(9"编制一个主程序,负责发送从机地址、控制命令和从站之间的信息传输及调度,从站则负责收集现场信息,进行一定的数据处理,根据主站的要求返回数据,并执行主站发出的命令。
主站&’机与从站之间的信息交换是通过*.’:--控件来实现。
在采用主从式多机串行通信系统中,从机不主动发送命令或数据,一切都由主机控制。
并且在一个多机通信系统中,只有一台&’机作为主机,各从机之间不能直接相互通讯,即使有信息交换也必须通过主机转发。
由于发送和接收共用同一物理信道因此在任意时刻只允许一台从机处于发送状态,其余的从机不能发送。
只有被主机呼叫的从机才能占用总线,对主机做出应答。
图$&’机与一单片机串行通信每台从机均分配有一个唯一的从机地址,主机与从机通信时,主机先呼叫某从机地址,唤醒被叫从机后,主、从两机之间进行数据交换,而未被呼叫的从机则继续进行各自的工作。
主机发送的信息可以传到多个从机或指定的从机,各从机发送的信息只能被主机接收。
单片机通过对多机通信控制位.*!进行置位和复位来控制正确接收地址和数据信号,在返回数据时通过设;7<为"或$来区别返回的是数据还是地址。
只有正确地完成了接收和发送任务,才能触发有效的;=,>=信号,进而完成下一步的通信。
接收时,检测>=是否建立起来,当>=为高电平,表示接收完毕。
发送时,检测;=是否建立起来,当;=为高电平时说明发送已经完成。
而在主机上也要设立相应的多机通信机制,这一任务是通过改变*.’:--控件的.?@@2AB 属性中的奇偶校验位来实现的。
发送和接收地址时置奇偶校验位为*,则主机在发送地址过程中发送的第,位;7<为$,而在接收地址时,只有接收到的第,位>7<为$时才能引起’:--CD?A@属性的变化,从而触发EA’:--事件;发送和接收数据时,置该位为.。
则主机在发送数据过程中发送的第,位;7<为",而在接收数据时,只有接收到的第,位>7<为"时才能引起’:--CD?A@属性的变化,从而触发EA’:--事件。
在本设计中主机微机发送字符与接受字符均采用查询方式,发送前先读取通信或状态寄存器,查询发送保持寄存器空否?接收前先读取通信或状态寄存器,查询一帧数据收完否?从机采用中断方式,即接收到地址帧后就进行串行口中断申请,’&F 响应后,进入中断服务程序。
在通信协议中规定:"单片机以方式G 进行通信,一帧数据的第,位为“$”,代表地址帧,为“"”,代表数据帧。
#设定通信波特率为,(""HI3;$地址帧为"$JKLLJ 代表!00台从机地址。
%""J 是以地址帧形式发送的一条对所有从机起作用的控制命令,命令各从机恢复.*!M$,等待接收状态。
为了实现多机通信,所有发射电路的振荡频率和所有的接收电路的振荡频率都必须调整一致,为保证正常通信,防止自己发自己接,数据传送方向必须为半双工传送,收发器在发射时,必须屏蔽自己的接收中断,发射结束后再开放中断。
多机通信过程为:$)主机*.’:--的属性.?@@2AB3M “,("",*,<,$”,所有从机的.*!M$,处于地址帧接收状态。
!)主机发送一帧地址信息,其中包含<位地址,第,位为“$”,与所需的从机进行联络。
G )从机接收到地址信息后,各自将其与自己的地址相比较;对于地址相符的从机使>=M",;7<M$,发送自身地址,并使.*!M",;=M$,以等待接收主机随后发来的所有信息;对于地址不相符的从机仍保持.*!M$状态,对主机随后发来的数据不理睬直至发送新的一帧地址信息。
#)主机接收到地址后修改*.’:--的属性.?@@2AB3M“,("",.,<,$”,然后进行地址校对,若地址校对通过,说明从机已经联络上,发送进一步的通信控制命令信号;地址校对出错,说明从机没有联络上,发送结束本次通信命令,修改*.’:--"#$%&’(%;N23I5I?O P?38O2H?35A?Q -?@N:P @:O?562R?@N?-53@?O 365D?-:P?8:--4A285@2:A @NO:4BN 3?O256I:O@3H?@Q??A &’5AP *46@2-28O:8N2I3HS 432AB 2ATO5O?P9’2O842@UIO:@:8:6UT6:Q 8N5O@5AP I5O@3:4O8?8:P?3:T 17(9"5AP *’.0$5O?563:IO?V 3?A@?P T:O 3?O2568:--4A285@2AB9)*+,-&.$W2ATO5O?PU&’-28O:8N2IU-53@?O 5AP 365D?UQ2O?6?333?O2568:--4A285@2AB摘要本文介绍了用红外线实现上位&’机和多个单片机间的无线串行通信的新方法,给出了硬件线路图、通信协议和程序流程图及用17(9"和*’.0$汇编语言编写的部分串行通信程序。
关键词:红外线,&’机,单片机,主从式,无线串行通信!,!"机串口与多个单片机红外无线通信的实现的属性#$%%&’()“*+,,,-,.,/”。
主机向被寻址的从机发送控制指令与数据,一帧数据的第*位为“,”,表示发送的是数据或控制指令。
0)被叫从机接收到命令后进行命令分析,若为结束通信的命令,则立即置#-1)/,结束本次通信,等待下一次通信,否则执行相应的动作,对于要求返回信息的命令,置23.),,返回正确的响应信息后置#-1)/,恢复其只接收地址帧数据状态。
+)主机接收结束通信命令的返回信息后修改-#"455的属性#$%%&’()“*+,,,-,.,/”,准备进行下一轮的通信。
!硬件构成主要包括红外发射电路和红外接收电路两部分:(/)红外发射电路在红外数据传输的信号调制方式上,采用脉冲调制的二进制不归零码。
这种调制方式比较简单,编码解码都比较方便,有利于电路简化。
红外发射电路如图1所示。
图1红外发射电路由600789的晶振":;,反相器<68",6及电阻、电容构成的振荡器产生600789的方波信号。
经脉冲分频器<6=#*1,六分频成为<0>.?789的脉冲信号。
再经过@触发器构成的1分频A 整形电路变成?.789的方波信号。
由单片机的异步串行口2B 输出的串行数据信号,送到与非门<68",,的输入端。
与非门的另一输入端接?.789的载波信号。
与非门的输出信号用来控制三极管的开通或关断,从而控制红外发射管发送信息。
这样就达到了用串行口2B 输出的串行数据信号直接调制载波,进行红外数据传输的目的。
发射电路的调制采用的是时分制幅度键控调制方式。
因单片机在复位后,2B@脚为高电平,为满足同步的要求,采用低电平同步脉冲,经与非门CD?E 后变成高电平同步脉冲。
所以单片机2B@发送的编码应是反码。
如图?所示F图?串行信号幅度调制图(1)红外接收电路设计中采用一种高效能的红外接收器———德律风根2G-#0?.,。
德律风根所开发的微型接收器2G-#0?.,是近期市场上最高效能的红外接收器。
同一组件内已装上了接收二级管和前置放大器。
2G-#0?.,特点:!单一的接收器和前置放大器的组合;"超敏感度和传送距离;#内置!"-频率过滤器;$无外置组件需要;%特强光及电场干扰屏蔽;&22=及"-H#兼容,适用于微处理器操作控制;’可选频率由?,789至0+789;(低功耗;)I#H*,,,认可。
2G-#0?.,适用于数据传送、电视机、录像机、组合音响及卫星接收器等。
2G-#0?.,的内部框图及构成的接收电路。
如图6所示。
图62GJ#0?.,构成的接收电路图该接收电路要求被接收的红外光波长在*0,*5左右,被调制信号的脉冲宽度不小于+,,*K 。
2G-#0?.,的应用电路非常简单。
实验证明,2G-#0?.,的性能良好,完全可以满足数据传输的需要。
"软件设计串行通信软件包括主机软件和从机软件:(/)主机软件设计该系统主机通信程序设计在J&’L4MK*.环境下采用N3+>,通信控件C-#"455E 编程,-#"455控件具有功能完善的串口数据发送和接收功能以及良好的人机界面。
-#"455控件中在本文需特别指出的属性是:#$%%&’(属性:设置或返回串口端口的波特率C3333E 、奇偶校验位C!E 、数据位C@E 、停止位C#E 。
如:-#"455#$%%&’(K)“*+,,,O ,.,/”。
表示所使用的串口端口的位传输波特率为*+,,3&%A K ,无奇偶校验位,.位数字位,一位停止位。
其中O 的不同取值及其含义为:PQ 偶数CPR$’E 、-Q 标记C-STUE 、OQ 缺省C@$VSWX%EO4’$、HQ 奇数CHLLE 、#Q 空格C#YSZ$E 。
-将第*位置/,#将第*位置,。
利用这两个设置即可实现寻址指令与数据传送指令的分开。
#$%%&’(K 设定完成之后,所送出及收回的字符串便以此为准,使用串行通讯的双方的#$%%&’(K 的设置必须完全相同,这样才能保证通讯的顺利进行,否则通讯的双方将无法正确接收对方所传送过来的信号,也不能触发相应的处理事件。