单片机双机通信课程设计报告
单片机课程设计 双机通信 西安邮电大学

西安邮电大学单片机课程设计报告书题目:双机通信院系名称:自动化学院学生姓名:专业名称:测控技术与仪器班级:时间:2012年 5 月 21 日至 6 月 1 日一、设计目的利用所学单片机知识解决实际问题。
二、设计要求1.用两片单片机,实现双机通信;2.利用与A(主机)连接的按键控制与B(从机)连接的数码管,每按一次键,主机LED亮同时数码管显示数据,随后从机LED亮,伴随着数码管显示与主机相同的数据;3.同理,用与B机连接的按键控制与A机连接的数码管。
1. STC89C52单片机介绍(1)STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programmable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。
(2)外部时钟电路(3)复位电路(4)系统硬件结构图(5)硬件仿真图(6)系统软件流程图及程序代码程序流程图程序代码如下:#include <reg52.h>#define uchar unsigned charsbit COM1 = P2^1;sbit COM2 = P2^0;sbit LED = P1^0;uchar ch, x = 0;uchar ge, shi;uchar const NUM[10] = {0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90}; void delay_ms(uchar ms);void initModule(void);void sendOneChar(uchar ch);**************函数功能:发送数据*********** void sendOneChar(uchar ch){ES = 0;SBUF = ch;while(!TI);TI = 0;ES = 1;}void initModule(){TMOD = 0x20;TH1 = 0xfd;TL1 = 0xfd;SCON = 0x50;COM1 = 0;COM2 = 0;LED = 1;}**************函数功能:延迟************ void delay_ms(uchar ms){uchar i, j;for (i=0; i<ms; i++)for(j=0;j<110;j++);}*************主函数************void main(){initModule();EX0 = 1;IT0 = 1;ES = 1;EA = 1;TR1 = 1;P0 = NUM[0];while(1){}}void button() interrupt 0{uchar num = 0;delay_ms(20);if (INT0 == 0){LED = 0;delay_ms(500);LED = 1;x++;if(x==25){x=0;}}shi = x / 10;ge = x % 10;while (num < 20){COM1 = 1;P0 = NUM[shi];delay_ms(15);COM1 = 0;COM2 = 1;P0 = NUM[ge];delay_ms(15);COM2 = 0;num++;}sendOneChar(x);}void read() interrupt 4 {uchar num = 0;RI = 0;LED = 0;delay_ms(300);LED = 1;shi = SBUF / 10;ge = SBUF % 10;while (num < 20){COM1 = 1;P0 = NUM[shi];delay_ms(15);COM1 = 0;COM2 = 1;P0 = NUM[ge];delay_ms(15);COM2 = 0;num++;}}五、问题分析与解决方法问题一:仿真问题仿真图画好之后,开始运行,发光二极管没有反应。
单片机单片机课程设计-双机串行通信

单片机单片机课程设计-双机串行通信单片机课程设计双机串行通信在当今的电子信息领域,单片机的应用无处不在。
而双机串行通信作为单片机系统中的一个重要环节,为实现设备之间的数据交换和协同工作提供了关键的技术支持。
一、双机串行通信的基本原理双机串行通信是指两个单片机之间通过串行接口进行数据传输的过程。
串行通信相较于并行通信,具有线路简单、成本低、抗干扰能力强等优点。
在串行通信中,数据是一位一位地按顺序传输的。
常见的串行通信协议有 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 模块进行初始化。
单片机双机串口通信课程设计

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

目录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接收。
需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。
双机通信 课程设计报告

