07.项目七 单片机串行通信设计与实现

合集下载

单片机串行通信实验

单片机串行通信实验

实验四单片机串行通信实验一、实验目的1、掌握单片机串行口工作方式的程序设计,及简易三线式通讯的方法。

2、了解实现串行通讯的硬环境、数据格式的协议、数据交换的协议。

3、学习串口通讯的中断方式的程序编写方法二、实验说明利用单片机串行口,实现两个实验台之间的串行通讯。

其中一个实验台作为发送方,另一侧为接收方。

发送方读入按键值,并发送给接收方,接收方收到数据后在LED上显示。

三、实验仪器计算机伟福实验箱(lab2000P )四、实验内容与软件流程图1、8051的RXD、TXD接线柱在POD51/96仿真板上。

2、通讯双方的RXD、TXD信号本应经过电平转换后再行交叉连接,本实验中为减少连线可将电平转换电路略去,而将双方的RXD、TXD直接交叉连接。

也可以将本机的TXD 接到RXD上,这样按下的键,就会在本机LED上显示出来。

3、若想与标准的RS232设备通信,就要做电平转换,输出时要将TTL电平换成RS232电平,输入时要将RS232电平换成TTL电平。

可以将仿真板上的RXD、TXD信号接到实验板上的“用户串口接线”的相应RXD和TXD端,经过电平转换,通过“用户串口”接到外部的RS232设备。

可以用实验仪上的逻辑分析仪采样串口通信的波形4、软件流程图5、实验电路连接方式①双机串行通信方式。

TXD脚和RXD脚分别用于发送和接收数据。

②单机通信的情况下,只需将自己的TXD脚与RXD脚连接就可以,不用公地操作。

五、思考题1、接收到的数据加1显示出来;2、保存前一个接收到的数据,数据向前推动显示。

六、源程序修改原理及其仿真结果实验结果图源程序:加1显示:接收到的数据先前推送:七、心得体会通过这次实验,我掌握了单片机串行口工作方式的程序设计,及简易三线式通讯的方法。

了解了实现串行通讯的硬环境、数据格式的协议、数据交换的协议。

学习了串口通讯的中断方式的程序编写方法。

单片机串口通信设计方案

单片机串口通信设计方案

单片机串口通信设计方案1.绪论1.1课题背景及意义目前,单片机的发展速度大约每两、三年要更新一代,集成度增加一倍,功能翻一番。

其发展速度之快、应用围之广已达到了惊人的地步,它已渗透到生产和生活的各个领域,应用非常广泛。

在汽车、通信、智能仪表、家用电器和军事设备的智能化以及实时过程控制等方面,单片机都扮演着非常重要的角色[1]。

因此单片机的设计开发具有广阔的前景。

所以,对于电气类学生而言,学习一种单片机的开发是十分必要的。

而51系列的单片机,随着半导体技术的发展,其处理速度更快,性能更优越,在工业控制领域上占据十分重要的地位,通过对51系列单片机的学习而掌握单片机开发的过程是一种不错的选择。

然而单片机是一门综合性、实践性都很强的学科,其学习涉及的实验环节比较多,硬件设备投入比较大,对于大多数人而言很难投入大笔资金去购买实验器件。

而且要进行硬件电路测试和调试,必须在电路板制作完成、元器件焊接完毕之后进行,但这些工作费时费力。

因此引入EDA软件仿真系统建立虚拟实验平台,不仅可以大大提高单片机的学习效率,而且大大减少硬件设备的资金投入,同时降低对硬件设备的维护工作。

EDA设计思路是:从元器件的选取到连接、直至电路的调试、分析和软件的编译,都是在计算机中完成,所用的工作都是虚拟的。

虽然现在的电路设计软件已经很多,诸如PROTEL、ORCAD、EWB 、Multisim等,不过这些软件之间的差别都不大:都有原理图和PCB制作功能,都能进行诸如频率响应,噪音分析等电路分析,主要用于模拟电路、数字电路、模数混合电路的性能仿真与分析,但对于单片机设计及软件编程,最重要的是两者的联调,这些软件都无法实现,所以造成了单片机系统设计周期长、设计费用高等缺点[2]。

新款的EDA软件Proteus解决了上述软件的不足,成为目前最好的一款单片机学习仿真软件。

