当前位置:文档之家› 单片机多机通信课程设计

单片机多机通信课程设计

单片机多机通信课程设计
单片机多机通信课程设计

1设计任务

多机串行通信的设计基本任务

1.设计三个以上单片机实现主从式串行通信的系统,主机发送数据到指定站号的从机端,也可以群发到所有从机端,并在LED数码管上显示。

2.可通过接在主机上的键盘输入数据,通过主机发送到从机。

3.从机也可输入数据,并可在查询到主机空闲时将数据发送给主机。

4*.从机间可相互通信(从机—)主机 另一从机),通信协议遵从modbus规范。

4@. 其他功能(创新部分)

仿真模块例

2设计方案

2.1设计任务

本文在参考了现在普遍的多机通信系统的基础上,设计了一种基于51单片机STC89C51的多机通信系统。在proteus上设计并仿真电路图。进入proteus程序仿真,启动程序系统,首先主机通过按键选择准备通信的从机,接通后,主机通过矩阵键盘上的数字按键与从机通信,使从机上的数码管显示对应的数字,以此实现多机通信。如,与2号机通信并传输“8”这个数字。首先主机从选择从机按键上按“2号机”键,与2号机连通后按下主机矩阵键盘上的“8”键,对应的2号机数码管上会显示数字“8”,证明通信成功。

2.2串行通信简介

串行通信可以分为同步通信和异步通信两类。

同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。它们均由同步字符、数据字符和校验字符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有1到2个,用于接收端对接收到的字符序列进行正确性的校验。同步通信的缺点是要求发送时钟和接收时钟保持严格的同步。

