双机通信系统单片机课程设计
单片机课程设计_基于单片机的双机之间的串联通信

单片机系统课程设计成绩评定表设计课题基于单片机的双机之间的串联通信学院名称:电气工程学院学生姓名:学号:指导教师:设计地点:设计时间:单片机系统课程设计课程设计名称:基于单片机的双机之间的串联通信专业班级:学生姓名:学号:指导教师:课程设计地点:课程设计时间:单片机系统课程设计任务书目录一. 设计目的 (4)二. 串行口及其扩展简介 (4)三.设计要求 (5)四.硬件电路设计 (8)五.流程图设计 (10)六.程序设计 (12)七.设计小结 (17)八.参考文献 (17)双机之间的串行通信设计一、设计目的1、了解串行通信的工作原理2、了解键盘设定的工作原理3、掌握80C51的定时器1计数器1的编程4、掌握电路板的实物焊接随着电子技术的飞速发展,单片机也步如一个新的时代,越来越多的功能各异的单片机为我们的设计提供了许多新的方法与思路。
对于莫一些场合,比如:复杂的后台运算及通信与高实时性前台控制系统、软件资源消耗大的系统、功能强大的低消耗系统、加密系统等等。
如果合理使用多种不同类型的单片机组合设计,可以得到极高灵活性与性能价格比,因此,多种异型单片机系统设计渐渐成为一种新的思路,单片机技术作为计算机技术的一个重要分支,由于单片机体积小,系统运行可靠,数据采集方便灵活,成本低廉等优点,在通信中发挥着越来越重要的作用。
但能在一些相对复杂的单片机应用系统中,仅仅一个单片机资源是不够的,往往需要两个或多个单片机系统协同工作。
这就对单片机通信提出了很高要求。
二、串行口及其扩展简介1.串行通信的基本特征是数据逐位顺序进行传送2.全双工制式是指通信双方均设有发送器和接收器,并且信道划分为发送信道和接收信道,因此全双工制式可实现甲乙双方同时发送和接收数据,发送时能接收,接收时也能发送3.串行通信的传送速率用于说明数据传送的快慢.“波特率”表示每秒种传输离散信号事件的个数,或每秒信号电平的变化次数,单位为band(波特)。
单片机课程设计——双机通信课设

I
1 绪论
武汉理工大学《单片机原理与应用》课程设计说明书源自1.1 串行通信的发展状况
stm32双机串口通信课程设计

stm32双机串口通信课程设计
针对STM32双机串口通信课程设计,我们需要考虑如下几个方面:
1. 课程设计目标:
确定学生在学习课程后应该达到的目标和能力,例如掌握STM32双机串口通信的原理、掌握串口通信的基本概念、能够设计简单的双机通信程序等。
2. 课程内容安排:
串口通信基础知识介绍,包括串口通信原理、常用的串口通信协议(如UART、SPI、I2C等)、STM32串口通信的基本概念等。
STM32开发环境搭建,介绍如何搭建STM32开发环境、配置开发工具等。
STM32串口通信编程,讲解如何在STM32上进行串口通信的编程,包括串口初始化、数据发送和接收等。
双机串口通信实验设计,设计一些实际的双机串口通信实验,让学生动手实践,加深对串口通信原理的理解。
3. 实验项目设计:
确定一些实际的双机串口通信实验项目,例如通过串口发送
数据、接收数据并进行处理、双机之间进行简单的通信等。
考虑实验的难易程度,从简单到复杂逐步增加,确保学生能
够逐步掌握串口通信的相关知识和技能。
4. 实验环境准备:
确保实验室或者学生个人的实验环境能够支持STM32开发板
的使用,包括开发工具软件的安装、硬件设备的连接等。
5. 课程评估:
设计合适的考核方式,例如实验报告、实验成绩、课堂表现等,来评估学生对于串口通信课程的掌握程度。
总之,针对STM32双机串口通信课程设计,需要充分考虑课程
目标、内容安排、实验项目设计、实验环境准备和课程评估等方面,确保学生能够全面掌握串口通信的相关知识和技能。
单片机单片机课程设计-双机串行通信

单片机单片机课程设计-双机串行通信单片机课程设计双机串行通信在当今的电子信息领域,单片机的应用无处不在。
而双机串行通信作为单片机系统中的一个重要环节,为实现设备之间的数据交换和协同工作提供了关键的技术支持。
一、双机串行通信的基本原理双机串行通信是指两个单片机之间通过串行接口进行数据传输的过程。
串行通信相较于并行通信,具有线路简单、成本低、抗干扰能力强等优点。
在串行通信中,数据是一位一位地按顺序传输的。
常见的串行通信协议有 UART(通用异步收发器)、SPI(串行外设接口)和 I2C(内部集成电路)等。
在本次课程设计中,我们主要采用 UART 协议来实现双机串行通信。
UART 协议包括起始位、数据位、奇偶校验位和停止位。
起始位用于标识数据传输的开始,通常为逻辑 0;数据位可以是 5 位、6 位、7 位或 8 位,具体取决于通信双方的约定;奇偶校验位用于检验数据传输的正确性,可选择奇校验、偶校验或无校验;停止位用于标识数据传输的结束,通常为逻辑 1。
二、硬件设计为了实现双机串行通信,我们需要搭建相应的硬件电路。
首先,每个单片机都需要有一个串行通信接口,通常可以使用单片机自带的UART 模块。
在硬件连接方面,我们将两个单片机的发送端(TXD)和接收端(RXD)交叉连接。
即单片机 A 的 TXD 连接到单片机 B 的 RXD,单片机 B 的 TXD 连接到单片机 A 的 RXD。
同时,还需要共地以保证信号的参考电平一致。
此外,为了提高通信的稳定性和可靠性,我们可以在通信线路上添加一些滤波电容和上拉电阻。
三、软件设计软件设计是实现双机串行通信的核心部分。
在本次课程设计中,我们使用 C 语言来编写单片机的程序。
对于发送方单片机,首先需要对 UART 模块进行初始化,设置波特率、数据位、奇偶校验位和停止位等参数。
然后,将要发送的数据放入发送缓冲区,并通过 UART 发送函数将数据一位一位地发送出去。
对于接收方单片机,同样需要对 UART 模块进行初始化。
单片机双机通信系统课程设计