Proteus 软件是由英国Lab Center Electronics 公司开发的EDA 工具软件。

单片机教学单元设计7 单片机串行通信设计与实现

单片机教学单元设计7 单片机串行通信设计与实现

《单片机应用技术》课程单元7教学设计单元标题:单片机串行通信设计与实现单元教学学时10在整体设计中的位置第7次授课班级上课时间周月日第节至周月日第节上课地点教学目标能力目标知识目标素质目标1.能完成单片机串行通信电路设计与制作;2.能完成单片机点对点、点对多数据传输程序设计、运行及调试。

1.知道串行通信的概念、结构及相关寄存器的设置;2.知道串行口的4种工作方式;3.会利用C51对串行通信进行简单的C语言程序设计。

1.具有对新知识、新技术的学习能力;2.具有决策能力,能记录、收集、处理、保存各类专业技术的信息资料;3.具有科学的创新精神、决策能力和执行能力。

能力训练任务任务一:单片机点对点数据传输用两片STC89C52单片机实现点对点数据传输。

下位机将ADC0808采样到的模拟电压信号转换成数字量发送到上位机;上位机收到数据后,把接收到的数据送到8个LED进行显示(既二进制显示)。

任务二:水塔水位远程监控系统用两片STC89C52单片机实现水塔远程自动控制。

下位机通过ADC0808采集水塔水位的高低,同时发送给上位机进行数码显示并判断处理;上位机把处理之后的结果发送回下位机,再由下位机负责水泵的启动与停止。

任务三:单片机点对多数据传输采用多个AS89S52单片机,实现一主机多从机的通信。

主机发送的信息可以传到各个从机或指定的从机;各从机发送的信息只能被主机接收。

单元教学进度步骤教学内容及能力/知识目标教师活动学生活动时间(分钟)1(单片机点对点数据传输)教学内容:用两片STC89C52单片机实现点对点数据传输。

下位机将ADC0808采样到的模拟电压信号转换成数字量发送到上位机;上位机收到数据后,把接收到的数据送到8个LED进行显示(既二进制显示)。

能力目标:1.能完成单片机点对点串行通信电路设计与制作;2.能完成单片机点对点数据传输程序设计、运行及调试。

知识目标:1.知道串行通信的概念;2.会利用C51对串行通信进行简单的点对点C语言程序设计。

单片机串行通信实验报告

单片机串行通信实验报告

单片机实验报告(三)实验名称:串行通信姓名:张昊学号:110404247班级:通信2班时间:2013.11南京理工大学紫金学院电光系一、实验目的1、理解单片机串行口的工作原理;2、学习使用单片机的TXD、RXD口;3、了MAX232解芯片的作用。

二、实验原理计算机与其外部设备之间进行数据交换称为通信。

通信的基本方式可分为并行通信和串行通信两种。

并行通信中数据至少有8路,可以同时将一个字节的8位二进制代码发送到对方。

串行通信用两根传输线进行数据的传输,一次只能发送一位二进制。

串行通信技术根据传送的编码格式不同,可分为同步通信和异步通信两种方式:1、同步方式:数据以数据块为单位传送。

在开始传送前用同步字符来指示,并由时钟来实现发送端和接收端同步。

2、异步方式:数据时不连续传送的。

以字符为单位进行传送。

被传送字节分为:起始位、数据位、校验位和停止位,称为一帧。

常用格式:a、1bit起始位+8bit数据位+无校验位+1bit停止位b、1bit起始位+8bit数据位+1位偶校验位+1bit停止位串行通信技术根据数据流动方向分为三种方式:1、单工通信:数据流动方向是固定的,数据只能由一方发送到另一方。

2、半双工通信:数据的流动方向是双向的,但一时刻,数据只能在一个方向流动。

3、全双工通信:允许数据在两个方向流动,即通信双方的数据发送和接收是同时的。

串行口控制寄存器SCON的格式如下:D7 D6 D5 D4 D3 D2 D1 D0SM0、SM1:由软件置位或清零,用于选择串行口四种工作方式。

SM2:多机通信控制位。