异步通信中,在异步通行中有两个比较重要的指标:字符帧格式和波特率。数据通常以字符或者字节为单位组成字符帧传送。字符帧由发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。接收端检测到传输线上发送过来的低电平逻辑"0"(即字符帧起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知道一帧字符已经发送完毕。

串口通信最重要的参数是波特率、起始位、数据位、停止位和奇偶校验。

波特率:是一个衡量通信速度的参数,表示每秒钟传送的bit的个数。

起始位:当通信线上没有数据被传送时处于逻辑“1”状态,当发送设备要发送一个数据时,先发送一个逻辑“0”信号,这个低电平就是起始位,起始位通过通信线传向接收设备,接收端检测到这个低电平后,就确认开始接收数据了。起始位的作用是使通信双方在传送数据前协调同步。

数据位:是衡量通信中实际数据位的参数,当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7或8位,如何设置取决于要传送的信息。每个包是指一个字节,包括开始/停止位、数据位和奇偶校验位,由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。

停止位:用于表示单个包的最后一位。典型的值为1、1.5和2位,它是一个数据的结束标志,接收端接收到停止位后,通信线路上会回复逻辑“1”的状态,知道下一个起始位的到来。

奇偶校验位:在串行通信中一种简单的检错方式,有四种方式:偶、奇、高和低。对于偶和检验的情况,串口会设置检验位,用一个值确保传输的数据有偶个或者奇个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验,这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。

3.系统硬件设计

3.1接口设计

MCS-51单片机具有多机通信功能,利用它可以构成分布式系统,电路结构如图3.1所示

图3.1电路结构

本设计单片机之间通过串口进行通信,主机通过按键来选择要进行通信的从机,进而通过按键控制从机的数码管显示数字。数码管与单片机的连接方式采用并行连接方式。系统设计框图如图3.2所示:

图3.2系统设计框图

3..2主机电路模块设计

3.2.1 单片机简介

AT89C51单片机内部主要由9个部件组成:1个8位中央处理器;4KBFlash存储器;128B的数据存储器;32条I/O口线;2个定时器/计数器;1个具有6个中断源、4个优先级的中断嵌套结构;用于多处理机通信、I/O扩展或全双工UART的串行口;特殊功能寄存器;1个片内振荡器和时钟电路。A T89S51系列单片机完全继承了MCS-51的指令系统,共有111条指令,按其功能可分为五大类:数据传送类指令、算术运算类指令、逻辑运算类指令、控制转移类指令、布尔操作。A T89C51单片机引脚如图3.3所示。

图3.3AT89C51单片机引脚图

管脚说明:

P0口:8位、漏极开路的双向I/O口。P0能够用于外部程序数据存储器。它可以被定义为数据/地址的第八位。P0口在应用时必须外接上拉电阻,作为输入时,首先应将引脚置1。

P1口:8位双向I/O口,内部含上拉电阻。作为输入时,应先将引脚置高;若负载为低电平,则通过内部上拉电阻向外输出电流。

P2口:8位双向I/O口,内部含上拉电阻。作为输入时,应先将引脚置高;若负载为低电平,则通过内部上拉电阻向外输出电流。

P3口:8位双向I/O口,内部含上拉电阻。作为输入时,应先将引脚置高;若负载为低电平,则通过内部上拉电阻向外输出电流。P3口除了通用I/O口功能外,还有第二功能。P3口的第二功能定义如表3.4所示。

表3.4 P3口第二功能定义

RST:复位输入,低电平有效。

ALE/PROG:地址锁存允许信号输出。在正常操作状态下,该引脚端口输出恒定频率的脉冲。其频率为晶振频率的1/6,可用作外部定时或其他触发信号。如果需要,可通过SFR 的第0位置禁止ALE操作,但ALE的禁止位不影响对外部存储器的访问。

PSEN:片外程序存储器选通信号,低电平有效。当A T89S51执行来自外部程序存储

器的指令代码时,PSEN/每个机器周期两次有效。在访问外部数据存储器时,PSEN/无效。

VPP

EA/:EA片外程序存储器访问允许信号,低电平有效。

XTAL1:外接晶振。在单片机内部是反相放大器的输入及端。

XTAL2:外接晶振。在单片机内部是反相放大器的输出端,输入到内部时钟发生器。

3.2.2 主机控制电路

该部分电路设计如图3.5所示。单片机的时钟的频率直接影响着单片机的速度和系统的稳定性。AT89S51片内由一个反相放大器构成振荡器,可以通过XTAL1和XTAL2产生时钟。常用的单片机产生时钟的方法有两种:内部时钟方式和外部时钟方式。本设计选用外部时钟方式,单片机内部XTAL1引脚为高增益反向放大器的输入端,XTAL2为输出端,在这2个引脚之间接石英晶振和电容,就可以构成一个稳定的自激振荡器。本设计选用的11.05926MHz的晶振。

复位是单片机的初始化操作,复位信号是高电平有效,复位操作有上电自动复位、按键电平复位、外部脉冲复位和自动复位四种方式。在本设计中复位电路采用按键电平方式,使RST 引脚经过10u电解电容与VCC电源接通,同时经过电阻与地连接而实现,按下按键时,RST 引脚置高,实现复位功能。

单片机的P1口控制矩阵键盘电路,P0口控制数码管段码,P3.4 P3.5分别控制两个数码管的位选。

图3.5主机控制电路

3.3从机电路模块

本设计共设置2路从机,2路从机的电路设计和实现的功能是一样的,所以这里只介绍其中一路从机的电路设计。

从机电路如图3.6所示。P0口控制数码管显示。半导体数码管的每个线段都是一个发光二极管(Light Emitting Diode,简称LED),因而也把它叫做LED数码管或LED七段显示器。半导体数码管不仅具有工作电压低、体积小、寿命长、可靠性高等优点,而且响应时间短(一般不超过0.1us),亮度也比较高。LED数码管由八只发光二极管组成,编号是a、b、c、d、e、f、g、h,分别和同名管脚相连,当发光二极管导通时发光。每个二极管就是一个笔划,若干个二极管发光时,就构成一个显示字符。若将单片机的I/O口与数码管的a-g和h相连,高电平(对应共阴极数码管)或低电平(对应共阳极数码管)的位对应的发光二极管就会亮,这样,I/O口输出不同的代码就可以控制数码管显示不同的字符。由于本设计只用了一个数码管显示数字0-9,所以直接将数码管的8个段码引脚连接至单片机的引脚上,利用单片机的引脚输出要显示的数字的代码,P2.0 P2.1控制数码段位选。

图3.6从机电路

3.4矩阵键盘电路

矩阵键盘电路如图3.7所示。单片机的P1口控制矩阵键盘。本设计采用4*4矩阵键盘。矩阵键盘的行线接P1.0-P1.3引脚,列线接P1.4-P1.7引脚。将P1.0-P1.3引脚置为高电平,P1.4-P1.7引脚依次置为低电平,当按键没有按下时,P1.0-P1.3口各引脚状态不变,一旦有按键按下,则P1.0-P1.3就会有引脚变为低电平,这样,通过读入P1.0-P1.3的状态就可得知是哪一个按键按下了,然后单片机根据该按键代表的功能执行相应的程序。

图3.7矩阵键盘电路

4系统软件设计

4.1软件设计应用环境

本设计软件的设计是在Keil C51的环境下编译的。Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。Keil C51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效、快速的特点。C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全继承到μVsion2的集成开发环境中,这个集成开发环境包含:编译器、汇编器、实时操作系统、项目管理器、调试器。μVsion2 IDE可为它们提供单一而灵活的开发环境。C51 V7版本是目前最高效、灵活的8051开发平台。它可以支持所有8051的衍生产品,也可以支持所有兼容的仿真器,同时支持其它第三方开发工具。因此,C51 V7版本无疑是8051开发用户的最佳选择。Keil C51编译器

在遵循ANSI标准的同时,为8051微控制器系列特别设计,语言上的扩展能让用户使用应用中的所有资源。

(1)存储器和特殊功能寄存器的存取。C51编译器可以实现对8051系列所有资源的操作。SFR的存取由sfr和sbit两个关键字来提供。变量可旋转到任一个地址空间。用关键字-at-还能把变量放入固定的存储器。存储模式决定了变量的存储类型。

连接定位器支持的代码区可达32个,这就允许用户在原有64K ROM的8051基础上扩展程序。在V2的编译器和许多高性能仿真器中,可以支持应用程序的调试。

(2)中断功能。C51允许用户使用C语言编写中断服务程序,快速进、出代码和寄存器区的转换功能使C语言中断功能更加高效。可再入功能是用关键字来定义呃。多任务、中断或非中断的代码要求必须具备可再入功能。

(3)灵活的指针。C51提供了灵活高效的指针。通用指针用3个字节来存储存储器类型及目标地址,可以在8051的任意存储区内存取任何变量。特殊指针在声明的同时已制定了存储器类型,指向某一特定的存储区域。由于地址的存储只需1-2字节,因此,指针存取非常迅速。

4.2软件设计流程

系统软件分为两个部分,主机软件设计和从机软件设计。主机软件设计流程图如图4.1所示。

图4.1 主机软件设计流程图

从机软件设计流程图如图4-2所示。

图4.2 从机软件设计流程图

4.3按键程序设计

单片机读取按键值的方法有两种:查询方式和中断方式。查询方式是利用键盘程序不断查询是否有按键按下,有按下则进入相应按键的子程序进行数据处理,没有则一直循环查询;中断方式是将按键动作与单片机的中断系统联系起来,有按键按下时,就引起单片机中断,使系统进入中断处理程序。本设计采用查询方式来处理读取按键值程序。程序如附录。

4.4串口通信

AT89S51的串行口是一个全双工的异步串行通信口,可以同时进行接收数据和发送数据,因为口内的接受缓冲器和发送缓冲器在物理上是隔离的,即是完全独立的。可以通过访问特殊功能寄存器SBUF,来访问接收缓冲器和发送缓冲器。接收缓冲器还具有双缓冲的功能,即它在接收第一个数据字节后,能接受第二个数据字节,但是,在它完成接收第二个数据字节之后,若第一个字节仍未取走,那么该字节数据将丢失。对串行口的控制主要包括对状态控制寄存器SCON、控制寄存器PCON、和串行数据寄存器SBUF的设置。

1、状态控制寄存器SCON:SCON是一个逐位定义的8位寄存器,由它控制串行通信的方式选择、接收和发送,指示串行口的状态。寄存器SCON既可字节寻址也可位寻址,字节

地址为98H,位地址为98H-9FH。其格式如下表4-1所示:

表4.3 SCON地址格式

SM0,SM1:串行口工作方式选择位;

SM2:允许方式2、3中的多处理机通信位;

REN:允许串行接收位,置位时,允许串行接收,清除时,禁止串行接收,可用软件置位/清除;

TB8:方式2和方式3中要发送的第9位数据,可用软件置位/清除;

RB8:方式3和方式3中接收的第9位数据。方式1中接收的是停止位,方式0中不使用这一位。

TI:发送中断标志位,硬件置位,软件清除。方式0中,在发送第8位末尾置位,在其他方式时,在发送停止位开始时设置;

RI:接收中断标志位。硬件置位,软件清除。方式0中,在接收第8位末尾置位,在其他方式时,在接收停止位中间设置。

2、控制寄存器PCON:PCON是一个逐位定义的8位寄存器,目前仅有几位有定义,其中

表4.4 PCON地址格式

SMOD:串行通信波特率系数控制位,当SMOD=1时,使波特率加倍。寄存器PCON 的地址为87H,只能字节寻址。

3、串行数据寄存器SBUF:SBUF包含在物理上隔离的两个8位寄存器:发送数据寄存器和

表4.5 数据寄存器格式

串行口控制寄存器SCON中的SM2为方式2或方式3的多机通信控制位,当串行口以方式2或方式3工作时,若SM2程控位为1,此时只有当串行口就收到的第9位数据RB8=1时,才置1中断标志RI,若接收到的RB8=0,则不产生中断标志,应用MCS-51串行口的这个标志,便可实现多机通信。

在一个多机系统中有一个主机和二个从机组成的多机系统,从机的地址分别为00H,01H,从机系统由初始化程序将串行口编程为方式2或方式3接收,即9位异步通信方式,且置“1”SM2和REN,允许串行口中断。在主机和某一个从机通信之前,先将从机地址发送给各个从机系统。接着才传送数据或命令,主机发出的地址信息的第9位为1,数据(包括命令)信息的第9位为0,当主机向各从机发送地址时,各从机的串行口接收到的第9位的信息RB8为1,置“1”RI中断标志位,各从机80C51响应中断,执行中断服务程序。在中断服务程序中,判断主机送来的地址是否和本机地址相符合,若为本机的地址,则清“0”SM2位,准备接收主机的数据或命令;若地址不相符,则保持SM2=1状态。接着主机发送数据,此时各个从机串行口接收到的RB8=0;只有与前面地址相符合的从机系统(即已清“0”SM2位的从机)才能激活中断标志位RI,从而进入中断服务程序,在中断服务程序中接收主机的数据或执行主机的命令,实现和主机的信息传送;其他的从机因SM2保持为1,又RB8=0不激活中断标志RI,所接收的数据丢失不作处理,从而保证了主机和从机间通信的正确性。

本次设计多机系统为主从式,由主机控制多机之间的通信,从机和从机之间的通信只能经主机才能实现。串口发送数据程序如程序如附录。

4.5从机数码管显示程序设计

根据数码管的驱动方式不同,数码管送显方式有两种:静态送显和动态送显。静态显示驱动:静态驱动也称直流驱动,在静态显示驱动方式下,数码管的共阴极或共阳极共同接地或接电源,每个数码管的段选线与8位的单片机并口连接。静态显示驱动方式占用的单片机I/O端口比较多,一般在实用中不采用。

动态显示驱动:数码管动态显示方式是将所有的段选线并联在一起,由一个8位I/O口来控制,再利用单片机的其他I/O口来作为数码管的位选线。当单片机输出显示数字的译码时,哪个数码管显示由单片机对位选通电路的控制来选择,所以将欲显示的数码管的位选通端选通,该数码管就会显示,其它数码管均不会亮。通过轮流控制各个数码管的选通端使数码管轮流显示。在显示过程中,每个数码管的显示时间为1-2ms,由于人们的视觉暂留现象及发光二极管的余晖效应,只要扫描的速度够快,给人的印象就是同时点亮的,而且不会有闪烁感。

本设计中需要2位数码管显示,采用动态显示方式。程序如附录。

5仿真与性能分析

5.1系统仿真过程

首先根据电路原理图利用Protues软件画出仿真图。打开proteus软件,将所需要用到的元器件添加到左侧的元器件列表DEVICE中。单击按钮“P”,即可弹出元器件库对话框,可以从中选择元器件。输入元器件名称,可以选择所用元器件,选中后,单击“OK”即可。选完元器件后,在元器件列表里回显示出来。按照电路原理图将仿真图画好,如图5.1所示。

图5.1仿真图

5.2仿真结果

运行后,按下主机1号键,开始主机与1号从机通信。再按下数字2,从机数码管显示12。效果如图5.2,5.3所示。

图5.2主机数码显示

图5.3从机数码显示

6心得体会

在本次毕业设计,我通过基于典型单片机AT89C51的设计和应用,对于单片机工作原理、功能有了宏观的了解,并对单片机汇编程序的应用有了新的、进一步的认识。

在本次设计的过程中,我发现很多的问题,给我的感觉就是下手很难,很不顺手,看似很简单的电路,要动手把它给设计出来,是很难的一件事,主要原因是我们没有经常动手设计过电路。另外单片机系统的知识似懂非懂,而且很多知识当时弄明白了,现在要用的时候又不记得,造成我用了大量的时间去查阅各种资料和程序命令,因此整个过程时间安排不合理。由于设计的计划没有安排好,设计的时间极为仓促,尤其是在硬件调试的过程中出现了很大的问题。另外资料的查找也是一大难题,这就要求我们在以后的学习中,应该注意到这一点,更重要的是我们要学会把从书本中学到的知识和实际的电路联系起来,这不论是对我们以后

的就业还是学习,都会起到很大的促进和帮助。

本文介绍了一种基于单片机的多机通信的设计方法,论文首先介绍了多机通信的应用及研究现状、串口通信的概念,主要是串口通信的方式和重要的数据位说明,接着提出了利用串口通信实现多机通信的可行的设计方案,并从硬件电路设计和软件程序设计两个方面详细介绍了整个设计的原理及设计过程,最后完成了系统的仿真调试,可成功运行,从而验证了方案的可行性。

当然,本设计还有很多不足之处,功能上还不够完善,在此基础上还可以进行系统扩展,以使整个设计的功能更加完善

参考文献

[1] 谢沅清,解月珍.电子技术基础.人民邮电出版社,1999.

[2] 何立民. 单片机应用技术选编. 北京航空航天大学出版社,2006.

[3] 谭浩强.C程序设计(第二版).清华大学出版社,2001.1.

[4] 张毅刚,彭喜源.MCS-51单片机应用设计.哈尔滨工业大学出版社,1997.

[5] 胡汉才.单片机原理及接口技术.清华大学出版社,1996.

[6] 孙江宏等. Protel 99 电路设计与应用.机械工业出版社,2001.2.

[7] 黄亮.基于AT89C51单片机的串口通信程序的设计.电子制作,2006年07期.

[8] 刘锡东,黄丽民.用C语言实现串口通信技术.山东商业职业技术学院学报,2007年02期.

[9] 栗小宽,韩东起,李霞.51系列单片机中模拟串行口的C语言实现.科技咨询导报,2007年17期.

[10] 禹言春,张丽丽,王贺涛.单片机的多机通信.安徽农学通报,2007年09期.

[11] 郭天祥.新概念51单片机C语言教程:入门、提高、开发、拓展全攻略.北京:电子工业出版社,2009

[12]彭伟.单片机C语言程序设计实训100例.电子工业出版社,2011

[13]杜洋.爱上单片机.人民邮电出版社,2012

[14]于永.51单片机C语言常用模块与综合系统设计.电子工业出版社,2012

[15]高卫东.51单片机原理与实践.北京航空航天大学出版社,2011

[16]潘永雄.新编单片机原理及应用.西安电子科技大学出版社,20

系统原理图

C程序

主机程序:

#include

#define uchar unsigned char

#define uint unsigned int

sbit LED1=P3^4;

sbit LED2=P3^5;

sbit MCU1=P2^2;

sbit MCU2=P2^3;

uchar tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c}; uchar keyscan(void);