一.课程设计的目的及基本要求:实践课程是使学生融会贯通本课程所学专业理论知识,完成一个较完整的设计计算和安装调试过程,以加深学生对所学理论的理解与应用,认识和熟悉元器件和电子测量仪器的性能指标,了解解决实际问题的一般过程,培养学生综合运用基础理论知识和专业知识去解决实际工程设计问题的能力。
通过电子技术的综合性工程训练,使学生达到以下的目的和要求:1、结合模拟电路、数字电路、可编程逻辑器件、单片机电子线路CAD等课程中所学的理论知识,按要求独立设计方案,培养学生独立分析与解决问题的能力;2、学会查阅相关手册和资料,通过查阅手册和资料,进一步熟悉常用电子器件的类型和特性,并掌握合理选用的原则;3、学会使用常用电子元器件(包括中规模芯片、专用芯片和可编程器件);4、掌握基本的现代电子技术设计工具和EDA(Electronic design automation)技术;5、掌握电子电路的安装与调试技术,进一步熟悉电子仪器的使用方法;6、认真撰写总结报告,培养严谨的作风和科学的态度;二.课程设计的主要内容:课题十九单片机双机通信系统基本要求:设计两个单片机最小系统,能实现有线通信,一方为发送,另一方为接收。
提高要求:两个单片机最小系统能相互通信,并能实现校验。
三.具体要求和时间安排:每一个学生在教师指导下,独立完成一个应用系统。
工作量如下:1、电路原理图(A3幅面)1张,要求Protel软件绘制;2、pcb版图(A3及以上幅面)1张;3、设计说明书(20-30页)1本,内含能编译通过的源程序(有必要的注释)。
目录一、前言 (4)二、键盘设计 (5)1、硬件接线部分 (5)2、4×4矩阵键盘识别处理 (7)3、键盘识别处理程序 (8)三、单片机的选择及其程序设计 (10)1、单片机型号的选择 (10)2、协议设计 (10)3、双机连接电路图 (11)4、甲机程序 (11)5、乙机程序 (16)四、数码管显示设计 (16)五、总体电路图 (21)六、设计小结 (22)七、参考文献 (23)一.前言由于MCS51系列单片机具有性能稳定、工作可靠、价格低廉等特点,因此其应用相当广泛。
单片机单片机课程设计-双机串行通信

单片机单片机课程设计-双机串行通信摘要由单片机构成的双机通信系统采用总线型主从式结构。
程设计就是要利用单片机来完成一个系统,实现双片单片机串行通信。
通信的结果实用数码管进行显示,数码管采用查表方式显示。
所谓主从式结构,即在两个单片机中,一个主机负责通信管理,另一个为从机,从机要负责主机的调度与支配。
该设计用A T89C51芯片,并用C语言程序来控制A T89C51,使之能实现两个单片机之间的通信。
通信方式为单工通信,一个为主单片机,作为发送方,另一个为从单片机,作为接收方。
关键字:单片机.AT89C51.C语言目录摘要 (1)前言 (3)二绪论 (4)2.1单片机 (4)2.2C语言: (4)2.3双机通信 (5)三.系统分析 (6)3.1 基本原理 (6)3.2波特率选择 (7)3.3通信协议的使用 (7)四、硬件设计 (7)4.1单片机串行通信功能 (10)4.2 MAX232芯片 (12)4.3整体电路设计 (13)五、软件设计 (14)5.1串行通信软件实现 (14)5.2程序流程图 (14)六.联合调试 (17)总结 (18)参考文献 (23)前言近年来,在自动化控制和只能仪器仪表中,单片机的应用越来越广泛,由于单片机的运算功能较差,往往需要借助计算机系统,因此单片机和PC机进行远程通信更具有实际意义,通信的关键在于互传数据信息。
51单片机内部的串行口具有通信的功能,该串口可作为通信接口,利用该串口与PC机的串口通信进行串行通信,将单片机采集的数据进行整理及统计等复杂处理就能满足实际的应用需要。
51单片机的开发除了硬件支持外,同样离不开软件。
用汇编语言或C 语言等高级语言编写的源程序必须转化为机器码才能被执行。
目前流行的Keil 8051c编译器。
它提供了集成开发环境,包括C编译器、宏编码、连接器、库管理和仿真调制器。
利用keil 8051ccuvision编写的程序可直接调用编译器编译,连接后可直接运行。
单片机双机串口通信课程设计

单片机双机串口通信课程设计一、课程设计意义单片机双机串口通信是电子信息类专业中的一门基础课程,包括数据传输原理、串口通信协议等知识点,对于学生的PCB设计、嵌入式系统开发等方向的学习和深入研究都具有非常重要的作用。
通过本课程的设计,学生将能够系统地掌握串口通信技术的原理和实现方法,从而为后续相关课程的学习打下坚实的基础。
二、课程设计步骤1、理论知识讲授首先,需要对串口通信的基本概念、串口的物理接口、RS232、RS485等通信协议及其实现原理进行讲解,学生需要认真记录相关知识点,为后续的实验操作打下基础。
2、实验前准备为了进行单片机双机串口通信实验,需要准备单片机开发板、双机串口通信线、USB转串口模块、连接线等工具。
学生需要根据实验指导书上的引导,仔细按照需求准备好所需要的工具,并理清各项连接关系。
3、实验操作实验是本课程的重头戏,学生需要通过实验来巩固自己所学的相关知识。
在实验过程中,学生需要详细阅读实验指导书,并按照指导书上的步骤完成整个实验过程。
实验完成后,需要仔细分析实验结果,确认实验结果是否正确。
4、实验报告实验完成后,学生需要根据实验结果撰写实验报告,报告需要包括实验过程、实验结果分析、实验总结等内容。
报告需要清晰明了,文本内容清晰、简洁明了,图表简洁、清晰,规范地描写出整个实验过程,总结实验结果,以保证实验教学的质量。
三、课程效果评估通过老师的教学和学生的自主学习,学生能够达到掌握单片机双机串口通信的基本概念和实现方法的目标。
同时,在这个过程中,学生也能够提高实验操作的能力和数据分析的能力,为他们日后的学习和研究打下基础。
《单片机技术》课程设计课题任务书(双机通信系统)