目录第一章系统的功能 (2)第二章系统的设计方案 (3)2.1硬件设计 (3)2.1.1涉及的芯片 (3)2.1.2 8251A芯片 (3)2.1.3 8279芯片 (5)2.2软件设计 (13)2.2.1设计简单介绍 (13)2.2.2 模块设计详细分析 (14)第三章操作说明 (17)第四章总结 (18)参考文献 (19)附: (20)1、硬件原理图 (20)2、程序流程图 (21)3、源程序清单及注释 (23)第一章系统的功能随着计算机的不断普及,在我们的周围可能会同时出现多台微型计算机,而且这些计算机的牌号,后型号不同,而且有的格式不兼容。
于是利用单片机串行口实现不同计算机之间的相互通信,以达到信息或程序的共享是非常有用的。
另一方面,在某计算机的软磁盘驱动器万一出现故障的情况下,也可以通过它将计算机硬盘的数据或程序拷贝出来。
文件传输程序可以用来在两个计算机之间传输任何类型的文件(包括二进制文件),对于那些有不同类型的计算机特别有用。
网络的发展,局域网的建立,使得一个文件服务器以及允许其他计算机从服务器中装入文件或将它们存入文件服务器也可以通过串口来实现。
第二章系统的设计方案2.1硬件设计2.1.1涉及的芯片1. 8251A接口芯片用于实现微机间的通信,发送数据;2. 8279芯片用于微机间接受数据和显示数据;2.1.2 8251A芯片8251A是一种可编程的同步/异步串行通信接口芯片,具有独立的接收器和发送器,能实现单工、半双工、双工通信。
由于近距离传输,所以可以不用MODEM,而直接互连。
同时采用查询方式,故接收/发送程序中只需检查发送/接收的准备好状态是否置位,在准备好时就发送或接收一个字节。
(1)在实验过程中,数据通信的基本方式可分为并行通信与串行通行,而我们的实验正是采用了串行通行方式,这种方式通信线路简单,利用线路就可实现通信,这样实验易于实现并且降低了成本,而且适合远距离通信。
单片机双机通信实验报告

单片机双机通信实验报告
实验目的:
1. 了解单片机之间的串口通信原理;
2. 掌握单片机之间的双机通信方法;
3. 实现单片机之间的数据互相传输。
实验器材:
1. 单片机开发板(两块);
2. USB转串口模块(两个);
3. 杜邦线若干;
4. 电脑。
实验步骤:
首先,将单片机开发板和USB转串口模块进行连接,具体的连接方法如下:
1. 将USB转串口模块的TXD引脚连接到单片机开发板的RXD引脚上;
2. 将USB转串口模块的RXD引脚连接到单片机开发板的TXD引脚上;
3. 将USB转串口模块的GND引脚连接到单片机开发板的GND引脚上;
4. 将USB转串口模块的VCC引脚连接到单片机开发板的VCC引脚上。
接下来的步骤如下:
1. 打开两台电脑上的串口调试助手软件,并分别将波特率设置为相同的数值(例如9600);
2. 在一台电脑上,发送数据给另一台电脑。
具体的操作是在串口调试助手软件上输入要发送的数据,然后点击发送按钮;
3. 在另一台电脑上,接收来自第一台电脑发送的数据。
具体的操作是在串口调试助手软件上点击接收按钮,然后可以看到接收到的数据。
实验结果:
通过实验可以看到,单片机之间成功地实现了数据的双向传输。
一台单片机发送的数据可以被另一台单片机接收到。
实验总结:
本实验通过串口通信的方式实现了单片机之间的双机通信。
通过这种方式,可以方便地实现单片机之间的数据互相传输,可以用于各种应用场景,如传感器与控制器之间的数据传输等。
同时要注意,串口通信的波特率要设置一致,否则数据将无法正确接收。
单片机双机串行实验报告