在方式2和方式3中,如SM2=1,则接收到的第9位数据(RB8)为0时不启动接收中断标志RI(即RI=0),并且将接收到的前8位数据丢弃;RB8为1时,才将接收到的前8位数据送入SBUF,并置位RI,产生中断请求。

当SM2=0时,则不论第9位数据为0或1,都将前8位数据装入SBUF中,并产生中断请求。

单片机与PC机之间的串行通信设计【课程设计报告】

单片机与PC机之间的串行通信设计【课程设计报告】

单片机与PC机之间的串行通信设计【课程设计报告】本报告旨在介绍单片机与PC机之间的串行通信设计。

我们将阐述课程设计报告的主题和目的,并说明单片机与PC机之间串行通信的重要性和应用领域。

串行通信是一种在单片机和PC机之间进行数据传输的常用方法。

在许多电子系统中,单片机扮演着控制和数据处理的重要角色,而PC机作为用户与单片机之间的接口和信息处理中心。

为了实现单片机与PC机之间的通信,串行通信技术成为一种高效、可靠的选择。

串行通信的重要性主要体现在以下几个方面:数据传输速度:串行通信可以提供较高的数据传输速度,使单片机和PC机在快速处理和传输大量数据时更加高效。

数据传输距离:串行通信可以允许单片机和PC机之间的数据传输距离较远,适用于需要远程控制和监测的应用场景。

电路连接简单:串行通信只需要少量的电气接口和信号线,使得硬件连接更加简单,降低了系统的成本和复杂度。

应用广泛:串行通信被广泛应用于各种领域,如工业自动化、物联网、通信设备等。

掌握串行通信设计技能对于电子工程师具有重要意义。

通过本课程设计报告,我们将详细介绍单片机与PC机之间的串行通信设计原理、方法和相关技术要点。

我们将讨论不同的通信协议和接口标准,并给出具体的设计实例和案例分析。

我们相信通过对串行通信设计的深入研究和实践,我们可以提高对单片机与PC机之间通信的理解和应用能力。

让我们开始我们的单片机与PC机之间的串行通信设计之旅吧!在本报告中,我们将简要介绍单片机和PC机的基本概念,解释串行通信的原理与方法。

单片机的基本概念单片机是一种集成电路,也称为微控制器,具有处理和控制电子设备的能力。

它通常包括中央处理器、存储器、输入输出设备和各种接口。

单片机广泛应用于各种电子设备中,如家电、汽车、通讯设备等。

PC机的基本概念PC(个人电脑)机指的是个人使用的计算机系统,通常包括中央处理器、主板、内存、硬盘、显示器、键盘、鼠标等设备。

PC机是一种通用计算机系统,可运行各种软件应用。

单片机与PC机串行通信的毕业论文设计说明

单片机与PC机串行通信的毕业论文设计说明

单片机与PC机串行通信的毕业论文设计说明设计说明:单片机与PC机串行通信一、设计目标和背景单片机与PC机之间的串行通信通常是通过串口实现的,本设计旨在实现单片机和PC机之间的数据交互和通信。

串行通信可以使单片机与PC机之间实现高效的数据传输,为数据监测、数据采集和控制等应用场景提供便捷的解决方案。

二、设计内容和方法1.硬件设计硬件设计主要包括串口电路和通信线路的设计。

(1)串口电路的设计:根据通信要求,选择适当的串口芯片,并与单片机相连,实现串口的输入和输出。

(2)通信线路的设计:选择合适的通信线路,将单片机与PC机相连,确保数据传输的可靠性。

2.软件设计软件设计主要包括单片机程序和PC端程序的编写。

(1)单片机程序设计:通过单片机程序实现串口的初始化配置、数据的接收和发送等功能,实现单片机与PC机之间的数据通信。

(2)PC端程序设计:通过PC端程序实现串口的初始化配置、数据的接收和发送等功能,实现PC机与单片机之间的数据通信。

三、功能实现1.单片机发送数据给PC机:单片机通过串口将数据发送给PC机,PC机通过串口接收数据并进行处理。

2.PC机发送数据给单片机:PC机通过串口将数据发送给单片机,单片机通过串口接收数据并进行处理。

3.实现数据的双向交互:单片机和PC机之间实现双向数据交互,在一方发送数据的同时,另一方可以接收数据并进行处理。