(2)供电模块
(3)显示模块
(4)键盘模块
(5)报警模块
2、双机通信系统软件部分
(1)系统监控程序模块
(2)显示程序模块
(3)键盘程序模块
(4)通信程序模块
三、设计要求
1、采用两个单片机系统板A/B,连接好A/B两板子的串行通信线路(A板必须是自己的,B板可以借用它人的板子)。上电或按键复位后显示器件自动显示待发送/接收状态(例如显示“Send?”“Receive ?”),进入准备阶段。通过按键“OK”选择确认功能;数码管或液晶屏做状态显示(液晶屏加分)。
2、可以通过按键修改设置通信参数,例如串行通信的速率,数据位数等。
3、对接收到的数据进行甄别,接收到特定数据后触发蜂鸣器报警。
4、能随时暂停系统通信。
5、以上功能全部实现,另外再做出配套上位机软件者满分(上位机语言工具不限)。
主要参考资料
[1]李广弟.单片机基础[M].第3版.北京:北京航空航天大学出版社,2003.6.
教研室
意见
教研室主任:(签字)
年月日
[2]李全利.单片机原理及应用(C51编程)[M].北京:高等教育出版社,2012.12.
[3]马忠梅.单片机的C语言应用程序设计[M].第4版.北京:北京航空航天大学出版社,2003.6.
[4]李光飞.单片机C程序设计指导[M].北京:北京航空航天大学出版社,2003.01.
[5]李光飞.单片机课程设计实例指导[M].北京:北京航空航天大学出版社,2004.9.
湖南工学院《单片机技术》课程设计课题任务书
学院:电气与信息工程学院专业:电气1301~2
指导教师
王韧
学生姓名
课题名称
单片机双机通信课程设计报告

工作计划与进度安排:
第16—19周:布置课程设计任务;
查阅资料;
分组设计原理图;
编写程序代码。
第20周:系统仿真调试,验收,答辩,编写课程设计报告。
指导教师:
马秀丽 巍长军
2013年12月6日
专业负责人:
2013年12月6日
学院教学副院长:
2013年12月6日
1.题目设计要求...........................................4
0x92,0x82,0xF8,0x80,0x90,0xff};
uchar num;
//------延时------
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
//------串行口发送函数------
void transfer(uchar c)
#define uint unsigned int
#define uchar unsigned char
sbit led1=P1^0;
sbit led2=P1^3;
sbit key=P1^7;
//------共阳极数码管段码---------
uchar code table[]={0xC0,0xF9,0xA4,0xB0,0x99,
零,也可以作为奇偶校验位,在方式1中是停止位。
RB8:在方式2和方式3中,是被接收的第9位数据(来自第TB8位);在方式
中,RB8收到的是停止位,在方式0中不用。
TI——串行口发送中断请求标志位:当发送完一帧串行数据后,由硬件置1;在转
单片机双机通信课程设计报告

目录1.题目设计要求 (4)2.系统的组成及工作原理 (4)2.1系统组成 (4)2.1工作原理 (4)2.3双机通讯的方案选择 (5)3.器件的功能及作用 (6)3.1硬件设计 (6)3.2电气设置 (8)3.3DB-9连接器 (8)4.系统硬件设计 (10)5.软件设计 (11)6.系统仿真调试 (18)7.设计体会和收获 (18)8.參考资料 (19)1.题目设计要求:甲乙两机串口双向通信设计要求:利用51单片机,RS232芯片,LED灯,数码管进行双机通信设计。
甲机可按键控制乙机的LED显示;乙机可按键控制甲机的数码管显示。
完成以下设计环节:1)使用Altium Desinger开发工具,设计电路原理图。
2)使用Uvision2开发平台,采用C语言或汇编语言设计软件程序。
3)使用PROTEUS仿真软件,设计仿真原理图并运行软件程序,完成系统仿真。
2.系统的组成及工作原理2.1系统组成图2.1 总体框图2.2工作原理双机通信系统通过甲乙单片机的串行口来实现数据的收发。
甲单片机通过开关电路来启动发送程序,甲机当开关按下时向乙机发送一个数据,乙机上蜂咛器发出声音提示有数据发送过来,乙机通过接收中断来接收和开关判断是否接收甲机发送过来的数据,并通过编写好的数据代码在8个发光二极管上显示主机发送过来的数据。
乙单片机通过开关电路来启动发送程序,乙机给甲机发送一数据,甲机上蜂咛器发出声音提示有数据发送过来,甲机通过接收中断来接收和开关判断是否接收乙机发送过来的数据,并通过编写好的数据代码在8个发光二极管上显示乙机发送过来的数据。
2.3 双机通讯的方案选择设计方案:该系统采用主从共两片AT89C52单片机来实现上位机对下位机的控制,由于是近距离的双机通信,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。
需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。
单片机双机通信系统课程设计