void delayms(uchar t);

void init_serial(void);

void SBUFSend(uchar key);

void senddat(uchar addr,uchar dat);

void display(uchar addr,uchar dat);

uchar keyscan()

{

uchar temp,key;

P1=0xfe;

temp=P1;

temp=temp&0xf0;

if(temp!=0xf0)

{

delayms(10);

if(temp!=0xf0)

{

temp=P1;

switch(temp)

{

case 0xee:key=0;break;

case 0xde:key=1;break;

case 0xbe:key=2;break;

case 0x7e:key=3;break;

}

while(temp!=0xf0)

{

temp=P1;

temp=temp&0xf0;

}

}

}

P1=0xfd;

temp=P1;

temp=temp&0xf0;

if(temp!=0xf0)

{

delayms(10);

if(temp!=0xf0)

{

temp=P1;

switch(temp)

{

case 0xed:key=4;break;

case 0xdd:key=5;break;

case 0xbd:key=6;break;

case 0x7d:key=7;break;

}

while(temp!=0xf0)

{

temp=P1;

temp=temp&0xf0;

}

}

}

P1=0xfb;

temp=P1;

temp=temp&0xf0;

if(temp!=0xf0)

{

delayms(10);

if(temp!=0xf0)

{

temp=P1;

switch(temp)

{

case 0xeb:key=8;break;

case 0xdb:key=9;break;

case 0xbb:key=10;break;

case 0x7b:key=11;break;

}

while(temp!=0xf0)

{

temp=P1;

temp=temp&0xf0;

}

}

}

P1=0xf7;

temp=P1;

temp=temp&0xf0;

if(temp!=0xf0)

{

delayms(10);

if(temp!=0xf0)

{

temp=P1;

switch(temp)

{

case 0xe7:key=12;break;

case 0xd7:key=13;break;

case 0xb7:key=14;break;

case 0x77:key=15;break;

}

while(temp!=0xf0)

{

temp=P1;

temp=temp&0xf0;

}

}

}

return key;

}

void delayms(uchar t)