单片机双机串行实验报告实验目的:通过单片机实现双机串行通信功能,掌握串行通信的原理、方法和程序设计技巧。
实验原理:双机串行通信是指通过串行口将两台单片机连接起来,实现数据的传输和互动。
常用的串行通信方式有同步串行通信和异步串行通信。
异步串行通信是指通过发送和接收数据时的起始位、停止位和校验位进行数据的传输。
而同步串行通信是指通过外部时钟信号进行数据的同步传输。
实验器材:1.两台单片机开发板(MCU7516)2.两个串口线3.两台计算机实验步骤:1.将两台单片机开发板连接起来,通过串口线连接它们的串行口。
2.在两台计算机上分别打开串口调试助手软件,将波特率设置为相同的数值(例如9600)。
3.在编程软件中,编写两个程序分别用于发送数据和接收数据。
4.在发送数据的程序中,首先要设置串口的波特率、数据位、停止位和校验位,并将数据存储在缓冲区中。
然后利用串口发送数据的指令将数据发送出去。
5.在接收数据的程序中,同样要设置串口的参数。
然后使用串口接收数据的指令将接收到的数据存储在缓冲区中,并将其打印出来。
实验结果与分析:经过实验,我们成功地实现了单片机之间的双机串行通信。
发送数据的单片机将数据发送出去后,接收数据的单片机能够正确地接收到数据,并将其打印出来。
实验中需要注意的是,串口的波特率、数据位、停止位和校验位必须设置为相同的数值。
否则,发送数据的单片机和接收数据的单片机无法正常进行通信。
同时,在实验之前,需要了解单片机开发板支持的串口通信相关的指令和函数。
实验总结:通过本次实验,我们深入了解了单片机之间的双机串行通信原理和方法。
掌握了串口的设置和使用方法,以及相关的指令和函数。
在实验中,我们学会了如何通过串行口实现数据的传输和互动,为今后的单片机应用和开发打下了基础。
同时,我们还发现,双机串行通信在实际应用中有着广泛的用途。
例如,可以通过串行通信实现两台计算机之间的数据传输,或者实现单片机与计算机之间的数据收发。
单片机单片机课程设计报告-双机串行通信

基于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〔通用异步承受和发送器〕用,也可以作为同步移位存放器用。
单片机,双机通信实验报告

单片机,双机通信实验报告洛阳理工学院实验报告系别计算机系班级Bxxxx学号Bxxxx姓名史锦峰课程名称单片机原理及组成实验日期2021.04.28实验名称双机通信及PCB设计过程成绩实验目的:掌握串行口通信工作原理,熟悉单片机电路的PCB设计过程实验条件:计算机、KeiluVision4、ISIS7Professional、实验箱实验内容:1.掌握串行通信原理和中断法通信软件编程;2.完成实验的C51语言编程;3.学习使用ARES软件,完成实验61#机电路;实验电路图仿真运行效果图一:图二:源程序:#include#defineucharunsignedcharvoiddelay(unsignedinttime){unsignedintj=0;for(;time>0;time--)for(j=0;j15)counter=0;delay(500);}}}#include#defineucharunsignedcharvoidmain(void){ucharreceiv;P2=0x3f;TM OD=0x20;TH1=TL1=0xf4;PCON=0;SCON=0x50;TR1=1;while(1){while(RI==1){RI=0;receiv=SBUF;SBUF=receiv;while(TI==0)TI=0;P2=receiv;}}}实验总结:一直不能正确显示同步的信号,询问老师后才知道是实验箱烧写程序时用了两台电脑,但是进行通讯时不在一台机子上。
这是一个很重要的店。
都不好意思不赞一下!总算找到一篇这么赞的范文。
实验三双机通信实验一、实验目的UART串行通信接口技术应用二、实验实现的功能用两片核心板之间实现串行通信,将按键信息互发到对方数码管显示。
三、系统硬件设计实验所需硬件:电脑一台;开发板一块;串口通信线一根;USB线一根;四、系统软件设计实验所需软件:编译软件:keiluvision3;程序下载软件:STC_ISP_V480;试验程序:#includesbitW1=P0^0;sbitW2=P0^1;sbitW3=P0^2;sbitW4=P0^3;sbitD9=P3^2;s bitD10=P3^3;sbitD11=P3^4;sbitD12=P3^5;sbitDP=P1^7;codeunsignedchartab le[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x3 9,0x5e,0x79,0x71};sfrP1M1=0x91;sfrP1M0=0x92;sbitH1=P3^6;sbitH2=P3^7;s bitL1=P0^5;sbitL2=P0^6;sbitL3=P0^7;unsignedchardat;unsignedcharkeynum ;unsignedcharkeyscan();voiddisplay();voiddelay(void);-1L1=1;L2=1;L3=1;H1=0;if(L1==0)return1;elseif(L2==0)return2;elseif(L3==0)return3;H1=1;H2=0;if(L1==0)return4;elseif(L2==0)return5;elseif(L3==0)return6;H2=1;return0;}unsignedcharkeyscan(){staticunsignedintct=0;staticunsignedcharla stkey=0;unsignedcharkey;key=getkey();if(key==lastkey){ct++;if(ct==900){ct=0;lastkey=0;returnkey;}}else{-3。
单片机双机之间的串行通讯设计报告