单片机双机通信系统课程设计一.课程设计的目的及基本要求:实践课程是使学生融会贯通本课程所学专业理论知识,完成一个较完整的设计计算和安装调试过程,以加深学生对所学理论的理解与应用,认识和熟悉元器件和电子测量仪器的性能指标,了解解决实际问题的一般过程,培养学生综合运用基础理论知识和专业知识去解决实际工程设计问题的能力。
通过电子技术的综合性工程训练,使学生达到以下的目的和要求:1、结合模拟电路、数字电路、可编程逻辑器件、单片机电子线路CAD等课程中所学的理论知识,按要求独立设计方案,培养学生独立分析与解决问题的能力;2、学会查阅相关手册和资料,通过查阅手册和资料,进一步熟悉常用电子器件的类型和特性,并掌握合理选用的原则;3、学会使用常用电子元器件(包括中规模芯片、专用芯片和可编程器件);4、掌握基本的现代电子技术设计工具和EDA(Electronicdesign automation)技术;5、掌握电子电路的安装与调试技术,进一步熟悉电子仪器的使用方法;6、认真撰写总结报告,培养严谨的作风和科学的态度;二.课程设计的主要内容:课题十九单片机双机通信系统基本要求:设计两个单片机最小系统,能实现有线通信,一 23方为发送,另一方为接收。
提高要求:两个单片机最小系统能相互通信,并能实现校验。
三.具体要求和时间安排:每一个学生在教师指导下,独立完成一个应用系统。
工作量如下:1、电路原理图(A3幅面)1张,要求Protel软件绘制;2、pcb版图(A3及以上幅面)1张;3、设计说明书(20-30页)1本,内含能编译通过的源程序(有必要的注释)。
23目录一、前言 (4)二、键盘设计 (5)1、硬件接线部分 (5)2、4×4矩阵键盘识别处理 (7)3、键盘识别处理程序 (8)三、单片机的选择及其程序设计 (10)1、单片机型号的选择 (10)2、协议设计 (10)3、双机连接电路图 (11)4、甲机程序 (11)5、乙机程序 (16)四、数码管显示设计 (16)23五、总体电路图 (21)六、设计小结 (22)七、参考文献 (23)一.前言由于MCS51系列单片机具有性能稳定、工作可靠、价格低廉等特点,因此其应用相当广泛。
基于单片机的双机串行通信课程设计

基于A789C51单片机的双机串行通信课程设计一、总体设计1设计目的1.通过设计相关模块充分熟悉A789C51单片机的最小系统的组成和原理;2.通过软件仿真熟悉keil和proteus的配合使用;3.通过软件编程熟悉A789C51的CA789C51编程规范;4.通过实际的硬件电路搭设提高实际动手能力。
2.设计要求:两片单片机之间进行串行通信,A机将0x06发送给B机,在B机的数码管上静态显示1,B机将0~f动态循环发送到A机,并在其数码管上显示。
3.设计方案:软件部分,通过通信协议进行发送接收,A机先送0x06(B机数码管显示1)给B机(B机静态显示),当从机接收到后,向B机发送代表0-f的数码管编码数组。
B收到0x06后就把数码表TAB[16]中的数据送给从机。
二、硬件设计单片机串行通信功能图(52)计算机与外界的信息交换称为通信,常用的通信方式有两种:并行通信和串行通信。
A789C51单片机用4个接口与外界进行数据输入与数据输出就是并行通信,并行通信的特点是传输信号的速度快,但所用的信号线较多,成本高,传输的距离较近。
串行通信的特点是只用两条信号线(一条信号线,再加一条地线作为信号回路)即可完成通信,成本低,传输的距离较远。
A789C51单片机的串行接口是一个全双工的接口,它可以作为UART(通用异步接受和发送器)用,也可以作为同步移位寄存器用。
A789C51单片机串行接口的结构如下:(1)数据缓冲器(SBUF)接受或发送的数据都要先送到SBUF缓存。
有两个,一个缓存,另一个接受,用同一直接地址99H,发送时用指令将数据送到SBUF即可启动发送;接收时用指令将SBUF中接收到的数据取出。
(2)串行控制寄存器(PCON)SCON用于串行通信方式的选择,收发控制及状态指示,各位含义如下:SM0,SM1:串行接口工作方式选择位,这两位组合成00,01,10,11对应于工作方式0、1、2、3。
串行接口工作方式特点见下表SM2:多机通信控制位。
双机通信系统的设计 精品

《单片机与接口技术课程设计》题目名称:双机通信系统的设计一. 课程设计的目的与要求1.教学目的培养学生利用所学的单片机知识进行独立地设计、开发产品分析问题和解决问题的能力。
2.教学要求1)在充分理解实验设备的工作原理的基础上,完成各题目的基本功能。
从基本功能的实现中得到感性认识,进一步完成各课题。
2)独立完成电路及程序的设计、调试。
设计结果达到课题技术要求,功能完善,运行稳定。
3)写出设计总结。
要求条理清楚,重点突出,结构合理。
并附有完整原理图及带有注释说明的完整的软件源程序清单。
4)课程设计期间按时作息,遵守纪律,爱护仪器、设备,保持良好、整洁的工作环境。
3. 内容及要求主要技术指标和要求:1) 基本功能:利用8031串行口发送和接收数据,并将接收的数据通过扩展I/O口74LS273输出到发光二极管显示,结合延时来模拟一个循环彩灯。
2) 双机通信甲机负责发送,乙机负责接收。
从甲机的键盘上键入数字键0~F,在两个实验箱上的数码管上显示出来。
如果键入的不是数字按键,则显示“Error”错误提示。
二、实验原理1.8031单片机串行口双机通信电路设计MCS-51的串行端口有4种基本工作方式,通过编程设置,可以使其工作在任一方式,以满足不同场合的需要。
其中,方式0主要用于外接移位寄存器,以扩展单片机的I/O;工作方式1多用于双机之间或与外设电路的通信;方式2、3除有方式1的功能外,还可以作多机通信,以构成分布式多微机系统。
串行端口有两个控制寄存器SCON、PCON,用于设置工作方式、发送或接收的状态、特征位、数据传送波特率[每秒传送的位数]以及作为中断标志等。
串行端口有一个数据寄存器SBUF在特殊功能寄存器中的字节地址为99H,该寄存器为发送和接收所共用。
串行端口的波特率可以用程序来控制。
在不同工作方式中,由时钟振荡的值或由定时器T1的定时溢出时间确定,使用十分方便灵活。
1、串口控制寄存器方式1输入:在(REN)=1时,串行口采样RXD引脚,当采样到1至O的跳变时,确认是串行发送来的一帧数据的开始位0,从而开始接收一帧数据。
单片机课程设计双机通讯

