双机通信,单片机课程设计
单片机课程设计——双机通信课设
I
1 绪论
武汉理工大学《单片机原理与应用》课程设计说明书源自1.1 串行通信的发展状况
单片机单片机课程设计-双机串行通信
单片机单片机课程设计-双机串行通信单片机课程设计双机串行通信在当今的电子信息领域,单片机的应用无处不在。
而双机串行通信作为单片机系统中的一个重要环节,为实现设备之间的数据交换和协同工作提供了关键的技术支持。
一、双机串行通信的基本原理双机串行通信是指两个单片机之间通过串行接口进行数据传输的过程。
串行通信相较于并行通信,具有线路简单、成本低、抗干扰能力强等优点。
在串行通信中,数据是一位一位地按顺序传输的。
常见的串行通信协议有 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
指导教师
王韧
学生姓名
课题名称
单片机双机通信课程设计报告
目录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:多机通信控制位。
单片机单片机课程设计报告-双机串行通信
基于51单片机的双机串行通信设计【摘要】串行通信是单片机的一个重要应用。
本次课程设计就是要利用单片机来完成一个系统,实现双片单片机串行通信。
通信的结果实用数码管进展显示,数码管采用查表方式显示。
两个单片机之间采用RS232进展双机通信。
在通信过程中,使用通信协议进展通信。
【关键字】51单片机,串行通信,接口一、总体设计1.设计要求:两片单片机之间进展串行通信,发送端将0~f循环发送到接收端,并在接收端显示。
2.设计方案:本次设计,对于两片89C51,采用RS232进展双机通信。
发送方的数据由串行口TXD 段输出,经过电平转换芯片MAX232将TTL电平转换为RS232电平输出,经过传输线将信号传送到接收端。
接收方也使用MAX232芯片进展电平转换后,信号到达接收方串行口的接收端。
承受方接收后,在数码管上显示接收的信息。
为提高抗干扰能力,还可以在输入输出端加光耦合进展光电隔离。
软件局部,通过通信协议进展发送接收,主机先送AAH给从机,当从机接收到AAH 后,向主机答复BBH。
主机收到BBH后就把数码表TAB[16]中的10个数据送给从机,并发送检验和。
从机收到16个数据并计算接收到数据的检验和,与主机发送来的检验和进展比拟,假设检验和一样那么发送00H给主机;否那么发送FFH给主机,重新承受。
从机收到16个正确数据后送到一个数码管显示。
二、硬件设计1.51单片机串行通信功能图1.AT89C51计算机与外界的信息交换称为通信,常用的通信方式有两种:并行通信和串行通信。
51单片机用4个接口与外界进展数据输入与数据输出就是并行通信,并行通信的特点是传输信号的速度快,但所用的信号线较多,本钱高,传输的距离较近。
串行通信的特点是只用两条信号线〔一条信号线,再加一条地线作为信号回路〕即可完成通信,本钱低,传输的距离较远。
51单片机的串行接口是一个全双工的接口,它可以作为UART〔通用异步承受和发送器〕用,也可以作为同步移位存放器用。
单片机课程设计双机通讯
微机原理与接口课程设计学院:信息电子学院班级: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)串行通信串行数据通信要解决两个关键问题,一个是数据传送,另一个是数据转换。
所谓数据传送就是指数据以什么形式进行传送。
所谓数据转换就是指单片机在接收数据时,如何把接收到的串行数据转化为并行数据,单片机在发送数据时,如何把并行数据转换为串行数据进行发送。
单片机的串行通信使用的是异步串行通信,所谓异步就是指发送端和接收端使用的不是同一个时钟。
异步串行通信通常以字符(或者字节)为单位组成字符帧传送。
字符帧由发送端一帧一帧地传送,接收端通过传输线一帧一帧地接收。
单片机双机通信课程设计报告
课程设计说明书课程设计名称:单片机课程设计课程设计题目:单片机与单片机之间的串行通讯学院名称:信息工程学院专业:电子信息科学与技术班级: 090431班学号: xxx 姓名: xxx 评分:教师: xxx 2012年6月25日电子信息工程专业课程设计任务书20 10 -20 11学年第2 学期第17 周-20 周注:1、此表一组一表二份,课程设计小组组长一份;任课教师授课时自带一份备查。
2、课程设计结束后与“课程设计小结”、“学生成绩单”一并交院教务存档摘要串行通讯是单片机的一个重要应用。
本设计就是利用两块单片机来完成一个系统,实现单片机之间的串行通讯。
随着计算机的不断普及,在我们的周围可能会同时出现多台微型计算机,而且这些计算机的牌号,后型号不同,而且有的格式不兼容。
于是利用单片机串行口实现不同计算机之间的相互通信,以达到信息或程序的共享是非常有用的。
从智能家用电器到工业上的控制系统都采用了上位机与下位机基于串行通信的主从工作方式,这样就充分利用了微机分析处理能力强、速度快的特点及下位机(单片机)面向控制、使用灵活方便的优势。
由于AT09C52系列单片机具有性能稳定、工作可靠、价格低廉等可特点,因此其应用相当广泛。
AT09C52单片机中有异步通信串行接口,能方便的构成双机,多机通讯接口。
随着测量向自动化,智能化,网络化方向的发展。
利用多机通讯构成的分布式系统逐渐普及。
本实验就点对点的双机通信进行训练。
学习串口的工作方式,初始化编程,和单片机与单片机点对点通信的编程方法以及硬件电路的设计方法。
在此基础上可以进一步提高,实现多机通信以及单片机与PC机的通讯,手机通过蓝牙与单片机通讯,电脑通过蓝牙与单片机通讯等一系列功能扩展。
【关键字】双机串行通讯 AT89C52 异步通讯功能扩展目录前言 (1)第一章、系统功能 (2)1.1 设计要求和系统的组成及工作原理 (2)第二章、系统设计方案 (3)2.1硬件设计 (3)2.1.1 AT89C52和RS232说明 (3)2..12 双机通讯的方案选择 (7)2.1软件设计 (8)2.2.1 甲机程序的编写说明 (8)2.2.2 甲机程序的编写说明 (12)第三章、调试与操作 (19)3.1 开发板调试 (19)3.2 测试结果与分析 (20)第四章、结论 ........................ 错误!未定义书签。
双机通信课程设计
双机通信课程设计一、课程目标知识目标:1. 让学生理解双机通信的基本概念,掌握双机通信的原理及过程;2. 学会使用计算机网络进行双机通信的配置与调试;3. 了解双机通信在实际应用中的优势和局限。
技能目标:1. 培养学生运用所学知识解决双机通信问题的能力;2. 提高学生在实际操作中排除双机通信故障的技巧;3. 培养学生团队协作、沟通交流的能力。
情感态度价值观目标:1. 培养学生对计算机网络技术的兴趣,激发其探索精神;2. 增强学生的网络安全意识,使其遵循网络道德规范,养成良好的网络行为;3. 培养学生面对问题积极进取、勇于创新的精神风貌。
课程性质:本课程为计算机网络技术与应用的实践课程,以理论教学为基础,实践操作为核心。
学生特点:学生处于高年级阶段,具备一定的计算机网络基础知识和实践操作能力。
教学要求:结合学生特点,注重理论与实践相结合,强调实践操作能力的培养。
通过课程学习,使学生能够掌握双机通信的相关知识,具备实际应用能力,为将来的工作和学习打下坚实基础。
教学过程中,将目标分解为具体的学习成果,以便进行有效的教学设计和评估。
二、教学内容1. 理论教学:- 双机通信基本概念:定义、分类及应用场景;- 双机通信原理:数据传输过程、通信协议;- 双机通信配置:IP地址配置、子网掩码设置、网关设置;- 双机通信故障排除:常见故障现象、原因及解决方法。
2. 实践操作:- 双机通信配置与调试:使用计算机网络设备进行实际操作;- 故障排除练习:模拟实际场景,培养学生解决双机通信问题的能力;- 案例分析:分析实际应用中双机通信的典型案例,提高学生应用能力。
教学大纲安排:第一周:双机通信基本概念及分类;第二周:双机通信原理及数据传输过程;第三周:双机通信配置方法及实践操作;第四周:双机通信故障排除方法及实践操作;第五周:案例分析及总结。
教材章节:第三章 计算机网络通信技术;教学内容列举:1. 3.1 节 双机通信概述;2. 3.2 节 双机通信原理;3. 3.3 节 双机通信配置与调试;4. 3.4 节 双机通信故障排除;5. 3.5 节 双机通信应用案例。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机课程设计双机通信一、设计目的1、掌握单片机89C52的程序设计,掌握单片机通信程序编制方法。
2、了解单片机实现通信的硬件环境。
3、掌握双机通信的原理和方法。
二、设计要求1、用两片单片机,实现双机通信;2、用与A机连接的按键控制A机对B机的信息传输,每按一次键,首先发送端显示要发送数据,两台机器的发光二极管的显示相同。
3、用与B机连接的按键控制B机对A机的信息传输,每次按键,数码管的显示自动加一。
三、设计器材四、设计思路及方案1、设计思路计划采用主从共两片STC8952RC单片机来实现双机通信的,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。
需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。
电路分为数码管显示模块,单片机工作的基本复位、晶振模块。
2、设计原理(1)原理概述双机通信系统通过主从单片机的串行口来实现数据的收发。
主单片机通过开关电路来启动发送程序,当开关按下时向从机发送一个数据,从机通过接收中断来接收主机发送过来的数据,并通过编写好的数据代码在LED数码管上显示主机发送过来的数据。
同时从机给主机发送一个应答信号来表示已经接收到了主机发送过来的数据,在主机接收应答并校验正确,以二极管显示,这样就完成了一个数据的通信过程,等待按键按下,然后继续下一次数据的发送直到结束。
(2)串行通信串行数据通信要解决两个关键问题,一个是数据传送,另一个是数据转换。
所谓数据传送就是指数据以什么形式进行传送。
所谓数据转换就是指单片机在接收数据时,如何把接收到的串行数据转化为并行数据,单片机在发送数据时,如何把并行数据转换为串行数据进行发送。
单片机的串行通信使用的是异步串行通信,所谓异步就是指发送端和接收端使用的不是同一个时钟。
异步串行通信通常以字符(或者字节)为单位组成字符帧传送。
字符帧由发送端一帧一帧地传送,接收端通过传输线一帧一帧地接收。
而对于两个单片机之间的串行通信,由于具有相同的数据格式及电平且是短距离通信则不必要使用一些电平转化芯片便可直接实现串行通讯,需要注意的是两单片机硬件要共地,软件中需要设置相同波特率。
五、软件系统实现1、软件仿真图单片机晶振电路 复位电路2、软件程序代码 (1)甲机程序代码/* 名称:甲机串口程序说明:甲机向乙机发送控制命令字符,甲机同时接收乙机发送的数字,并显示在数码管上。
*/#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit LED1=P1^0;sbit LED2=P1^3;sbit K1=P1^7;uchar Operation_No=0; //操作代码//数码管代码uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//延时void DelayMS(uint ms){uchar i;while(ms--) for(i=0;i<120;i++);}//向串口发送字符void Putc_to_SerialPort(uchar c){SBUF=c;while(TI==0);TI=0;}//主程序void main(){LED1=LED2=1;P0=0x00;SCON=0x50; //串口模式 1,允许接收TMOD=0x20; //T1 工作模式 2PCON=0x00; //波特率不倍增TH1=0xfd;TL1=0xfd;TI=RI=0;TR1=1;IE=0x90; //允许串口中断while(1){DelayMS(100);if(K1==0) //按下 K1 时选择操作代码 0,1,2,3{while(K1==0);Operation_No=(Operation_No+1)%4;switch(Operation_No)//根据操作代码发送 A/B/C 或停止发送{case 0: Putc_to_SerialPort('X');LED1=LED2=1;break;case 1: Putc_to_SerialPort('A');LED1=~LED1;LED2=1;break;case 2: Putc_to_SerialPort('B');LED2=~LED2;LED1=1;break;case 3: Putc_to_SerialPort('C');LED1=~LED1;LED2=LED1;break;}}}}//甲机串口接收中断函数void Serial_INT() interrupt 4{if(RI){RI=0;if(SBUF>=0&&SBUF<=9) P0=DSY_CODE[SBUF];else P0=0x00;}}(2)乙机程序代码/* 名称:乙机程序接收甲机发送字符并完成相应动作说明:乙机接收到甲机发送的信号后,根据相应信号控制 LED 完成不同闪烁动作。
*/#include<reg51.h>#define uchar unsigned char#define uint unsigned intsbit LED1=P1^0;sbit LED2=P1^3;sbit K2=P1^7;uchar NumX=-1;//延时void DelayMS(uint ms){uchar i;while(ms--) for(i=0;i<120;i++);}//主程序void main(){LED1=LED2=1;SCON=0x50; //串口模式 1,允许接收TMOD=0x20; //T1 工作模式 2TH1=0xfd; //波特率 9600TL1=0xfd;PCON=0x00; //波特率不倍增RI=TI=0;TR1=1;IE=0x90;while(1){DelayMS(100);if(K2==0){while(K2==0);NumX=++NumX%11; //产生 0~10 范围内的数字,其中 10 表示关闭SBUF=NumX;while(TI==0);TI=0;}}}void Serial_INT() interrupt 4{if(RI) //如收到则 LED 则动作{RI=0;switch(SBUF) //根据所收到的不同命令字符完成不同动作{case 'X':LED1=LED2=1;break;//全灭case 'A':LED1=0;LED2=1;break; //LED1 亮case 'B':LED2=0;LED1=1;break; //LED2 亮case 'C':LED1=LED2=0;}六、硬件电路设计1、硬件电路设计方案从硬件电路设计的目标出发,我们尽量考虑到可靠、高效、简洁的原则,在整个系统设计过程中严格按照规范进行,做好各部分模块设计最优。
简洁是指在满足了可靠、高效的要求后,为了尽量在器件允许的范围内使电路设计导线无交叉,应使电路设计尽量简洁,尽量减少元器件使用数量,缩小电路板面积,使电路部分重量轻。
在焊接电路板时由于从机的数码管管脚排布无规律,使得导线不能直接的焊接,我们尽量合理设计元件排列和电路走线,使本系统达到设计要求。
2、单片机最小系统89C52单片机的最小系统采用内部时钟方式:以XTAL1和XTAL2引脚外接晶振,构成了自激振荡器并在单片机内部产生时钟脉冲信号,然后给晶振的每个脚分别外接一个30PF的电容,以此使晶振快速起振并且达到约11.0592MHZ的稳定频率。
而在单片机的RST脚接上按键开关以及适当的电阻、电容便构成按键与断电两用的复位电路。
3、数码管显示模块设计中,我们使用P0口控制数码管段选信号,P1口选取两位为位选信号控制端。
拿到数码管后,我们借助万用表进行测试,最终确定为共阴极数码管,进而测试便得出了该数码管对应的管脚分布图。
七、问题分析与解决方法课程设计初期主要对通过课程设计要求完成的功能进行问题分析,再通过查询书本与网络资源,初步确定一个思路。
等所有器件都拿到以后,通过对不同器件功能的分析,确定最终要实现的目标。
然后运用ISIS 7 Professional软件连接好所有的器件,然后编写程序,在仿真系统下验证功能是否正确。
在得到准确的仿真结果后开始焊接。
在实验过程中,我们遇到了以下几个问题:1.在仿真没有错误的电路在实际做完之后不工作,首先我们检查了电路焊接,并没有发现有虚焊和短路的现象。
因此我们怀疑是否烧程序的时候出现问题我们没有发现,然后我们一共重新烧过三次程序,最后可以正常工作了。
2.虽然我们得到了实验结果,但是数码管显示不是很显眼,于是我们对电路进行了改进,在数码管连接处加上三极管放大电路作为驱动,发现实验结果比之前要好了很多。
3.电路中我们少焊接了一个排阻,以至数码管无法显示,之后添加排阻之后,数码可以显示了。
八、课程设计心得体会经过两个星期的课程设计,总的来说,我们小组每个人都努力做好了自己要做的,但对结果还是不太满意,虽然板子焊接好了,结果也出来了,但还是对设计的整体要求理解不深,没有对设计有进一步的加深,没有更好的拓展。
在这方面我们还需要以后努力的学习,加深理解,更好的锻炼自己。
课设的过程中,我们小组合作的很好,每个人都很好的完成了自己的任务,从查资料,仿真电路,再到焊接板子,我们都是齐心协力,出现问题的时候我们会一起讨论,寻找问题的原因,经过我们的努力问题都得到了解决。
通过这次课设,我们的理论、实践都得到了锻炼。
但要学的还很多,只有拓宽自己的知识,才能在实践中更容易找到问题所在,也能对问题有更好的理解。
这一次我们做的是有关单片机的课程设计,是我比较感兴趣的,所以抱有很大的信心。
在老师讲解课程设计内容的时候,我们所做的双机通信是最简单的,所以老师一句话就带过了,因此需要我们自主的去查询一些知识。
在开始的两天,由于器件没有到手,而且实验室没有电,我们便在宿舍与图书馆查询资料,等到第三天器件都拿到,我们才确定了一个比较明确的思路。
焊接电路时候,我们组是三个男生、一个女生,我是女生,比较心细,就承担起了主要的焊接任务。
我们在焊接的时候十分小心,防止有虚焊和短路的情况发生,同时也希望有一个比较美观的布板,所以焊接虽然慢一些却也一次性成功了,除了后期排阻和三极管的添加,基本还是不错的。
我发现在做任何事情的时候都需要我们有足够的耐心与细心来完成,而且我们必须学会将课本上的知识转换到实际的能力,我在这一方面的能力就比较薄弱,是缺少锻炼的缘故,因此以后在学习的过程中,一定要学会关注功能的实现这一方面。