四、设计思路和关键技术1.串口配置:在单片机和PC机端分别进行串口的初始化配置,包括波特率设置、数据位设置、校验位设置等,确保两端的串口通信参数一致。

2.数据传输机制:设计合适的数据传输机制,例如通过帧头和帧尾进行数据包的标识和校验,保证数据的完整性和正确性。

3.中断处理:利用中断机制实现单片机的串口数据接收,在接收到数据时及时进行处理,提高单片机的响应速度。

4.编码和解码:设计合理的编码和解码算法,实现数据的传输和处理。

五、预期结果和应用价值通过以上设计思路和关键技术的实现,可以实现单片机与PC机之间的串行通信。

【精品】第7章-单片机C语言编程串行口通讯教学课件

【精品】第7章-单片机C语言编程串行口通讯教学课件

同步字符1
同步字符2
数据流 数据 数据 …
图7-4 同步通信数据帧格式
➢共需要两根线,一根数据线DATA和一根时钟线CLK; ➢按照时钟信号,从低到高逐个传送数据位.
CLK
DATA 空闲
D0 D1 D2 D3 D4 D5 D6 D7 数据位②
空闲
7.1.3 波特率
在串行通信中,对数据传送速度有一定 要求。波特率表示每秒传送的位数,单位为 b/s(bit per second,简写bps)。
每帧11位:即1位起始位、8位数据位 (低位在前)、1位可编程的第9数据位和1 位停止位。
发送时,第9数据位(TB8)可以设置为 1或0,也可将奇偶位装入TB8;
接收时,第9数据位进入SCON的RB8。
7.4 串行口应用举例
主要内容
7.4.1 同步方式应用 7.4.2 异步方式应用
7.4.1 同步方式应用
MSC-51单片机的串行口在方式0时,以 同步方式操作。外接串入/并出或并入/串出 器件,可实现I/O口的扩展。
例7-2 用89C52串行口外接164串入/并出 移位寄存器扩展8位并行输出口,外接165并 入/串出移位寄存器扩展8位并行输入口。8位 并行输出口的每位都接一个发光二极管,要 求从8位并行输入口读入开关的状态值,使 闭合开关对应的发光二极管点亮。如图7-13 所示。
半双工方式:一对传输线允许向两个方向 中的任一方向传送数据,但不能同时进行;
全双工方式:用两对传输线连接在发送器 和接收器上,发送和接收能同时进行。
7.1.4 单工、半双工、全双工通讯方式
A
B






A 发送器
接收器

单片机串行通信功能设计

单片机串行通信功能设计

单片机串行通信功能设计摘要现代的单片机测控系统中通常以PC机作为控制中心,单片机将采集到的数据通过串口送给PC机进行各种处理,为保证数据传送的及时性和正确性,就必须建立可靠的通讯。

在开发控制系统时,信号的测控及采集均由单片机系统自行完成,然后通过异步串行通信口将信号实时地传送给PC机进行处理。

上位PC机使用VB进行串口通信的编程,下位单片机使用C51进行编程。

本文详述了使用VB和C51实现PC机和单片机串行通信的开发方法,并简要地介绍了VB 通讯控件及其使用方法,给出了调试程序。

采用将置于现场MCS一51单片机应用系统挂在主机PC的串行通信上,通过串行通信电路及系统控制软件与PC机和单片机进行数据交换的方式,实现了对现场数据的接收与发送。

串行通信系统主机采用标准接口。

该系统的通信是由PC机主动进行发信访问,各个MCS一51单片机处于被动通信状态,对PC机与单片机数据通信的校验采用奇校验方式。