微机原理与接口课程设计学院:信息电子学院班级:08电科二班学号:E08640229姓名:邹超指导老师:张国萍日期:2011—01—12电子设计培训课程设计任务书基本部分:1、熟悉使用protues软件进行单片机系统(双机通信和多机通信)的设计与仿真;2、完成PC和单片机小系统之间的通信,用RS-232口。
3、完成接收和发送功能。
扩展部分:4、完成各单片机系统之间的多机通信。
指标要求:1、双机通讯实现从PC发送学号末两位,单片机接收后在数码管上显示,然后再发回PC,波特率为2400。
2、多机通信中设置一个主机,16个从机。
主机发送数据,从机接收数据。
从机地址从00H开始到0FH结束。
主机的数据由P1口输入,欲寻址的地址由P2口设置。
发送数据前,P0 口显示寻址地址,寻址结束后,才显示发送数据。
只有主机寻址的从机才能接收数据,当接收数据是00H时,表示发送数据结束。
从机接收数据并显示在P0 口,接收完以后发回主机。
考核与报告:考核采用设计报告+答辩的方式1、优秀能按任务书要求独立完成实验,正确使用仪器设备,能灵活、熟练地运用相关知识,实验数据及计算结果准确,实验报告(含图表)清晰无误2、良好能按任务书要求基本独立完成实验,正确使用仪器设备,能比较熟练地运用相关知识,实验数据及计算结果基本准确,实验报告(含图表)质量较好3、中等能在教师指导下顺利完成实验,会使用仪器设备,尚能运用相关知识,实验数据及计算结果有明显错误,实验报告(含图表)质量一般4、及格能在教师指导下完成实验,会使用仪器设备,运用相关知识能力较差,实验数据及计算结果有较大错误,基本达到实验最低要求5、不及格不能完成实验,或抄袭他人实验报告,或实验数据及计算结果有多处重大错误。
地点: 10-408 上午:8:30-11:30 下午:13:00-16:00目录封面 (1)任务书 (2)目录 (3)双机通讯 (4)接口设计 (4)接口电路 (4)仿真图 (5)仿真结果 (5)程序代码 (6)流程图 (8)多机通讯 (9)接口电路 (9)多机通讯过程 (9)仿真图 (10)仿真结果 (5)实物图 (16)程序代码 (11)流程图 (14)问题设计 (16)参考文献 (16)双机通讯双机通讯接口设计:根据8031单片机双机通讯距离,抗干扰性等要求,可选择TTL电平传输,或选择RS—232C,RS—422A,RS—485串行接口进行串行数据传输。
双机通信系统单片机课程设计

双机通信系统单片机课程设计设计概况 (3)1 总体设计 (4)1.1 设计要求 (4)1.2 设计方案 (4)2 双机通信硬件设计 (5)2.1 AT89C51简介 (5)2.2 AT89C51串行口的工作方式 (6)2.3 晶振电路设计 (9)2.4 复位电路设计 (10)2.5 接口电路的设计 (10)2.6 输入输出电路设计 (12)3 双机通信软件设计 (15)3.1 串行通信软件实现 (15)3.2 串行通信程序流程 (15)3.3 程序清单 (18)4 软件仿真 (22)5 硬件连接 (23)6 设计总结 (25)参考文献 (26)设计概况要构成一个较大规模的控制系统,常常需要采用多机控制实现,而AT89C51单片机有一个异步通信方式的全双工串行接口,可以方便地构成双机、多机系统。
而串行通信也成为单片机与单片机、单片机与上位机之间进行数据传输的主要方式,是一种适用于远距离通信的数据传输方式。
串行通信是单片机的一个重要应用。
本次课程设计就是要利用单片机来完成一个系统,实现双片单片机串行通信。
通信的结果实用数码管进行显示,数码管采用查表方式显示。
两个单片机之间采用RS232进行双机通信。
在通信过程中,使用通信协议进行通信。
关键词:单片机;串行通信;接口1 总体设计1.1 设计要求设计一个单片机双机通信系统,单片机A接1个8位按键开关,单片机B 接8个发光二极管,通过串行通信实现由A机拨码开关控制B机发光二极管的亮灭。
1.2 设计方案本次设计,对于两片AT89C51,采用RS-232进行双机通信。
如图1所示,发送方的数据由串行口TXD段输出,经过电平转换芯片MAX232将TTL电平转换为RS-232电平输出,经过传输线将信号传送到接收端。
接收方也使用MAX232芯片进行电平转换后,信号到达接收方串行口的接收端。
接收方接收后,在LED二极管上显示接收的对应信息。
图1 双机通信系统原理框图软件部分,通过通信协议进行发送接收,发送机先送联络信号给接收机,当接收机接收到联络信号后,向发送机回答一个应答信号,表示同意接收。
单片机双机之间的串行通信设计

单片机双机之间的串行通信设计Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998专业方向课程设计报告题目:单片机双机之间的串行通信设计单片机双机之间的串行通信设计一.设计要求:两片单片机利用串行口进行串行通信:串行通信的波特率可从键盘进行设定,可选的波特率为1200、2400、4800和9600bit/s。
二、方案论证:方案一:以两片51单片机作为通信部件,以4*4矩阵键盘作为数据输入接口,通过16个不同键值输入不同的信息,按照51单片机的方式3进行串口通信,从机采用中断方式接收信息并按照通信协议改变波特率或者用I/O口输出、CD4511译码、数码管显示相关数据,整个系统的软件部分采用C语言编写。
方案二:整个系统的硬件设计与方案一样,但是通信方式采用方式一进行通信,主从机之间的访问采用查询方式,数据输出直接由单片机的译码程序输出译码数据,同时软件编写采用汇编语言。
两种方式从设计上来说各有特色,而且两种方式都应该是可行的。
方案一中按照方式三通信可以输出九位数据而方式一只能输出八位数据,但就本题的要求来说方式一就可以了。
主从机之间的交流采用中断方式是一种高效且保护单片机的选择,但是相比之下本人对查询方式的理解更好一些。
数码管的显示若采用CD4511译码则直接输出数据就可以了,但是这样会增加硬件陈本,而且单片机的资源大部分都还闲置着,所以直接编写一段译码程序是比较好的做法。
另外在软件编写上,采用C语言在后续设计中对硬件的考虑稍少一些,换言之采用汇编可以使自己对整个通信过程及单片机的部分结构有更清晰地认识所以综合考虑采用方案二。
三、理论设计:采用AltiumDesigner绘制的原理图(整图)本系统主要包括五个基本模块:单片机最小系统(包括晶振电路、电源、复位电路及相关设置电路)、4*4矩阵键盘、功能控制电路、数据显示电路、波特率更改指示电路。
本设计的基本思路是通过控制口选择将要实现的功能,然后矩阵键盘输入数据,单片机对数据进行处理(加校验码、设置功能标志位),然后与从机握手,一切就绪之后后就开始发送数据,然后从机对接收数据校验,回发校验结果,主机根据校验结果进行下一步动作,或者重发,或者进入下一数据的发送过程,然后按照此过程不段循环,直到结束。
双机通信,单片机课程设计