{

uchar i,j;

for(i=0;i

for(j=0;j<110;j++);

}

void init_serial(void)

{

TMOD=0X20;

TH1=0XFA;

TL1=0XFA;

PCON=0X80;

SCON=0X50;

TR1=1;

ES=1;

EA=1;

}

void SBUFSend(uchar key)

{

SBUF=key;

while(TI==0);

TI=0;

}

void senddat(uchar addr,uchar dat) {

TB8=1;

SBUFSend(addr);

TB8=0;

SBUFSend(dat);

}

void display(uchar addr,uchar dat) {

P0=tab[addr];

LED1=0;

LED2=1;

delayms(1);

P0=0x00;

P0=tab[dat];

LED1=1;

LED2=0;

delayms(1);

P0=0X00;

}

void main()

{

char addr,dat;

init_serial();

dat=keyscan();

while(1){

if(MCU1==0)

{

addr=1;

dat=keyscan();

senddat(1,dat);

display(1,dat);

}

if(MCU2==0)

{

addr=2;

dat=keyscan();

senddat(2,dat);

display(2,dat);

}

}

}

void serial_int() interrupt 4

{

if(RI==1)

{

RI=0;

}

else TI=0;

}

从机1程序:

#include

#define uchar unsigned char

sbit LED1=P2^0;

sbit LED2=P2^1;

uchar DispCode[10]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; //---------------------------------

void SerialInit()

{

SCON=0xf0; //方式3 允许接收,SM2=1

PCON=0x00; //串口波特率不加倍

TMOD=0x20; //定时器1,方式2

TH1=0xfd; //波特率为9600

TL1=0xfd;

TR1=1; //启动定时器

ES=1;

EA=1;

}

//-------------------------------

void SBUFSend(uchar Ch)

{

SBUF=Ch;

while(TI==0)

{

}

TI=0;

}

//--------------------------------

void main()

{

SerialInit();

while(1)

{

}

}

//--------------------------------

void SerialServer() interrupt 4

{

uchar Ch;

if(RI==1)

{ uchar i;

RI=0;

Ch=SBUF;

if(RB8==1)

{

if(Ch==1)

{

SM2=0;

SBUFSend(1);

LED1=0;

LED2=1;

for(i=500;i>0;i--)

P0=DispCode[Ch];

}

else

{

SM2=1;

}

}

if(RB8==0)

{ P0=0x00;

LED1=1;

LED2=0;

for(i=500;i>0;i--)

P0=DispCode[Ch];

SM2=1;

}

}

}

从机2程序:

#include

#define uchar unsigned char

sbit LED1=P2^0;

sbit LED2=P2^1;

uchar DispCode[10]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; //---------------------------------

void SerialInit()

{

SCON=0xf0; //方式3 允许接收,SM2=1

PCON=0x00; //串口波特率不加倍

TMOD=0x20; //定时器1,方式2

TH1=0xfd; //波特率为9600

TL1=0xfd;

TR1=1; //启动定时器

ES=1;

EA=1;

}

//-------------------------------

void SBUFSend(uchar Ch)

{

SBUF=Ch;

while(TI==0)

{

}

TI=0;

}

//--------------------------------

通信电子线路课程设计

通信电子线路课程设计中波电台发射系统与接收系统设计 学院:******* 专业:******* 姓名:**** 学号:******

一.引言 这学期,我们学习了《通信电子线路》这门课,让我对无线电通信方面的知识有了一定的认识与了解。通过这次的课程设计,可以来检验和考察自己理论知识的掌握情况,同时,在本课设结合Multisim软件来对中波电台发射机与接收机电路的设计与调试方法进行研究。既帮助我将理论变成实践,也使自己加深了对理论知识的理解,提高自己的设计能力 二.发射机与接收机原理及原理框图 1.发射机原理及原理框图 发射机的主要任务是完成有用的低频信号对高频载波的调制,将其变为在某一中心频率上具有一定带宽、适合通过天线发射的电磁波。 通常,发射机包括三个部分:高频部分,低频部分,和电源部分。 高频部分一般包括主振荡器、缓冲放大、倍频器、中间放大、功放推动级与末级功放。主振器的作用是产生频率稳定的载波。为了提高频率稳定性,主振级往往采用石英晶体振荡器,并在它后面加上缓冲级,以削弱后级对主振器的影响。低频部分包括话筒、低频电压放大级、低频功率放大级与末级低频功率放大级。低频信号通过逐渐放大,在末级功放处获得所需的功率电平,以便对高频末级功率放大器进行调制。因此,末级低频功率放大级也叫调制器。发射机系统原理框图如下图: 设计指标: 设计目的是要求掌握最基本的小功率调幅发射系统的设计与安装调试。 技术指标:载波频率535-1605KHz,载波频率稳定度不低于10-3,输出负载51Ω,总的输出功率50mW,调幅指数30%~80%。调制频率500Hz~10kHz。 本设计可提供的器件如下,参数请查询芯片数据手册。所提供的芯片仅供参考,可以选择其他替代芯片。 高频小功率晶体管3DG6 高频小功率晶体管3DG12 集成模拟乘法器XCC,MC1496 高频磁环NXO-100 运算放大器μA74l 集成振荡电路E16483 原理及原理框图 接收机的主要任务是从已调制AM波中解调出原始有用信号,主要由输

基于51单片机的多机通信系统设计

单片机多机通信系统 一、引言 随着单片机技术的不断发展,单片机的应用已经从单机向多机互联化方向发展。单片机在实时数据采集和数据处理方面,有着成本低、能满足一般要求、开发周期短等优点,其在智能家居、计算机的网络通信与数据传输、工业控制自动化等方面有着广泛的应用。 本系统是面向智能家居应用而设计的。在初期,采用红外无线通信方式,其传输距离短,适于一般家庭应用,且成本相对较低;待方案成熟、成本允许,可以改用GSM无线通信方式。 二、系统原理及方案设计 1 、系统框架介绍 本系统为基于51单片机的多机红外无线通信系统,由三个51单片机模块组成。其中一个作为主机(即上位机),负责接收来自从机1(即下位机)采集的数据信息,以及向从机2(即下位机)发送控制信息。从机1是数据采集模块,采集温度、光强等室内数据,并将其发送给主机。主机经分析处理,作出相应判断,并给从机2发送控制信息,使由从机2控制的电机作出相应反应,调节室内环境状况。 系统总体框图如下图1所示,图2为红外收发模块简图:

图1 系统总体框图 图2 红外收发模块简图 2 、多机通信原理介绍 在多机通信系统中,要保证主机与从机间可靠的通信,必须要让通信接口具有识别功能,51单片机串行口控制寄存器SCON中的控制位SM2正是为了满足这一要求而设置的。当串行口以方式2或方式3工作时,发送或接收的每一帧信息都是11位的,其中除了包含SBUF寄存器传送的8位数据之外,还包含一个可编程的第9位数据TB8或RB8。主机可以通过对TB8赋予1或0,来区别发送的是数据帧还是地址帧。 根据串行口接收有效条件可知,若从机的SCON控制位SM2为1,则当接收的是地址帧时,接收数据将被装入SBUF并将RI标志置1,

通信原理课程设计报告书

通信原理课程设计 题目:脉冲编码调制(PCM)系统设计与仿真 院(系):电气与信息工程学院 班级:电信04-6班 姓名:朱明录 学号: 0402020608 指导教师:赵金宪 教师职称:教授

摘要 : SystemView 仿真软件可以实现多层次的通信系统仿真。脉冲编码调制(PCM )是现 代语音通信中数字化的重要编码方式。利用SystemView 实现脉冲编码调制(PCM)仿真,可以为硬件电路实现提供理论依据。通过仿真展示了PCM 编码实现的设计思路及具体过程,并加以进行分析。 关键词: PCM 编译码 1、引言 随着电子技术和计算机技术的发展,仿真技术得到了广泛的应用。基于信号的用于通信系统的动态仿真软件SystemView 具有强大的功能,可以满足从底层到高层不同层次的设计、分析使用,并且提供了嵌入式的模块分析方法,形成多层系统,使系统设计更加简洁明了,便于完成复杂系统的设计。 SystemView 具有良好的交互界面,通过分析窗口和示波器模拟等方法,提供了一个可视的仿真过程,不仅在工程上得到应用,在教学领域也得到认可,尤其在信号分析、通信系统等领域。其可以实现复杂的模拟、数字及数模混合电路及各种速率系统,并提供了内容丰富的基本库和专业库。 本文主要阐述了如何利用SystemView 实现脉冲编码调制(PCM )。系统的实现通过模块分层实现,模块主要由PCM 编码模块、PCM 译码模块、及逻辑时钟控制信号构成。通过仿真设计电路,分析电路仿真结果,为最终硬件实现提供理论依据。 2、系统介绍 PCM 即脉冲编码调制,在通信系统中完成将语音信号数字化功能。PCM 的实现主要包括三个步骤完成:抽样、量化、编码。分别完成时间上离散、幅度上离散、及量化信号的二进制表示。根据CCITT 的建议,为改善小信号量化性能,采用压扩非均匀量化,有两种建议方式,分别为A 律和μ律方式,我国采用了A 律方式,由于A 律压缩实现复杂,常使用 13 折线法编码,采用非均匀量化PCM 编码示意图见图1。 图1 PCM 原理框图 下面将介绍PCM 编码中抽样、量化及编码的原理: (a) 抽样 所谓抽样,就是对模拟信号进行周期性扫描,把时间上连续的信号变成时间上离散的信号。该模拟信号经过抽样后还应当包含原信号中所有信息,也就是说能无失真的恢复原模拟信号。它的抽样速率的下限是由抽样定理确定的。 (b) 量化 从数学上来看,量化就是把一个连续幅度值的无限数集合映射成一个离散幅度值的有限数集合。如图2所示,量化器Q 输出L 个量化值k y ,k=1,2,3,…,L 。k y 常称为重建电

AVR单片机串口多机通讯程序

A VR单片机串口多机通讯程序 [日期:2010-09-01 ] [来源:本站原创作者:admin] [字体:大中小] (投递新闻) 在多机通信过程中,所有设备的RS232接口是并在通信线上的,其中只能有一个设备为主机,其他为从机,通信由主机发起。数据帧一般采用1位起始位、9位数据位,其中第9位(RXB8)被用作为表征该帧是地址帧还是数据帧。当帧类型表征位为“1”时,表示该帧数据为一个地址帧;当帧类型表征位为“0”时,表示这个帧为一个数据帧。 在A VR中,通过设置从机的UCSRA寄存器中标志位MPCM,可以使能USART接收器对接收的数据帧进行过滤的功能。如果使能了过滤功能,从机接收器对接收到的那些不是地址信息帧的数据帧将进行过滤,不将其放入接收缓冲器中,这在多机通信中有效的方便了从机MCU处理数据帧程序的编写(同标准51 结构相比)。而发送器则不受MPCM位设置的影响。 多机通信模式允许多个从机并在通信线路上,接收一个主机发出的数据。通过对接收到的地址帧中的地址进行解码,确定哪个从机被主机寻址。如果某个从机被主机寻址,它将接收接下来主机发出的数据帧,而其它的从机将忽略数据帧,直到再次接收到一个地址帧。(从机地址是由各个从机自己的软件决定的)。 对于在多机通信系统中的主机MCU,可以设置使用9位数据帧结构(UCSZ=7)。当发送地址帧时,置第9位为“1”;发送数据帧时,置第9位为“0”。在这种情况下,从机也必须设置成接收9位数据帧结构。 多机通信方式的数据交换过程如下: 1)设置所有从机工作在多机通信模式(MPCM=1)。 2) 通信开始是由主机先发送一个地址帧,如8位数据为0X01(1号从机地址),第9位=“1”,呼叫1号从机。 3)所有从机都接收和读取该主机发出的地址帧。在所有从机的MCU中,RXC标志位被置位,表示接收到地址帧。 4)每一个从机MCU读UDR寄存器,并判断自己是否被主机寻址。如果被寻址,清UCSAR寄存器中的MPCM位,等待接收数据;否则保持MPCM为“1”,等待下一个地址帧的接收(该步应由用户软件处理实现): A)作为1号从机的MCU处理过程为:收到地址帧后,判定读取UDR数据0X01为自己的地址,将MPCM位置“0”,接收之后所有主机下发的数据帧,直到下一个地址帧为止。 B)其它从机MCU的处理过程:收到地址帧后,判定读取UDR数据0X01不是自己的地址,将MPCM位置“1”,这样他们将忽略主机随后发送的数据帧,直到主机再次发送地址帧。 5)当被寻址的从机MCU接收完最后一个数据帧后,将MPCM位置位,等待下一个地址帧的出现(该步也应由用户软件处理实现),然后从步骤2开始重复。 [转]例子; 通讯规则: 1:时钟7.3728 MHz/波特率9600/9个数据位/奇校验/1个停止位/硬件多机通讯功能/ 2:通讯连接采用硬件MAX485,双向单工