关键词: 单片机;串行通信;VB程序设计; 上位机AbstractModern microcontroller measure-control system usually regard PC as the control center, the microcontroller will send the collected data to a PC for a serial port, to ensure that the transmission of all the timeliness and accuracy data, It must establish reliable communication. In the development of the control system, signal control and collection of microcomputer system itself, then through asynchronous serial communication to the real-time signal transmitted PC.PC using VB programming for serial communication, SCM C51 use for programming. The paper describes using VB C51 and PC machine and MCU development method of serial communication, and briefly introduces the method of using VB communication control is presented, and debugging. Using placed on site MCS a 51 SCM system in the PC host hanging on the serial communication, through serial communication circuit and control system software and PC and MCU exchange data on site, receiving and sending data. Serial communication system is using standard interface host. The system of communication by the PC is active on a visit each MCS kindhearted passive communication 51-series microcomputer. For PC and calibration adopts single-chip data communication's parity.Keywords:Single Chip; Serial communication; VB program design; Host computer目录第一章绪论 (1)1.1单片机技术介绍 (1)1.2课题背景与意义 (2)1.3课题研究内容 (3)第二章串行通信基础 (4)2.1串行通信协议 (4)2.2通信方式 (5)2.2.1串行通信 (5)2.2.2并行通信 (6)2.3串行通信方式 (6)2.3.1异步串行通信方式 (6)2.3.2同步串行通信方式 (7)2.4串行通信的制式 (8)2.4.1单工 (8)2.4.2半双工 (8)2.4.3全双工 (9)2.5波特率 (9)2.6串行通信的错误校验 (10)2.6.1奇偶校验 (10)2.6.2代码和校验 (10)2.6.3循环冗余校验 (10)2.7串行通信的工作方式 (11)2.7.1 方式0 (11)2.7.2 方式1 (12)2.7.3 方式2和方式3 (13)2.8本章小结 (14)第三章系统开发基础 (15)3.1系统硬件 (15)3.1.1 微处理器芯片89C51 (15)3.1.2 显示芯片HD7279A (17)3.1.3 串行通信芯MAX232 (18)3.2软件工具及编程语言 (19)3.2.1选用VB开发上位机软件 (19)3.2.2 MSComm 控件的主要属性、事件 (19)3.2.3编程小结 (20)3.3系统方案设计 (21)第四章系统方案实施 (22)4.1接口设计 (22)4.1.1 系统连接电路 (22)4.1.2串行通信电路 (23)4.2软件设计 (24)4.2.1显示HD7279显示程序 (24)4.2.2串行口通信 (25)4.2.3 VB通信程序 (26)4.3小结 (27)第五章结束语 (28)致谢 ..................................................................................... 错误!未定义书签。

【设计】单片机串行通信课程设计报告

【设计】单片机串行通信课程设计报告

【关键字】设计《单片机原理及接口技术》课程设计报告课题名称两个单片机之间的串行通讯接口设计学院自机学院专业机械设计制造及其自动化班级1班姓名学号时间目录一、设计任务概述 (3)(1)设计的目的 (3)(2)课程设计要求 (3)(3)课程设计的内容 (4)1、设计要求: (3)2、设计方案: (3)2、硬件设计 (3)1、51片机串行通信功能 (3)2、MAX232芯 (6)3、DS18B20温度传感 (7)4、整体电路设计 (8)三、软件设计 (10)1、串行通信软件实现 (10)2串行通信的传输方式 (10)3、串行通信工作方式 (10)4、程序流程图 (10)四、联合调试 (12)附录 (13)一.设计任务概述(1)设计的目的单片机课程设计作为独立的数学环节,是自动化及相关专业集中实践性环节系列之一,是学习完《单片机原理及应用》课程后,并在进行相关课程设计基础上进行的一次综合练习。

单片机课程设计过程中,我们通过查阅资料、接口设计、程序设计、安装调试等环节,完成一个基于MCS-51系列单片机,涉及多种资源应用,并具有综合功能的小应用系统设计。

让我们不仅将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件等方面的知识进一步加深认识,同时在软件编程、调试、相关仪器设备和相关软件的使用技能等方面得到较全面的锻炼和提高。

让我们增加了对单片机的感性认识,加深对单片机理论方面的理解,同时也加深单片机的内部功能模块的应用。

使我们了解和掌握单片机应用系统的软硬件设计过程、方法及实现,强化单片机应用电路的设计与分析能力。

提高我们在单片机应用方面的实践技能和科学作风;培育我们综合运用理论知识解决问题的能力。

(2)课程设计要求通过对课题的分析,进行系统功能设计,选择器件,划分软硬件的功能,用Proteus 软件在PC机上完成硬件原理图设计。

用汇编语言,完成软件设计。

然后使用Proteus仿真软件在PC机上进行系统仿真,调试电路和修改调试程序,直至达到设计的要求和取得满意的效果。