单片机课程设计双机通信一、设计目的1、掌握单片机89C52的程序设计,掌握单片机通信程序编制方法。
2、了解单片机实现通信的硬件环境。
3、掌握双机通信的原理和方法。
二、设计要求1、用两片单片机,实现双机通信;2、用与A机连接的按键控制A机对B机的信息传输,每按一次键,首先发送端显示要发送数据,两台机器的发光二极管的显示相同。
3、用与B机连接的按键控制B机对A机的信息传输,每次按键,数码管的显示自动加一。
三、设计器材四、设计思路及方案1、设计思路计划采用主从共两片STC8952RC单片机来实现双机通信的,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。
需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。
电路分为数码管显示模块,单片机工作的基本复位、晶振模块。
2、设计原理(1)原理概述双机通信系统通过主从单片机的串行口来实现数据的收发。
主单片机通过开关电路来启动发送程序,当开关按下时向从机发送一个数据,从机通过接收中断来接收主机发送过来的数据,并通过编写好的数据代码在LED数码管上显示主机发送过来的数据。
同时从机给主机发送一个应答信号来表示已经接收到了主机发送过来的数据,在主机接收应答并校验正确,以二极管显示,这样就完成了一个数据的通信过程,等待按键按下,然后继续下一次数据的发送直到结束。
(2)串行通信串行数据通信要解决两个关键问题,一个是数据传送,另一个是数据转换。
所谓数据传送就是指数据以什么形式进行传送。
所谓数据转换就是指单片机在接收数据时,如何把接收到的串行数据转化为并行数据,单片机在发送数据时,如何把并行数据转换为串行数据进行发送。
单片机的串行通信使用的是异步串行通信,所谓异步就是指发送端和接收端使用的不是同一个时钟。
异步串行通信通常以字符(或者字节)为单位组成字符帧传送。
字符帧由发送端一帧一帧地传送,接收端通过传输线一帧一帧地接收。
51双机通讯课程设计

51 双机通讯课程设计一、课程目标知识目标:1. 学生能理解双机通讯的基本概念,掌握双机通讯的基本原理。
2. 学生能掌握双机通讯中常用的数据传输协议和通信接口。
3. 学生能了解双机通讯在现实生活中的应用场景。
技能目标:1. 学生能够运用所学知识,独立完成双机通讯的硬件连接和软件配置。
2. 学生能够运用编程语言实现双机之间的数据传输,具备简单通信程序的开发能力。
3. 学生能够通过实际操作,解决双机通讯过程中遇到的问题,具备一定的故障排查能力。
情感态度价值观目标:1. 学生通过学习双机通讯,培养对信息科技的兴趣和热情,提高探索新技术的积极性。
2. 学生能够在团队合作中发挥自己的优势,培养良好的沟通能力和团队协作精神。
3. 学生能够认识到双机通讯在科技发展中的重要性,增强对科技创新的社会责任感。
本课程针对初高中年级学生,结合课程性质、学生特点和教学要求,将双机通讯知识分解为具体的学习成果。
课程设计注重理论与实践相结合,旨在提高学生的动手操作能力和实际问题解决能力,为培养具备创新精神和实践能力的优秀人才奠定基础。
二、教学内容1. 双机通讯基本概念:介绍双机通讯的定义、分类及发展历程,使学生了解双机通讯的背景和基本知识。
教材章节:《信息技术》第5章第1节。
2. 双机通讯原理:讲解双机通讯的工作原理,包括信号传输、编码解码、数据帧等基本概念。
教材章节:《信息技术》第5章第2节。
3. 数据传输协议与通信接口:介绍常用的数据传输协议(如串行通信协议、USB通信协议等)及通信接口(如串口、并口、USB等)。
教材章节:《信息技术》第5章第3节。
4. 双机通讯应用场景:分析双机通讯在现实生活中的应用实例,如智能家居、工业控制等领域。
教材章节:《信息技术》第5章第4节。
5. 硬件连接与软件配置:讲解双机通讯的硬件连接方法、软件配置步骤及注意事项。
教材章节:《信息技术》第5章第5节。
6. 编程实现双机通讯:通过实例教学,指导学生运用编程语言(如C语言、Python等)实现双机之间的数据传输。
-双机通信