单片机多机通信实现

单片机多机通信实现 1、设计要求 三片单片机利用串行口进行串行通信:串行通信的波特率为9600bit/s。串行口工作方式为方式1的单工串行通信。 2、设计方案 一个主机和两个从机,主机通过按键选择要通信的从机,按键确认后通过矩阵键盘输入要传输的信息,从机接收主机发送的信息并发回长度校验码给主机,主机确认校验信息是否正确,若正确,主机液晶显示“send:信息”和从机数,从机液晶显示所接收的信息;若错误则主机从发信息,重复前面的步骤。 3、硬件电路设计 3.1 单片机最小系统的设计 本系统共用三块单片机,每块单片机均选用AT89S52,最小系统也都一样。由于三块单片机的主要任务是通信,为了得到准确的波特率,采用振荡频率为11.0592MHz的晶振,再接两个30pF的瓷片电容即可构成单片机的时钟电路。 单片机最小系统电路如下: 图3-1 单片机最小系统电路 复位电路也可以换成看门狗电路实现,可使单片机可靠的复位。为了简化电路设计,本系统采用简单方法,可使单片机上电复位,此外可以通过按键手动复位。单片机上电即可复位,R1与C3的充电时间大于两倍的机器周期,使RST引脚有足够长的时间保存高电平,使单片机可靠的复位。正常工作时,按下按键SW1就可以使单片机复位。 3.2 矩阵键盘电路设计

图3-2 矩阵键盘电路 P1口接4×4的矩阵键盘,共16个按键,分别为0~C及“开始通信”,“选择从机”和“输入信息”键。P1.0~P1.3接矩阵键盘的行,P1.4~P1.7接矩阵键盘的列。 3.3 液晶显示电路设计 液晶显示电路如下图: 图3-3 液晶LCD1602显示电路 P0口上拉10K×8的排阻,自己画的排阻符号如下: 图3-4 排阻符号 排阻具有九个引脚,一个公共端,另外八个脚分别接到需要接上拉电阻的单片机的P0口。排阻相当于8个大小均为10K的电阻,在电路中主要其电平转化作用,通过的电流很小,每只电阻的功耗也很小。如接5V电源,每只电阻的电流约为0.5mA,很小,但是由于P0口是接液晶,不用接排阻也能实现,本着节约的原则在本设计中没有接排阻。 主机整体原理图如下:

课程设计:通信工程课程设计解析

网络工程课程设计 设计说明书 2B1Q编码与译码的设计与仿真 学生姓名李成 学号1118064050 班级网络1102班 成绩 指导教师李征 数学与计算机科学学院 2013年 9 月 13 日

课程设计任务书 2013 —2014 学年第一学期 课程设计名称:网络工程课程设计 课程设计题目:2B1Q编码与译码的设计与仿真 完成期限:自2013 年9 月 1 日至2013 年9 月14 日共 2 周 设计内容: 本次课程设计的任务是2B1Q编码与译码的设计,并用MA TLAB仿真软件进行验证,要求能根据随机信源输入的二进制信息序列给出对应的编码译码输出结果,并以图形化的方式显示出波形,并且要求对设计的内容有必要的说明。 通过本次的实践,要求学生完成以下任务: (一)对课本知识的全面复习,了解2B1Q的编码与译码原理; (二)对MA TLAB仿真软件的学习,能够使用该工具进行2B1Q的仿真验证; (三)通过交流合作,完成2B1Q编码与译码的设计,并用MA TLAB软件进行仿真验证; (四)课程设计的结果全面正确,功能模块清晰分明; (五)加强团队合作精神,开拓创新能力; (六)文档资料完整规范。 指导教师:李征教研室负责人: 课程设计评阅

摘要 对2B1Q的编码与译码进行设计,利用Matlab软件进行2B1Q编码与译码的仿真实验验证。在2B1Q中,2个二进制码元用1个四元码表示,即可以用10表示1,01表示0,即把1变换为1/0中间下降沿代表1,把0变换为0/1中间上升沿表示0。Manchester码是一种用跳变沿(而非电平)来表示要传输的二进制信息(0或1),一般规定在位元中间用下跳变表示“1”,用上跳变表示“0”。因此,可以用曼彻斯特码的编码规律来解决这一课设问题。 关键词:2B1Q;Manchester码;跳变沿

51单片机多机通信课程设计

《单片机应用与仿真训练》设计报告 单片机多机通信 姓名: 学号: 专业班级: 指导老师: 所在学院: 2011年7月5日

摘要 本设计是基于AT89S52单片机温度检测传输的三机通信系统,有三个单片机组成,其中一个作为主机(上位机),控制并负责接收来自从机1号和从机2号采集的数据信息,并显示在数码管上。由主机发送控制信息(通过按键控制),确定是接收来自想要得到各从机数据。从机1号和2号是数据采集模块,用来采集室内或室外温度信息,并通过通信协议传送给主机。为保证三机通信可靠性,通信口要有识别功能,51单片机串行口控制寄存器SCON中SM2位正是满足这一要求而设置的。当串行口以工作方式三工作时,接收和发送的信息都是11位数据,既包含SBUF寄存器传送的8位数据,还包括SCON中可编程第9位数据即TB8或RB8,主机可通过设定TB8是0或1,来区别发送的是地址还是数据。从机都先将SCON中的SM2设置为1,待主机发送地址信息,与本身的地址对照,如果是,则令从机SM2为0,准备接收主机信息并发送温度信息,如果不是,则继续等待。主机通过中断口接收数据,处理后显示在数码管上。此次设计由于只有一个18b20温度传感器,这里用三个任意的数据代替从机2采集温度数据,由于传输距离较短,这里不用MAX232,直接将主机的发送端接从机接收端,主机接收端连接从机发射端,仿真结果正常显示,实验结果正常。

目录 1概述 (1) 1.1设计概述 (1) 1.2多机通信基本原理 (1) 1.3 通信协议 (2) 2系统总体方案及硬件设计 (3) 2.1总体设计方案 (3) 2.2硬件电路设计 (3) 3软件设计 (7) 3.1控制流程图 (7) 3.2串行口采集步骤 (7) 3.3软件流程图 (8) PROTEUS仿真 (9) 课程设计体会 (11) 参考文献: (12) 附件1:主机A源程序代码 (13) 附件2:原理图 (24)

通信电子线路课程设计功率放大器