单片机课程设计实验---单片机间串行通信

单片机课程设计实验---单片机间串行通信

《单片机原理及应用》课程设计报告课程设计题目:单片机间串行通信原理专业班级:2012级电子信息科学与技术学生姓名:罗滨志学号:120802010051成绩:2014 年12 月 27日目录摘要 (1)1 设计任务 (1)1.1 功能要求 (2)1.2 总体方案及工作原理 (2)2 系统硬件设计 (2)2.1 器件选择 (2)2.1.1主要器件的型号 (2)2.1.2 AT89C51 (3)2.1.3键盘输入电路 (5)2.1.4晶振电路方案 (6)2.1.5数码管显示 (6)2.1.6复位电路方案 (6)2.2 硬件原理图 (7)3 系统软件设计 (7)3.1基本原理 (8)3.2系统软件设计流程图 (8)3.3 按键程序设计 (9)3.3.1串口通信程序设计: (10)3.3.2 显示程序设计: (10)3.4软件清单 (10)3.4.1发送端程序 (10)3.4.2接收端程序 (9)4实验步骤 (14)4.1实验程序调试 (14)4.1.1发送端程序调试 (14)4.1.2接收端程序调试 (15)4.2实验仿真 (16)5设计总结 (17)6参考文献: (17)摘要单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。

而AT89C51单片机是各单片机中最为典型和最有代表性的一种,本设计是基于MCS51系列单片机中AT89C51所设计的一种具有一个全双工的串行通信口,可以实现单片机与单片机之间点对点串行通信,主从通信以及上,下位机互相通信等。

本设计基于单片机技术原理,以单片机芯片AT89C51作为核心控制器,由单片机与键盘控制数码管的显示,修改设置LED显示由按键开关控制,通过硬件电路制作以及软件程序的编制,设计制作一个简单的单片机间串行通信。

关键词:单片机 AT89C51 串行通信1 设计任务单片机间串行通信,是工业自动化、智能终端、通信管理等领域传统且重要的通讯手段。

7第七章 串行通信接口《单片机原理与项目实践——基于C语言》课件

7第七章 串行通信接口《单片机原理与项目实践——基于C语言》课件
串行口结构框图
7.2 串行接口寄存器
串行口的发送和接收都是以特殊功 能寄存器SBUF的名义进行读或写的,当 向SBUF发“写”命令时(执行SBUF= 数据;)即是向发送缓冲器SBUF装载并 开始由TXD引脚向外发送的一帧数据, 发送完便使发送中断标志位TI=1。
7.2 串行接口寄存器
7.2.2 串行口控制寄存器
2 电路图 3 程序
7.7 串口应用实例
例7.3 甲乙两个单片机进行通信,要求: (1)甲机通过按键K1可以控制乙机的 LED1、
LED2的亮灭; (2)乙机通过按键K2可以向甲机发送数字,
1 并程显序示分在析甲机的数码管上;
2 电路图
3 程序
7.8 小 结
1.以字符或字节为单位组成数据帧进行的 传送称为异步通信,以数据块为单位连续 进行的传送称为同步通信。 2.在串行通信的编程中,如果是方式1和方 式3,初始化程序中必须对定时计数器T1 进行初始化编程以选择波特率。
控制MCS-51单片机串行口控制寄存器 共有两个:特殊功能寄存器SCON和PCON。 SCON和PCON选口地址分别为98H和87H, SCON用于控制和监视串行口的工作状态, 可以位寻址。MCS-51单片机串行通信的方 式选择、接收与发送控制及串行口的标志均 由SCON控制和指示,PCON为电源控制寄 存器,没有位寻址功能。
第七章 串行通信接口
7.1 串行通信简介
2. 同步通信
同步通信是一种连续串行传送数据的 通信方式,一次通信只传送一帧信息。这 里的信息帧与异步通信中的字符帧不同, 通常含有若干个数据字符。它们均由同步 字符、数据字符和校验字符(CRC)组成。
7.2 串行接口寄存器 7.2.1 串行口内部结构
7.4 RS-232标准及其应用 MAX232连线图与引脚图

单片机串行通信的设计

单片机串行通信的设计

单片机串行通信的设计单片机性能稳固、价格低廉、功能强大,在智能仪器、工业装备以及日用电子消费品中得到了越来越广泛的应用。