西安邮电学院单片机课程设计报告书双机通信院系名称:自动化学院学生姓名:专业名称:班级:时间:2011年5 月 23 日至 6 月2 日双机通信一、设计目的设计一个双机通信系统,实现按键数据的互发及显示功能。
二、设计要求1.用两片单片机实现双机通信。
2.用与A机连接的按键控制与B机连接的LED,每按一次键,LED以1s的频率闪烁5次。
3.同理,用与B机连接的按键控制与A机连接的LED。
三、设计器材两片单片机,两个晶振,按键三个,两个LED,电容,电阻,若干导线。
四、设计方案及分析(包含设计电路图)1. STC89C51单片机介绍(1) STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programmable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。
该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
(2)内部时钟电路和外部时钟电路(a)内部方式时钟电路(b)外部方式时钟电路(3)复位电路复位是单片机的初始化操作。
其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。
除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。
(4)STC89C52单片机引脚图2.硬件部分:两片单片机通过双机通信相连,通过甲单片机的按键控制乙单片机的发光二极管工作,通过乙单片机的按键控制甲单片机接收数据,并反馈给乙机,使乙机的发光二极管工作。
首先将晶振和电容与单片机相连接构成单片机的最小系统,7段数码管接在单片机的P 1口,为了保护数码管,每个数码管接入9*1K 欧姆的排阻。
将两个按键分别接入单片机中,控制单片机工作。
流程图:发送数据流程开始甲与乙握手乙准备好?发送数据结束YN数据接收是正确的NY接收数据流程开始N甲发出联络Y应答并准备接受数据N接受数据并计算检验和数据接收是正确的Y结束3.设计程序如下:#include <reg52.h>#define unchar unsigned char#define unint unsigned intsbit Key = P1^1;sbit Led = P1^0;void delay (){int i,j;for(i=1000;i>0;i--)for(j=0;j<110;j++);}void Uartsend(unchar k) //串口发送子函数{SBUF = k; //发送数据while(!TI);TI=0; //待待发送结束}void main(){TMOD = 0x20; //定时器1工作方式2TH1 = 0xfd;TL1 = 0xfd; //装入定时器初值11.0592M晶振,波特率9600 PCON = 0; //波特率不倍增ET1 = 0; //定时器1中断允许EA = 1; //总中断允许ES = 1; //串口中断允许TR1 = 1; //定时器1开始计时SCON = 0x50; //串口工作方工1,准备接收while(1) //死循环{if(!Key) //判断是否有键按下{ Uartsend(0xaa); //用串口发送0xaawhile(!Key); //等待键释放}}}void uart() interrupt 4{ unchar temp;if(RI) //判断是否为接收中断{ int k;temp = SBUF; //读数据for(k=0;k<10;k++){Led=~Led;delay(); }switch(temp) //判断数据{ case 0x55:Led = 0;break;case 0xaa:Led = 1;break;default:break; }RI = 0; //清除中断标志}TI = 0; //清除中断标志}4.设计电路图如下:五、问题分析与解决方法问题一:仿真问题仿真图画好之后,开始运行,发光二极管没有反应。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设计概况 (2)1 总体设计 (3)1.1 设计要求 (3)1.2 设计方案 (3)2 双机通信硬件设计 (4)2.1 AT89C51简介 (4)2.2 AT89C51串行口的工作方式 (5)2.3 晶振电路设计 (8)2.4 复位电路设计 (8)2.5 接口电路的设计 (9)2.6 输入输出电路设计 (11)3 双机通信软件设计 (13)3.1 串行通信软件实现 (13)3.2 串行通信程序流程 (13)3.3 程序清单 (16)4 软件仿真 (20)5 硬件连接 (21)6 设计总结 (23)参考文献 (24)设计概况要构成一个较大规模的控制系统,常常需要采用多机控制实现,而AT89C51单片机有一个异步通信方式的全双工串行接口,可以方便地构成双机、多机系统。
而串行通信也成为单片机与单片机、单片机与上位机之间进行数据传输的主要方式,是一种适用于远距离通信的数据传输方式。
串行通信是单片机的一个重要应用。
本次课程设计就是要利用单片机来完成一个系统,实现双片单片机串行通信。
通信的结果实用数码管进行显示,数码管采用查表方式显示。
两个单片机之间采用RS232进行双机通信。
在通信过程中,使用通信协议进行通信。
关键词:单片机;串行通信;接口1 总体设计1.1 设计要求设计一个单片机双机通信系统,单片机A接1个8位按键开关,单片机B 接8个发光二极管,通过串行通信实现由A机拨码开关控制B机发光二极管的亮灭。
1.2 设计方案本次设计,对于两片AT89C51,采用RS-232进行双机通信。
如图1所示,发送方的数据由串行口TXD段输出,经过电平转换芯片MAX232将TTL电平转换为RS-232电平输出,经过传输线将信号传送到接收端。
接收方也使用MAX232芯片进行电平转换后,信号到达接收方串行口的接收端。
接收方接收后,在LED二极管上显示接收的对应信息。
图1 双机通信系统原理框图软件部分,通过通信协议进行发送接收,发送机先送联络信号给接收机,当接收机接收到联络信号后,向发送机回答一个应答信号,表示同意接收。
发送机收到应答信号后开始发送数据,每发送一个数据块字节都要计算“校验和”,假定数据长度为16个字节,起始地址为40H,一个数据块发送完毕后立即发送“校验和”。
接收机接收数据并存入数据缓冲区起始地址也为40H,每接收到一个数据字节便计算一次“校验和”,当接收到一个数据块后,在接受发送机发来的“校验和”,并将它与接收机计算的校验和进行比较。
若二者相等,说明接受正确,接收机回答00H,发送机结束发送;若二者不等,说明接受不正确,接收机回答0FFH,请求重发,发送机重新发送数据一次。
接收机接收到数据后通过发光二极管LED显示发送机的发送状态。
2 双机通信硬件设计2.1 AT89C51简介AT89C51 是一个带有4k 字节存储器的单片机,它具有128字节内部RAM;32 个I/O 口线和;两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
如图2所示,DIP40封装的AT89C51的各个引脚及其功能。
图2 AT89C51单片机引脚封装AT89C51单片机各个引脚功能如下:(1)电源几时钟引脚•V(40号引脚):电源接入引脚CC•V(20号引脚):接地引脚SS•XTAL1(19号引脚):晶振接入的一个引脚•XTAL2(18号引脚):晶振接入的另一个引脚(2)控制线引脚(9号引脚):复位信号输入引脚/备用电源输入引脚•RST/VPD•ALE/PROG(30号引脚):地址锁存允许信号输出引脚/编程脉冲输入引•EA/V(31号引脚):内外存储器选择引脚/片内EPROM编程电压输入引PP脚•PSEN(29号引脚):外部程序存储器选通信号输出引脚(3)I/O引脚·P0.0—P0.7(39—32号引脚):一般I/O口引脚/低位地址总线引脚·P1.0—P1.7(1—8号引脚):一般I/O口引脚·P2.0—P2.7(21—28号引脚):一般I/O口引脚/高位地址总线引脚·P3.0—P3.7(10—17号引脚):一般I/O口引脚或第二功能引脚P3.0(10号引脚):RXD串行口输入P3.1(11号引脚):TXD串行口输出P3.2(12号引脚):0INT外部中断0输入P3.3(13号引脚):1INT外部中断1输入P3.4(14号引脚):T0定时器0的外部输入P3.5(15号引脚):T1定时器1的外部输入P3.6(16号引脚):WR片外数据存储器“写”选通控制输出P3.7(17号引脚):RD片外数据存储器“读”选通控制输出2.2 AT89C51串行口的工作方式AT89C51的串行口是一个可编程全双工的通信接口,具有通信异步接受和发送的全部功能,能同时进行数据的接收和发送,也可作为同步移位寄存器使用。
AT89C51的串行口主要由两个独立的串行数据缓冲寄存器SBUF(一个发送缓冲寄存器,一个接收缓冲寄存器),串行口控制寄存器、输入移位寄存器及若干控制门电路组成。
(1) 串行口数据缓冲寄存器SBUFAT89C51可以通过特殊功能寄存器SBUF的读写操作,实现对串行接收或串行发送寄存器的访问,串行接收和串行发送寄存器在串行口内部是两个独立的存储单元,共用同一个地址99H。
串行口数据传送使用的是内部数据传送指令“MOV A,SBUF”或“MOV SBUF,A”.当执行写操作时,访问串行发送寄存器;当执行读操作时,访问串行接收寄存器。
(2) 串行口控制寄存器SCONAT89C51串行口工作的设定、接收与发送控制的设置都是通过对串行口控制寄存器SCON的编程确定的。
SCON是一个特殊功能寄存器,其地址为98H,可位寻址,其各位的作用定义如下:表2 控制寄存器SCONSM0、SM1:串行口工作方式选择位,工作方式选择如表2所示。
其中fosc 是晶体振荡器的频率。
SM2:多机通信控制位。
在方式0下,SM2应为0;在方式1下,如果SM2=0,则只有收到有效的停止位时才会激活RI;在方式2和方式3下,如置SM2=1则只有收到第9位数据为1时,RI被激活(RI=1,申请中断,要求CPU 取走数据)。
REN:允许接收控制位。
由软件置位或清零。
REN=1,允许接收;REN=0,禁止接收。
TB8:在方式2和方式3下,存放要发送的第9位数据,常用作奇偶校验位。
在多机通信中,可作为区别地址帧或数据帧的标识位,若为地址帧,TB8=1; 若为数据帧,TB8=0。
RB8:在方式2和方式3下,存放接收到的第9位数据;在方式1下,如SM2=0,则该位为接收到的停止位;方式0不用此位。
TI:发送中断标志。
在方式0下,发送完第8位数据位时,由硬件置位;在其他方式下,当开始发送停止位时,由硬件将TI置位,即是向CPU申请中断,CPU可以发送下一帧数据。
在任何方式下,TI必须由软件清零。
RI:接收中断标志。
在方式0下,接收完第8位数据时,由硬件置位;在其他方式下,当接收到停止位时RI置位,即申请中断,要求CPU取走数据。
它必须由软件清零。
表3 串行口工作方式选择本设计发送机串行口的工作方式为方式1,即控制寄存器SCON 中内容如下:表4 发送机控制寄存器SCON接收机的串行口的工作方式为方式1,即控制寄存器SCON 中内容如下:表5 接收机控制寄存器SCON串口以方式1发送,由CPU 执行一条写发送寄存器指令“MOV SBUF,A ”,就可将数据位逐一由TXD 端发送。
当发送一帧数据后,将TI 置1。
串口以方式1接受,需控制SMOD 中的REN 为1(SMOD 为特殊功能寄存器PCON 的最高位),此时对RXD 引脚进行采样,当采样到起始位置有效时,开始接收数据。
当一帧数据接收完毕,且RI=0,SM2=0或接收到RB8=1时,接收数据有效,此时可利用读接收寄存器指令“MOV A,SBUF ”将数据送入CPU 。
同时将RI 置1。
若要再次发送或接收数据,必须将TI 、RI 清零。
(3)波特率的计算根据表2可知串口工作方式方式1时一帧数据为10位(8位数据位,起始位、停止位各1位)。
其传输波特率是可变的,由定时器T1的溢出率来决定。
波特率=)1()32/2(溢出率T SMOD ⨯当T1作为波特率发生器时,最典型的用法是使T1工作在自动再装入的8位定时器方式(即方式2,且TCON 的TR=1,以启动定时器)。
这时溢出率取决于TH1中的计数值。
()[]{}125612/1TH f TH OSC -⨯=溢出率在单片机的应用中,常用的晶振频率osc f 为:12MHz 和11.0592MHz 。
在本设计中晶振频率采用osc f =11,。
0592MHz 。
即波特率为波特率=[]{})1(25612322TH f osc SMOD-⨯⨯ 2.3 晶振电路设计AT89C51单片机内部有一震荡电路,只要在单片机的XTL1(19号)和XTAL2(18号)引脚外接石英晶体(简称晶振)就构成了自激振荡器并在单片机内部产生时钟脉冲信号。
如图3所示,图中电容器C1和C2的作用是稳定频率和快速起振,电容值为5~30pF,典型值为30pF ,本设计取30pF 。
晶振CYS 的振荡频率范围为1.2MHz ~12MHz ,典型值为12MHz 和6MHz ,本设计取12MHz 。
图3 晶振电路2.4 复位电路设计AT89C51单片机的RST (9号)引脚引入高电平并保持两个机器周期时,单片机内部就执行复位操作。
在实际中AT89C51通常有两种操作方式复位,一种是上电复位;另一种是按键上电复位。
在双机通信系统的设计中使用按键上电复位,如图4所示。
图4 复位电路单片机复位后进入初始化状态。
初始化后,程序计数器PC=0000H,所以程序从0000H地址单元开始执行。
单片机启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM的内容。
特殊功能寄存器复位后的状态是确定的。
P0~P3为FFH,SP为07H,SBUF不定,IP、IE和PCON的有效位为0,其余的特殊功能寄存器的状态均为00H。
2.5 接口电路的设计(1)直接通信单片机与单片机进行双击串行通行时,可将两个单片机的串口直接连接,接线图如图5所示,这种接线传输距离短,抗干扰能力差。
图5 直接通信接线图(2)串口通信单片机与单片机进行双击串行通行时,AT89C51串行接口的信号电平为TTL类型,抗干扰性差、传输距离短。