高频电子线路课程设计说明书高频功率放大器 院、部:电气与信息工程学院 学生姓名:汤生平 指导教师:张松华职称副教授 专业:通信工程 班级:通信1103班 完成时间:2013年12月15日

摘要 高频功率放大器是发送设备的重要组成部分之一,通信电路中,为了弥补信号在无线传输过程中的衰耗要求发射机具有较大的功率输出,通信距离越远,要求输出功率越大。在高频范围内,为了获得足够大的高频输出功率,就要采用高频功率放大器。由于高频功率放大器的工作频率高,相对频带窄,所以一般采用选频网络作为负载回路。 本课程设计的高频功率放大器电路由两极功率放大器组成,第一级为甲类功率放大器,第二级为丙类谐振功率放大器。分别对甲类功率放大器和丙类谐振功率放大器设计,通过给定的技术指标要求确定甲类功率放大器和丙类谐振功率放大器设计的工作状态和计算出电路中各器件参数,从而设计出完整高频功率放大器电路,再利用电子设计软件multisim对电路仿真。通过仿真结果分析电路特性 ,使电路得到进一步完善。报告中首先给出设计目标和电路功能分析,然后讨论各级电路具体设计和原理图,后给出了实际搭建电路测试的数据及分析,最后总结实验并给出了PCB 绘图。 关键词:高频功率放大器;甲类功放;丙类功放;选频回路

ABSTRACT High frequency power amplifier is one of the important components of transmission equipment, communications circuits, in order to compensate for signal transmission in the wireless transmitter in the attenuation requirements have greater power output, communication distance, the greater the required output power. In the high-frequency range, in order to obtain a large enough frequency output power, we must use high-frequency power amplifier. Due to the high frequency power amplifier high frequency, relatively narrow band, so commonly used frequency-selective network as a load circuit. The curriculum design of high frequency power amplifier circuit by bipolar power amplifier, the first class is class a power amplifier, second class C class tuned power amplifier. On class a power amplifier and C class tuned power amplifier design, through the given technical requirements to determine the class a power amplifier and a C class tuned power amplifier design working state and calculate circuit in the device parameters, and design integrity of high frequency power amplifier circuit, and the use of Electronic Design Software Multisim for circuit simulation. Through the analysis of simulation results of circuit characteristics, so that the circuit has been further improved. The report first gives the design goal and function of circuit analysis, and then discuss the various circuit design and schematics, gives the actual circuit structures test data and analysis, finally summarizes experimental and gives the PCB drawing. Key words: high frequency power amplifier; class a power amplifier;class c power amplifier;frequency selective network;

数据通信课程设计报告

《计算机控制技术》 课程设计 目录一....................................................................... 课程设计目的.. (3) 二....................................................................... 课程设计题目和要求. (3) 2.1 课程设计题目 2.2课程设计要求 三....................................................................... 设计内容 (4) 3.1 设计方案的选定与说明 3.2 系统总体框图 3.3论述方案的各部分工作原理; 3.4 设计说明书 四....................................................................... 设

计总结 (11) 参考书目 (11)

一.课程设计目的 通过本课程设计主要目的是实现两台西门子1200PLC之间的通信,利用PLC1发 送指令给PLC2 PLC2接到指令后控制电动机的启停,主要训练和培养学生的以下能 力: (1).查阅资料:搜集与本设计有关的资料(包括从已发表的文献中或者通过网络 交流平台搜集)的能力; (2).软件使用:了解并掌握西门子S7-1200软件的使用,明白网络通信实现的机 理与过程; (3).用简洁的文字,清晰的图表来表达自己设计思想的能力。 .课程设计题目和要求 2.1课程设计题目 题目:当一台S7-1200上发出一个启停信号时,另一台S7-1200收到信号,并启停一台电动机 1)主要软硬件配置 一套Step7 Basic v10.5(或以上版本),一根网线,2台CPU 1214C 2)相关指令:TSEND_C (发送数据指令),TRCV_C(接受数据指令) 3)硬件组态与编程 新建工程--- 添加硬件--- 用子网连接两个cpu ----- 编写主控cpu程序----- 调整主控cpu连接参数 --- 编写另一台cpu程序----- 调整另一台cpu连接参数

基于89C52单片机的多机通信

89C52单片机多机通信 一、设置定时器的工作方式及初值: TMOD=0x20; TH1=0xF4; TL1=0xF4; 二、设置串口寄存器的工作方式 SCON=0x90; PCON|=0x80; 其中SCON各位为 PCON各位为 SM2=1时:RB8=1 产生中断 RB8=0 不产生中断 SM2=0时,产生中断 四、多机通信过称:主机>>>>>>地址码+RB8=1>>>>>从机 从机判断地址码与之对应则SM2=0 主机>>>>>>数据码+RB8=0>>>>>从机 从机接收数据 五、参考程序(经过实验认证) 主机 #include int a;

void init() {EA=0; TMOD=0x20; TH1=0xF4; TL1=0xF4; SCON=0x90; PCON|=0x80; EA=1; ES=1; ET1=1; TR1=1; TI=0; RI=0; SM2=1; } void delay() {int j,k; for(j=0;j<300;j++) for(k=0;k<1000;k++); } main() {init(); TB8=1; SBUF=0x01; delay(); TB8=0; SBUF=0x88; delay();

TB8=0x02; SBUF=0x66; while(1); } 从机1:地址0x01 #include int a; void init() {EA=0; TMOD=0x20; TH1=0xF4; TL1=0xF4; SCON=0x90; PCON|=0x80; EA=1; ES=1; ET1=1; TR1=1; TI=0; RI=0; SM2=1; } void delay() {int j,k; for(j=0;j<1000;j++) for(k=0;k<1000;k++); } main()

双机通信课程设计

西安邮电大学 单片机课程设计报告书题目:双机通信系统