在单片机的输入输出操纵中,除直截了当接上小键盘和LCD显示屏等方法外,一样都通过串口和上位机PC进行通信,而后一种方法由于能实现远程操纵,同时能够利用PC机强大的数据处理功能以及友好的操纵界面,显得尤为重要。

在一样的利用PC 机对单片机进行操纵的场合,差不多上采纳Windows作为上位机的平台,其优点是界面友好,编程和操作都比较容易,缺点是稳固性太差,这关于需要连续数天或数月运行的装置来讲,专门不合适。

在要求比较苛刻的场合,一样都采纳UNIX工作站作为主控平台,如合肥同步辐射加速器的主控平台采纳的是SUN的Solaris工作站系统,然而UNIX工作站昂贵的价格又大大限制了其使用的范畴。

近年来,随着Linux的迅猛进展,使其逐步从少数人的玩具变成了主流的操作系统。

Linux是遵循GPL协议的免费源代码开放软件,任何人都能够自由的从Internet上取得其源程序,也可在GP L的协议下修改其源代码以适应特定的应用,其运行在一般的PC上,性能稳固,专门适于做工业操纵,因此实现Linux和单片机的串行通信专门有意义,他能够是昂贵的UNIX工作站的一种可选的替代方法。

1硬件原理目前国内使用较多的为MCS-51系列的单片机,因此选用的单片机实验对象为一片AT89C51,图1是硬件原理图,由于要实现符合RS232C 的串行通信,还应该用一片ICL232CPE(MAX232)作为串行通信的电平转换电路。

在实验过程中,为了查看通信是否成功,除了让单片机对上位机回送数据外,还在单片机外围扩展了几片锁存器,几个LED发光二极管和几个小键盘。

串行通信是采纳最简单的TxD,RxD,GND三线制连接,注意TxD和RxD两边应该交叉连线。

上位机是一台一般的PC机,共有2个串行口COM1,COM2,其运行RedHat8.0,实际上,如果不要求运行Gnome或KDE等图形界面,Linux 对系统硬件的要求相当低。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