单片机双机之间的串行通讯设计报告摘要:本文介绍了一种基于单片机的双机之间的串行通讯设计。
该设计使用两个单片机,通过串行通信协议进行数据传输。
通讯过程中,两台单片机之间通过数据线连接,并使用中断方式进行数据接收和发送。
同时,本文还介绍了串行口工作方式 0 的应用,以及如何使用移位寄存器进行串行口扩展。
通过该设计,可以实现两台单片机之间的高速数据传输,并且具有良好的稳定性和可靠性。
关键词:单片机,串行通讯,中断方式,移位寄存器,串行口扩展一、引言串行通讯是计算机系统中常用的一种数据传输方式,它可以实现不同设备之间的数据传输。
在单片机应用中,串行通讯也是一种常见的数据传输方式。
本文介绍了一种基于单片机的双机之间的串行通讯设计,该设计使用两个单片机通过串行通信协议进行数据传输。
本文还介绍了串行口工作方式 0 的应用,以及如何使用移位寄存器进行串行口扩展。
通过该设计,可以实现两台单片机之间的高速数据传输,并且具有良好的稳定性和可靠性。
二、设计原理该串行通讯设计使用两个单片机,分别为发送单片机和接收单片机。
发送单片机将数据通过串行口发送到接收单片机,接收单片机再将接收到的数据进行处理。
两台单片机之间通过数据线连接,并使用中断方式进行数据接收和发送。
在串行通讯中,数据是通过串行口进行传输的。
串行口工作方式0 是一种常见的串行口工作方式,它使用移位寄存器进行数据接收和发送。
在移位寄存器中,数据被移位到寄存器中进行传输,从而实现了数据的串行传输。
三、设计实现1. 硬件设计在该设计中,发送单片机和接收单片机分别使用一个串行口进行数据传输。
发送单片机将数据通过串行口发送到接收单片机,接收单片机再将接收到的数据进行处理。
两台单片机之间通过数据线连接,并使用中断方式进行数据接收和发送。
硬件设计主要包括两个单片机、串行口、数据线和中断控制器。
其中,两个单片机分别拥有自己的串行口,并且都能够接收和发送数据。
数据线将两台单片机连接在一起,中断控制器用于处理数据的接收和发送。
单片机双工通信课程设计