、系统整体设计 1. 系统设计思路 双机通信的实质就是解决两单片机串行通信问题。针对于89C52单片机全双工异步 串行通信口,我们采用单片机直接交叉互连的串行通信方式。 考虑到设计应用于短距离传输、两单片机具有相同的数据格式及电平且为使设计简 单,我们最终决定采用方式二单片机直接交叉连接的串行通信方式, 上位机发送的数据 由串行口 TXD 端输出,直接由下位机的串行口数据接收端 RXD 接攵。需要注意的是一定 要保证主从机相同的数据传输速率,即要求设置相同的波特率。电路分为数码管显示模 块,以及单片机工作的基本复位、晶振模块。 2. 系统设计原理 (1)串行通信 一个是数据传送,另一个是数据转换。所谓数 所谓数据转换就是指单片机在接收数据时,如 单片机在发送 数据时,如何把并行数据转换为 串行数据进行发送。单片机的串行通信使用的是异步串 行通信, 所谓异步就是指发送端 和接收端使用的不是同一个时钟。异步串行通信通常以字符(或者字节)为单位组成字 符帧传送。字符帧由发送端一帧一帧地传送, 接收端通过传输线一帧一帧地接收。 而对 于两个单片机之间的串行通信,由于具有相同的数据格式及电平且是短距离通信则不必 要使用一些电平转化芯片(如 max232等)便可直接实现串行通讯,需要注意的是两单 片机硬件要共地,软件中需要设置相同波特率 STC89C5单片机有一个全双工的异步串行通信口,串行结构如下: ①数据缓冲器(SBUF 接受或发送的数据都要先送到 SBUF 缓存。有两个,一个缓存,另一个接受,用同 一直接地址99H,发送时用指令将数据送到 SBUF 即可启动发送;接收时用指令将 SBUF 中接收到的数据取出。 ②串行控制寄存器(SCON SCO 用于串行通信方式的选择,收发控制及状态指示,各位含义如下: SM0,SM1串行接口工作方式选择位,这两位组合成 00, 01,10,11对应于工作方 式0、1、2、3。串行接口工作方式特点见下表1. 表1串行口工作方式表 串行数据通信要解决两个关键问题, 据传送就是指数据以什么形式进行传送。 何把接收到的串行数据转化为并行数据,

通信电子电路课程设计

二○一二~二○一三学年第二学期 信息科学与工程学院 课程设计报告书 课程名称:通信电子电路课程设计 班级:电子信息工程(DB)2010级 2班小组成员:田雨晴 201012135045 张泽玮 201012135072 刘放 201012135074 吴尧 200912135103 指导教师:李文翔 学时学分: 1周 1学分 二○一三年二月

目录 一、设计目的 (3) 二、设计内容 (3) 三、设计原理与过程 (3) 3.1、原理 (3) 3.2、确定电路形式设置静态工作点 (4) 3.3、计算主振回路元件值 (5) 3.4、设置静态工作点 (5) 3.5、计算调频电路元件值 (6) 3.6、计算调制信号的幅度 (7) 四、安装与调试过程 (7) 4.1、安装要点 (7) 4.3、测试点选择 (8) 4.3、调试方法 (8) 五、心得体会 (8) 六、任务分配 (9)

一.设计目的 通过上个学期的通信电子电路的学习,我们以小组为单位展开LC 震荡电路的设计工作。通过此次课程设计,锻炼我们的团队合作,收集资料,软件使用,理论计算等各方面的能力,让我们的综合素质进一步提高。 二.设计内容 题目一 LC 高频振荡器与变容二极管调频电路设计 已知条件 +Vcc=12V ,高频三极管3DGG100,变容二极管2CCIC 。 性能指标 主振频率MHz 5f 0=,频率稳定度400/510/f f -?≤?小时,主振级的输出电压1V o V ≥,最大频偏kHz 10m =?f 报告要求 给出详细的原理分析,计算步骤,电路图和结果分析。 仪器设备 函数信号发生器/计数器EE1641B 调制度测量仪HP8901A 高频信号发生器HP8640B 超高频毫伏表DA - 36A 双踪示波器COS5020 无感起子数字万用表UT2003 高频Q 表 环形铁氧体高频变压器 三.设计原理与过程 3.1原理 振荡器主要分为RC ,LC 振荡器和晶体振荡器。其中电容器和电感器组成的LC 回路,通过电场能和磁场能的相互转换产程自由振荡。要维持振荡还要有具有正反馈的放大电路,LC 振荡器又分为变压器耦合式和三点式振荡器,现在很多应用石英晶体的石英晶体振荡器 ,还有用集成运放组成的LC 振荡器。 振荡器的作用主要是将直流电变交流电.它有很多用途.在无线电广播和通信设备中产生电磁波.在微机中产生时钟信号.在稳压电路中产生高频交流电.。 静态工作点的确定直接影响着电路的工作状态和振荡波形的好坏。由于振荡

通信原理课程设计心得体会

通信原理课程设计心得体会 、时分解复用原理 为了提高信道利用率,使多路已抽样的信号组合起来沿同一信道传输而互相不干扰,称时分多路复用。时分复用的解调过程称为时分解复用。目前采用较多的是频分多路解复用和时分多路解复用。频分多路解复用用于模拟通信,而时分多路解复用用于数字通信。为了实现TDM传输,要把传输时间分成若干个时隙,在每个时隙内传输一路信号,将若干个原始的脉冲调制信号在时间上进行交错排列,从而形成一个复合脉冲串,该脉冲串扰码后经信道传输到达接收端。时分解复用通信,是把各路信号在同一信道上占有不同时间间隙进行通信分离出原来的模拟信号。由抽样定理可知,将时间上离散的信号变成时间上连续的信号,其在信道上占用时间的有限性,为多路信号沿同一信道传输提供了条件。时分解复用是建立在抽样定理的基础上的,因为抽样定理连续的基带信号由可能被在时间上离散出现的抽样脉冲所代替.具体说,就是把时间分成一些均匀的时间间隙,将各路信号的传输时间分配在不同的时间间隙,以达到互相分开,互不干扰的目的。抽样脉冲占据时间一般较短,在抽样脉冲之间就留出间隙.利用这些空隙便可以传输其他信号的抽样,因此,就可能用一条信道同时传送若干个基带信号,并且每一个抽

样值占用的时间越短,能够传输的数据也就越多.时分解复用信号在接收端只要在时间上恰当地进行分离,各个信号就能分别互相分开,互不干扰并不失真地还原出原来的模拟信号。 在通信系统中,同步具有相当重要的地位。通信系统能否具有有效、可靠地工作,在很大程度上依赖有无良好的同步系统。同步可分为载波同步、位同步、帧同步和网同步几大类型。他们在通信系统中都具有相当重要的作用。时分解复用通信中的同步技术包括位同步和帧同步,这是数字通信的又一个重要特点。时分解复用的电路原理就是先通过帧同步信号和位同步信号把各路信号数据分开,然后通过移位寄存器构成的并/串转换电路输出串行的数据,把时分复用的调制信号不失真的分离出来。 位同步 位同步的目的是确定数字通信中的个码元的抽样时刻,即把每个码元加以区分,使接受端得到一连串的码元序列,这一连串的码元列代表一定的信息。位同步是最基本的同步,是实现帧同步的前提。位同步的基本含义是收、发两端机的时钟频率必须同频、同相,这样接收端才能正确接收和判决发送端送来的每一个码元。因此,接收端必须提供一个确定抽样判决时刻的定时脉冲序列.

串口通信-多机通信系统 - 单片机

目录 一、题目要求与功能分析 (1) 1.1题目要求 (1) 1.2功能及整体模块分析 (1) 二方案论证 (2) 2.1设计目的 (2) 2.2设计思路 (2) 2.2.1原理分析和讨论 (2) 2.2.2题设分析 (3) 三、电路设计 (5) 3.1 整体功能框架设计 (5) 3.2 硬件电路设计 (6) 3.2.1 主机硬件电路设计 (7) 3.2.2 从机硬件电路设计 (10) 3.3软件电路设计 (12) 3.3.1 协议设计 (12) 3.3.2 主机程序流程图设计 (13) 3.3.3 从机程序流程图设计 (14) 四系统的调试与实现 (16) 4.1主机模块功能调试 (16) 4.2从机模块调试 (16) 4.3整体设计功能调试 (16) 五总结与体会 (18) 参考文献 (18) 附录 (19)

一、题目要求与功能分析 1.1题目要求 本小组的试验题目如下: 一、任务: 设计实现多台单片机系统之间的串行通信 二、基本要求(难度系数0.8): (1)设计一个主从式多机通信系统,包含1台主机和3台从机,主机和从机全部为单片机; (2)选择合适总线接口芯片,正确连接主机和从机; (3)编程实现分布式数据采集功能,主机可以获取各分机当前AD转换结果,并显示。 三、发挥部分: (1)完善通信功能。(根据完成情况加分,上限+0.2) 1.2功能及整体模块分析 随着工业化要求提高,分布式系统发展以及控制设备与监控设备之间通讯需要,多机通信系统设计的监控系统逐步普及。此多机通信系统具有友好的人机操作界面、强大的IO设备端口驱动能力,可与各种PLC、智能仪表、智能模块、板卡、变频器等实时通讯。在检测大量模拟量的工业现场使用相似的多机通讯系统;单片机接口丰富,与A/D转换模块组合可以完成相同的工作,并且系统可靠、成本低。 本次实验的目的是就是应用单片机的串口通信功能实现一个分布式采集系统。整个系统中包含一片主机和三片从机,主机的任务是实现对三片从机的AD 转换结果的采集并在数码管上显示之。这样从硬件的角度上将整个系统分为两个模块—主机模块和从机模块。主机模块中包含单片机模块、数码管显示子模块和串口电平转换子模块,从机模块则包括单片机子模块、AD转换子模块和串口电平转换子模块。就本次实验而言硬件电路的设计难点在于串口电平转换芯片MAX485的连接,而软件的设计在于串口通信协议的设定及其相互通信的过程。

通信电子电路课程设计(小信号放大器)

通信电子线路课程设计--高频小信号谐振放大器 学校: 姓名: 学号: 班级: 指导老师: 年月日

目录 一、前言 (3) 二、电路基本原理 (3) 三、主要性能指标及测量方法 (5) 1、谐振频率 (7) 2、电压增益 (7) 3、通频带 (8) 4、矩形系数 (9) 四、设计方案 (10) 1、设置静态工作点 (10) 2、计算谐振回路参数 (10) 3、电路图、仿真图和PCB图 (11) 五、电路装调与测试 (13) 六、心得体会 (14) 七、参考文献 (15)

一、前言 高频调谐放大器广泛应用于通信系统和其它无线电系统中,特别是在发射机的接收端,从天线上感应的信号是非常微弱的,这就需要用放大器将其放大。高频信号放大器理论非常简单,但实际制作却非常困难。其中最容易出现问题是自激震荡,同时频率选择和各级建阻抗匹配也恶化你难实现。 Protel DXP软件能实现从电学概念设计到输出物理生产数据,以及这之间的所有分析、验证、和设计数据管理。今天的Protel DXP 软件已不是单纯的PCB设计工具,而是一个系统,它覆盖了以PCB 为核心的全部物理设计。使用Protel、等计算机软件对产品进行辅助设计在很早以前就已经成为了一种趋势,这类软件的问世也极大地提高了设计人员在机械、电子等行业的产品设计质量与效率。 通过《通信电子线路》的学习,使用Protel DXP软件设计了一个高频小信号放大器。 二、电路的基本原理 高频小信号放大器的功用就是五失真的放大某一频率范围内的信号。按其频带宽度可以分为窄带和宽带放大器。高频小信号放大器是通信电子设备中常用的功能电路,它所放大的信号频率在数百千赫。高频小信号放大器的功能是实现对微弱的高频信号进行不失真的放大,从信号所含频谱来看,输入信号频谱与放大后输出信号的频谱是相同的。

通信电子电路课程设计

通信电子电路课程设计

通信电子电路 课程设计报告

目录 1.课程设计目的 2.无线调频系统的发展背景及应用领域 3.无限发射机和接收机原理框图 4.调频接收系统技术指标 1.工作频率范围 2.灵敏度 3.选择新 4.频率特性 5.输出功率 5.调频接收系统各部分电路形式分析 1.输入回路 2.高频放大电路 3.混频电路 4.中频放大电路 5.鉴频电路 6.低频放大电路 7.整体电路图 6.设计总结

7.元件清单 8.参考资料 课程设计目的: 无线发射与接收设备是电子通信线路的综合应用,是现代化通信系统,广播与电视系统,无线安全防范系统,无线遥控和遥测系统等必不可少的设备,本次课程设计达到以下目的: 1.进一步认识无线发射与接收系统(基本工作原理) 2.掌握调频无线接收系统的设计(单元电路整合,完成整体电路结构设计). 无线调频系统的发展背景及应用领域 通过查阅资料和在图书馆的一些书籍,当前的无线调频系统主要用于广播电台行业和临床医学,例如助听器.现在我们生活中的所有广播,音乐设备几乎都和无线调频系统有关,他们在无时不刻影响着我们的生活并改善我们的生活. 调频接收机组成及工作原理

图3-1 调频接收机的组成 天线接受到的高频信号,经输入调谐回路选频为f1,再经高频放大级放大进入混频级。本机振荡器输出的另一高频 f2亦进入混频级,则混频级的输出为含有f1、f2、(f1+f2)、(f2-f1)等频率分量的信号。混频级的输出接调频回路选出中频信号(f2-f1),再经中频放大器放大,获得足够高增益,然后鉴频器解调出低频调制信号,由低频功放级放大。由于天线接收到的高频信号经过混频成为固定的中频,再加以放大,因此接收 机的灵敏度较高 选择性较好,性能也比较稳定. 调频接收机的主要技术指标 1.工作频率范围 接收机可以接受到的无线电波的频率范围

通信工程专业课程设计

专业课程设计任务书 一、总体要求及课程设计题目 总体要求: 对学生大学整个阶段知识积累的总结是毕业设计,而对一门课程的阶段性总结手段就是课程设计。如果学生经过的是一个完善的课程设计环节,不仅可以提升学习兴趣、总结所学知识,更重要的是可以将学过的知识进行系统的整合,是一个有效的知识的再提高、再丰富的过程。 此次课程设计其目的在于加深对专业基础课与专业课基本知识的理解,掌握运用Multisim 软件对电路进行设计和仿真。 1)可以查找相关资料,使用网上免费信息资源,但要符合题目要求功能; 2、设计完成时进行答辩,答辩不通过为不合格。 设计题目: 1)2ASK 调制与解调系统的设计(4人组) 主要技术指标: 1.数字信号用施密特电路实现 2.载波信号用LC 振荡器实现(频率:1MHz ) 频率稳定度00f f ?≤4 105-?/小时 输出电压的峰峰值为P P V -≥1V 3.数字信号占空比可调(选作) 4.误码率(选作) 2)2FSK 调制与解调系统的设计(4人组) 主要技术指标: 1.数字信号用施密特电路实现 2.载波信号用LC 振荡器实现(频率:1MHz ) 频率稳定度00f f ?≤4 105-?/小时 输出电压的峰峰值为P P V -≥1V 3.数字信号占空比可调(选作) 3)频率发生器的设计(3人组) 主要技术指标: 1. 用单片机设计一个频率发生器