接 收 或 发送数 据 , 是通过 串 行 口对外 的 两 条独立 收 发信 号线 RXD (P3.0)、TXD(P3.1)来实现的,因此可以同时发送、接收数据,其 工作方式为全双工制式。
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
TTL与RS232
232电平或者说串口电平,有的甚至说计算机电平, 所有的这些说法,指得都是计算机9针串口 (RS232)得电平,采用负逻辑, -15v ~ -3v 代表1 +3v ~ +15v 代表0 TTL:Transistor-Transistor Logic 三极管结 构。 Vcc:5V;VOH>=2.4V;VOL<=0.5V;VIH>=2V; VIL<=0.8V。
项目七 单片机串行通信设计与实现
XTAL1
19
X2 CRYSTAL C5
30pF
XTAL2
18
R10
10k
RST
9
PSEN ALE EA
29 30 31
C6
10uF
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
1 2 3 4 5 6 7 8
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
T1计数率 = fosc /12 12 (256 X ) 溢出周期= T1溢出所需周期数/ T1计数率= f osc 溢出率为溢出周期的倒数
f osc 2 SMOD SMOD(T1溢出率)/32= 波特率 = 2 32 12(256 X)
fosc: 晶振的时钟频率
为了避免因溢出而产生不必要的中断,此时应禁 止T1中断。
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
定时器T1溢出所需周期数计算
T1工作方式及溢出所需周期数: 方式0: 溢出所需周期数 = 8192 – X 方式1: 溢出所需周期数 = 65536 – X 方式2: 溢出所需周期数 = 256 – X X为初值
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
串行中断控制器SCON
SM0、SM1: 串行口工作方式
SM2=1为多机通信控制工作方式(方式2,3)
REN:
接受允许控制位。
REN=0 禁止
REN=1 允许
TB8、RB8: 发送、接收第9位数据 TI: 发送中断标志。
远程数据采集程序
数据发送端程序 数据接收端程序
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
CPU与外部通信
CPU与外部通信的基本方式有两种:
并行通信——数据的各位同时传送。 串行通信——数据一位一位顺序传送。
1 0 1 0 1 0 0 1 D0 D1 D2 D3 D4 D5 D6 D7 控制 状态 (a) 并行通信 1 0 1 0 1 计算机 0 或外设 0 1 10101001 计算机 或外设 发送 接收 (b) 串行通信
C4
接收端
U3 R8
220
30pF
R7
220
R6
220
R5
220
R4
220
R3
220
R2
220
R1
220
D8
LED-RED
D7
LED-RED
D6
LED-RED
D5
LED-RED
D4
LED-RED
D3
LED-RED
D2
LED-RED
D1
LED-RED
39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
串行通信波特率
波特率的定义为每秒钟传送二进制数码的位数(亦 称比特数),单位是bit/s,即位/秒。
相互通信双方必须具有相同的波特率 例如:数据传输速率是240字符/s,每个字符包含10位 数,则波特率为2400波特。
OUT8 OUT7 OUT6 OUT5 OUT4 OUT3 OUT2 OUT1 EOC START CLOCK ADC0808
C3
10uF
29 30 31
RV1
50%
PSEN ALE EA
1k
1 2 3 4 5 6 7 8
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C51
计算机
计算机
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
串行通信方式
单工通信 半双工通信
同步通信
全双工通信
异步通信
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
异步通信和同步通信
异步通信
数据格式一般由1个起始位、7或8个数据位、1~2个停 止位和一个校验位组成
19 XTAL1 CRYSTAL 18 XTAL2 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17
通信双方采用独立时钟,起始位触发双方同步时钟
同步通信
数据格式有多个数据组成,每帧有一个或两个同步字 符作为起始位 必须用一个时钟协调收发器,硬件较复杂
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
串行通信模式
单工方式
单向传输
发送器
接收器
半双工方式
远程数据采集
模拟量由电位器模拟产生; 使用ADC0808/ADC0809模数转换器完成模数转换; 下位机通过串行通信将转换结果传送到上位机; 上位机将转换结果送到LED显示。
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
远程数据采集电路
C2
30pF
发送端
U1 X1
P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD AT89C51
项目七 单片机串行通信 设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
教学目的
了解单片机串行通信的工作原理; 掌握单片机串行通信的编程方法; 掌握上位机与下位机串行通信的连接方法; 掌握远程数据采集实现的方法。
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
计算机科学系
单片机应用技术项目教程(C语言版)
中断允许控制寄存器IE
ES=1 ES=0 EA 允许串行中断 禁止串行中断 总允许控制
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
波特率选择与设置
方式0: 波特率=f/12 波特率固定 方式2: 波特率=2SMODf/64 方式1 和 方式3(用定时器T1作波特率发生器)
在方式0中,8位发送结束时,TI=1。TI必须用软件清零
RI: 接收中断标志。
在方式0中,8位接收结束时,RI=1。RI必须用软件清零
项目七 单片机串Βιβλιοθήκη 通信设计与实现计算机科学系
单片机应用技术项目教程(C语言版)
电源控制寄存器PCON
SMOD=1 时,串行口波特率加倍
项目七 单片机串行通信设计与实现
每位的传输时间定义为波特率的倒数。例如:波 特率为1200 bit/s的通信系统,其每位的传输时 间应为: 1 Td 0.833(ms) 1200
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
单片机串行接口结构框图
内部总线 8 发送 SBUF (99H) 门 TXD(P3.1)
发送控制器 定 时 器 1 接收 SBUF (99H) 串行口中断 ≥1 TI RI 接收控制器 8 8
串 行 控 制 寄 存 器 (98H) RXD(P3.0)
输入移位寄存器
项目七 单片机串行通信设计与实现
计算机科学系
单片机应用技术项目教程(C语言版)
SBUF
SBUF是串行口缓冲寄存器,包括发送和接收寄存器(名字相同,但不 会冲突) SBUF是两个在物理上独立的接收、发送寄存器,一个用于存放接收到 的数据,另一个用于存放欲发送的数据,可同时发送和接收数据。 两个SBUF共用一个地址99H,通过对SBUF的读、写指令来区别是对接 收缓冲器还是发送缓冲器进行操作。 CPU在写SBUF时,就是修改发送缓冲器;读SBUF,就是读接收缓冲器 的内容。
相关文档
最新文档