单片机双工通信课程设计一、课程目标知识目标:1. 学生能理解单片机双工通信的基本原理,掌握相关通信协议;2. 学生能掌握单片机双工通信编程方法,运用所学知识解决实际问题;3. 学生了解双工通信在实际应用中的优缺点,为后续项目设计提供参考。
技能目标:1. 学生能够运用所学知识,独立完成单片机双工通信程序编写和调试;2. 学生能够分析双工通信过程中的问题,并提出合理的解决方案;3. 学生能够在实际项目中灵活运用双工通信技术,提高项目实施效果。
情感态度价值观目标:1. 培养学生对单片机双工通信技术的兴趣,激发学习热情;2. 培养学生团队合作意识,提高沟通协调能力;3. 培养学生具备解决问题的自信心,形成积极向上的学习态度;4. 培养学生关注科技发展,了解双工通信技术在实际应用中的价值。
本课程针对高年级学生,课程性质为理论实践相结合。
在分析学生特点和教学要求的基础上,将课程目标分解为具体的学习成果,以便后续教学设计和评估。
通过本课程的学习,学生将掌握单片机双工通信技术的基本原理和编程方法,具备实际应用能力,为后续项目设计和实施奠定基础。
同时,培养学生积极的学习态度和良好的团队合作精神。
二、教学内容1. 单片机双工通信原理:介绍双工通信的定义、分类及工作原理,结合教材第3章相关内容,分析双工通信在实际应用中的重要性。
- 串行通信基础- 双工通信模式及特点- 双工通信协议分析2. 单片机双工通信编程方法:结合教材第4章内容,讲解单片机双工通信编程技巧,使学生掌握编程方法和调试技巧。
- 通信接口及编程- 双工通信程序设计- 通信程序调试与优化3. 单片机双工通信应用案例:分析教材第5章中的实际案例,使学生了解双工通信在项目中的应用,提高学生的实际操作能力。
- 双工通信在智能家居中的应用- 双工通信在物联网中的应用- 双工通信在无人驾驶系统中的应用4. 双工通信实验与实践:根据教材第6章内容,组织学生进行双工通信实验,巩固所学知识,提高动手能力。
双机通信系统单片机课程设计