2. 产生100HZ 到100KHZ 之间的频率(100HZ 、500HZ 、1KHZ 、5 KHZ 、10 KHZ 、 50 KHZ 、100 KHZ ) 3. 占空比可调 4).集电极调幅电路的设计(4人组) 已知条件:+Vcc =12V, 晶体管为3DG130(3DG12),回路电感根据所定频率选用活自 绕,可用环形磁芯,也可用高频骨架绕制。 主要技术指标: 1.中心频率0f =(根据设计及级联电路的要求自行决定,将你所选择的频率填上) 2.输出功率0P ≥ 100 mw ,效率η> 40% , 调幅度a m ≥0.3 ,负载L R =51Ω 5).变容二极管直接调频电路(4人组) 已知条件:+Vcc =12V, 晶体管为3DG100, 负载L R =1K Ω,变容二极管2CC1C, 回路电感根据所定频率选用或自绕 主要技术指标: 1.中心频率 0f =(根据设计及级联电路的要求自行决定,将你所选择的频率填上。) 2. 频率稳定度00f f ?≤4 105-?/小时,输出电压的峰峰值为P P V -≥1V 3. 最大频偏m ax f ?=20KHz , 调制灵敏度V KHz S f /14= 6)晶体振荡器(2人组) 已知条件:+Vcc =12V, 晶体管为3DG100, 负载L R =1K Ω 主要技术指标: 1.主振频率0f =(根据设计及级联电路的要求自行决定,将你所选择的频率填上。) 2.频率稳定度00f f ?≤5 105-?/小时 3.输出电压的峰峰值为P P V -≥1V 7) DSB 调制与解调系统的设计(4人组) 要求:1)录制一段2s 左右的语音信号,并对录制的信号进行8000Hz 的采样, 画出采样后语音信号的时域波形和频谱图; 2)采用正弦信号和自行录制的语音信号(.wav 文件)进行DSB 调制与解调;信道 使用高斯白噪声;画出相应的时域波形和频谱图。 主要技术指标:

重大通信电子模电高频课程设计调幅发射机设计电路图及仿真波形模板

重大通信电子模电高频课程设计调幅发射机设计电路图及仿真波形

高频课程设计 分析软件: Multisim 10.0 调幅发射机 ● 调制方式: AM ● 载波中心频率: 30MHz( 具体要求见后) ● 调制信号频率: 0~3KHz ● 调幅系数: 30%~80% ● 末级输出功率: 2W ● 天线阻抗: 50欧姆 ● 电源电压: 15V

调幅接收机 ●调制方式: AM ●载波中心频率: 30MHz( 与输入相对应) ●灵敏度: 1mV (输入信号电压) ●调制信号频率: 0~3KHz ●解调中频: 433KHz ●电源电压: 9V 设计2 调频发射/接收机 ( 选做) 要求: 1、完成具体电路设计、参数设计 2、完成各个子模块的电路仿真, 保存仿真结果 整机电路的电路仿真, 保存仿真结果 3、对设计过程理解、掌握, 能够回答教师的提问 4、完成设计报告 调幅发射机设计电路图及仿真波形1.( 1) 振荡器电路

V1 12 V R1 1k|? R2 1k|? R3 1k|? R4 1k|? Q1 BFS19 L1 1mH C1 1uF C2 1uF C3 1uF C4 120pF C5 680pF C6 1uF C7 100pF Key=A 50% L2 1mH 2k|? Key=A 50% 1 2 3 4 5 8 7 10 9 11 6 ( 2) 振荡器频率 Probe5,Probe1 V(p-p): 1.70 V V(rms): 6.19 V V(dc): 6.16 V Freq.: 25.1 MHz ( 3) 振荡器输出波形

相关主题
文本预览
相关文档 最新文档