双机通信系统单片机课程设计设计概况 (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 双机通信系统原理框图软件部分,通过通信协议进行发送接收,发送机先送联络信号给接收机,当接收机接收到联络信号后,向发送机回答一个应答信号,表示同意接收。
双机通信实验报告

一、实验目的1. 掌握双机通信的基本原理和实现方法。
2. 熟悉串行通信的硬件接口和软件编程。
3. 通过实验,加深对单片机串行通信的理解和应用。
二、实验原理双机通信是指两台计算机或单片机之间的数据交换。
串行通信是双机通信中常用的一种通信方式,它将数据一位一位地按顺序传送,适合于远距离通信。
本实验采用单片机串行通信,通过串行口实现数据传输。
三、实验设备1. 两套单片机实验装置(如AT89S51单片机最小系统)2. 串行通信线(如RS-232线)3. 串口调试工具(如串口助手)4. 连接线和电源四、实验内容1. 硬件连接将两套单片机实验装置通过串行通信线连接起来,确保连接线正确无误。
2. 软件编程(1)单片机编程编写单片机程序,实现数据的发送和接收。
程序主要包括以下部分:- 初始化串行口:设置波特率、数据位、停止位和校验位等。
- 发送数据:将数据写入发送缓冲区,启动发送。
- 接收数据:检测接收缓冲区是否有数据,读取数据。
(2)PC端编程编写PC端程序,实现数据的发送和接收。
程序主要包括以下部分:- 串口配置:设置串口号、波特率、数据位、停止位和校验位等。
- 发送数据:将数据写入串口缓冲区,启动发送。
- 接收数据:从串口缓冲区读取数据,显示或处理。
3. 调试与测试(1)单片机端调试- 使用串口调试工具,发送数据到单片机。
- 检查单片机接收到的数据是否正确。
(2)PC端调试- 使用串口调试工具,发送数据到PC。
- 检查PC接收到的数据是否正确。
五、实验结果与分析1. 硬件连接硬件连接正确,两套单片机实验装置通过串行通信线连接。
2. 软件编程(1)单片机程序```c// 单片机程序示例(AT89S51)#include <reg51.h>#define BAUDRATE 9600sbit TXD = P3^1; // 发送引脚sbit RXD = P3^0; // 接收引脚void Serial_Init() {TMOD = 0x20; // 定时器1工作在模式2TH1 = 0xFD; // 设置波特率TL1 = 0xFD;TR1 = 1; // 启动定时器1SCON = 0x50; // 设置串行口工作在模式1 }void main() {Serial_Init();while (1) {// 发送数据TXD = 1; // 发送起始位while (!TXD); // 等待发送完成// 发送数据字节for (char i = 0; i < 8; i++) {TXD = 1; // 发送数据位while (!TXD);TXD = 0; // 发送停止位while (!TXD);}// 接收数据RXD = 1; // 接收起始位while (!RXD); // 等待接收完成// 接收数据字节for (char i = 0; i < 8; i++) {RXD = 1; // 接收数据位while (!RXD);RXD = 0; // 接收停止位while (!RXD);}}}```(2)PC端程序```c// PC端程序示例(C#)using System;using System.IO.Ports;class Program {static void Main() {SerialPort serialPort = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One);serialPort.Open();while (true) {// 发送数据serialPort.WriteLine("Hello, world!");// 接收数据string receivedData = serialPort.ReadLine();Console.WriteLine("Received: " + receivedData);}serialPort.Close();}}```3. 调试与测试通过串口调试工具,发送数据到单片机和PC,检查接收到的数据是否正确。
单片机双机之间的串行通信设计

单片机双机之间的串行通信设计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.串行通信:串行通信是将数据一个个位发送或接收的方式。
数据通过一个线路逐位发送或接收,可以减少通信所需的线路数目。
2. UART串口通信:UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的简称,是一种最常用的串口通信方式,通常用于单片机与计算机、单片机与单片机之间的通信。
3.串口模块:串口模块是负责将数据转变为串行传输的硬件模块,包括发送端和接收端。
通过设置波特率、数据位、校验位和停止位等参数,可以实现数据的可靠传输。
4.单片机串口通信:单片机内部集成了UART串口通信接口,只需要通过相应的寄存器配置,可以实现串口通信功能。
5.双机串行通信:双机串行通信是通过串口将两台单片机进行连接,一台单片机作为发送端,负责将数据发送出去;另一台单片机作为接收端,负责接收并处理发送的数据。
三、实验器材与软件1.实验器材:两台单片机、USB转TTL模块、杜邦线若干。
2. 实验软件:Keil C51集成开发环境。
四、实验内容与步骤1.配置发送端单片机(1)连接单片机和USB转TTL模块,将USB转TTL模块的TXD端连接到单片机的P3口,将GND端连接到单片机的地线。
(2)在Keil C51环境下创建新工程,编写发送端程序。
(3)配置串口通信的波特率、数据位、校验位和停止位,并打开串口发送中断。
(4)循环发送指定的数据。
2.配置接收端单片机(1)连接单片机和USB转TTL模块,将USB转TTL模块的RXD端连接到单片机的P3口,将GND端连接到单片机的地线。
(2)在Keil C51环境下创建新工程,编写接收端程序。
(3)配置串口通信的波特率、数据位、校验位和停止位,并打开串口接收中断。
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等)实现双机之间的数据传输。
单片机双机通信课程设计报告

课程设计说明书课程设计名称:单片机课程设计课程设计题目:单片机与单片机之间的串行通讯学院名称:信息工程学院专业:电子信息科学与技术班级: 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)编写发送程序:在发送机上编写发送程序,将要发送的信息按照通信协议和波特率发送出去。
(4)编写接收程序:在接收机上编写接收程序,按照相同的通信协议和波特率接收信息,并进行处理。
(5)测试实验:将发送机和接收机分别接入电源,观察实验现象。
4.实验结果:通过实验测试,发送机成功将信息发送给接收机,并在接收机上进行了处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计说明书课程设计名称:单片机课程设计课程设计题目:单片机与单片机之间的串行通讯学院名称:信息工程学院专业:电子信息科学与技术班级: 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)第四章、结论 ......................... 错误!未定义书签。
附录一、参考文献 (22)附录二、元器件清单 (23)附录三、电路总图 (24)附录四、实物图 (25)前言电子科学技术是人类在生产斗争和科学实验中发展起来的。
随着科学技术的发展和人类的进步,电子技术已经成了各种工程技术的核心,特别是进入信息时代以来,电子技术更是成了基本技术,其具体应用领域涵盖了通信领域、控制系统、测试系统、计算机等等各行各业。
单片机之间的数据通讯在当今社会应用相当广泛,单片机之间的数据通讯。
由于52系列单片机具有性能稳定、工作可靠、价格低廉等特点,因此其应用相当广泛。
一个52系列的单片机(如At89c52)内部包含有RAM、FLASH ROM、三个16位的定时器/计数器、一个通用异步串行通信控制器(UART)等多种资源。
但即便如此,在一些相对复杂的单片机应用系统中,仅仅一个单片机资源还是不够的,因此而常常需要扩充I/O接口、定时器/计数器、串行通信接口、RAM、ROM等。
采用通用的标准器件进行扩充是通常的做法,但将单片机本身作为一个通用的扩充器件来使用,也不失为一个好的方法。
在这种情况下,一个系统中就使用了两个或两个以上的单片机,而单片机之间就要通过互连来进行数据通信。
52系列的单片机(以下简称单片机)都带有串口,利用串口进行互连通信极为方便,其各种连接方式在许多书籍和资料上都有介绍,在此不再重述。
但如果系统要求扩充的资源是对外连接的串口,或对相互之间的数据传送有一定的速度要求,则单片机的串口就不能用作系统内两单片机的通信接口了。
所幸的是,单片机的并行端口也能相互连接来进行数据通信。
根据单片机端口内部结构的特点,这些端口的端口线可以直接相连,从而使两单片机之间并行通信接口的实现不用另外的硬件电路设备。
本文就是关于用单片机与单片机之间的串行通讯的过程及基本原理。
第一章系统功能1.1设计要求和系统的组成及工作原理一.设计要求1.用RS232串行芯片实现双向通讯。
2.传送的数据在显示器上(数码管和发光二极管)显示。
二.系统组成图1 总体框图三.工作原理双机通信系统通过甲乙单片机的串行口来实现数据的收发。
甲单片机通过开关电路来启动发送程序,甲机当开关按下时向乙机发送一个数据,乙机上蜂咛器发出声音提示有数据发送过来,乙机通过接收中断来接收和开关判断是否接收甲机发送过来的数据,并通过编写好的数据代码在8个发光二极管上显示主机发送过来的数据。
乙单片机通过开关电路来启动发送程序,乙机给甲机发送一数据,甲机上蜂咛器发出声音提示有数据发送过来,甲机通过接收中断来接收和开关判断是否接收乙机发送过来的数据,并通过编写好的数据代码在8个发光二极管上显示乙机发送过来的数据。
第二章系统设计方案2.1 硬件设计2.1.1 AT89C52和RS23说明一. At89c52单片机内部有1个功能很强大的全双工串行口,可以同时发送和接收数据。
串行口的内部有数据接收缓冲器和数据发送缓冲器,数据接收缓冲器只能读出不能写入,数据发送缓冲器只能写入不能读出,这两个数据缓冲器都是用SBUF 来表示,地址都是99H,CPU对特殊功能寄存器SBUF执行写操作就将数据写入发送缓冲器,对SBUF执行度操作就是读出接收缓冲器中的内容。
特殊功能寄存器SCON参访串行口的控制状态信号,串行口用T1或者T2作为波特率发生器(发送和接收时钟),特殊功能寄存器PCON的最高位SMOD为串行口波特率的倍率控制位。
SM0、SM1:串行口工作方式选择位SM2:多机通信控制位REN:允许/禁止串行口接收的控制位TB8:在方式2和方式3中,是被发送的第9位数据,可根据需要由软件置1或清零,也可以作为奇偶校验位,在方式1中是停止位。
RB8:在方式2和方式3中,是被接收的第9位数据(来自第TB8位);在方式中,RB8收到的是停止位,在方式0中不用。
TI——串行口发送中断请求标志位: 当发送完一帧串行数据后,由硬件置1;在转向中断服务程序后,用软件清0。
RI——串行口接收中断请求标志位: 当接收完一帧串行数据后,由硬件置1;在转向中断服务程序后,用软件清0。
SM0、SM1:串行口工作方式选择位,其组合含义如下所示:PCON 的D7位作为串行波特率系数SMOD 控制位,PCON 不可位寻址,其地址为87H ,当SMOD=1时,波特率加倍。
SMOD 在PCON 中的位置如下所示:二.RS232近程通讯总线适合于数据传输速率在0~20000b/s 范围内的通信,由于通行设备厂商都生产与RS-232C 制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。
如图2所示:图2 DB91.电气特性EIA-RS-232C 对电器特性、逻辑电平和各种信号线功能都作了规定。
123456789..在TxD和RxD上:逻辑1(MARK)=-3V~-15V逻辑0(SPACE)=+3~+15V在RTS、CTS、DSR、DTR和DCD等控制线上:信号有效(接通,ON状态,正电压)=+3V~+15V信号无效(断开,OFF状态,负电压)=-3V~-15VRS232C与TTL转换:EIA-RS-232C是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。
因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换。
最大直接传输距离说明:RS-232C标准规定,若不使用MODEM,在码元畸变小于4%的情况下,DTE和DCE之间最大传输距离为15m(50英尺。
2.DB-9连接器使用DB-9连接器,作为提供多功能I/O卡或主板上COM1和COM2两个串行接口的连接器。
它只提供异步通信的9个信号。
DB-25型连接器的引脚分配与DB-25型引脚信号完全不同。
因此,若与配接DB-25型连接器的DCE设备连接,必须使用专门的电缆线。
最大直接传输距离说明:RS-232C标准规定,若不使用MODEM,在码元畸变小于4%的情况下,DTE和DCE之间最大传输距离为15m(50英尺)。
用RS-232总线连接系统有近程通讯方式和远程通讯方式两种,近程通讯是指传输距离小于15米的通讯,可以用RS-232 电缆直接连接。
15米以上的长距离通讯,需要采用调制调解器。
当计算机与终端之间利用RS-232作近程连接时,有几根线实现交换连接。
本次实验不需要检测数据等信号状态的RS-232是异步通讯中最广泛的标准总线,适用于数据中端设备(DTE)和数据通讯设备(DCE)之间的接口。
在微机通讯中,通常使用的RS-232接口信号是九根引脚。
如图3:各引脚功能如下:图3 DB9管脚说明用RS-232总线连接系统有近程通讯方式和远程通讯方式两种,近程通讯是指传输距离小于15米的通讯,可以用RS-232 电缆直接连接。
15米以上的长距离通讯,需要采用调制调解器。
计算机和终端用RS-232连接的交叉图4如下,图中“发送数据”与“接收数据”是交叉相连的,是得两台设备都能正常的发送和接收。
图4 通讯连接数据发送与接收线:发送数据(TxD)——通过TxD 终端将串行数据发送到MODEM 。
接收数据(RxD)——通过RxD 线终端接收从MODEM 发来的串行数据。
2.1.2 双机通讯的方案选择引脚号 符号方向功能1 DCD 输入 载波检测2 RXD 输入 接收数据3 TXD 输出 发送数据4 DTR 输出 数据终端就绪5 GND 信号地6 DSR 输入 数据装置就绪7 RTS 输出 请求发送8 CTS 输入 清除发送 9RI输入振铃指示设计方案:该系统采用主从共两片AT89C52单片机来实现上位机对下位机的控制,由于是近距离的双机通信,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。
需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。
电路分为数码管显示模块,指示模块、以及单片机工作的基本复位、晶振模块。
甲机由3个数码管,4个独立键盘开关,1个蜂咛器组成。
乙机由8个发光二极管,一个蜂咛器,1个数字温度传感器DS18B20组成。
单片机上最基本的两个电路:复位电路(图5)和晶振电路(图6)图5 复位电路图6 晶振电路2.2 软件设计本系统的软件设计流程图。
系统设计代码分为以下几个部分:初始化串行、发送数据、接收数据、键盘输入、数值转换、LED显示,数码管显示,用keil编译。