双机间的串口双向通信

上传人:飞*** 文档编号:47741728 上传时间:2018-07-04 格式:PDF 页数:21 大小:1.30MB
返回 下载 相关 举报
双机间的串口双向通信_第1页
第1页 / 共21页
双机间的串口双向通信_第2页
第2页 / 共21页
双机间的串口双向通信_第3页
第3页 / 共21页
双机间的串口双向通信_第4页
第4页 / 共21页
双机间的串口双向通信_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《双机间的串口双向通信》由会员分享,可在线阅读,更多相关《双机间的串口双向通信(21页珍藏版)》请在金锄头文库上搜索。

1、1 单片机原理与应用课程设计任务书学院计算机与信息工程学院专业网络工程课程名称单片机原理与应用学年设计题目双机间的串口双向通信完成期限自 2014年 12 月 29日 至 2015 年 1 月 4 日共 1 周内容及任务一、项目的目的实现双机串口双向通信,验证双机通信原理,提高动手能力,检验知识掌握情况。二、项目任务的主要内容和要求两个单片机(甲机和乙机)之间采用方式1 双向串行通信。(1) 甲机的 K1 按键可通过串口控制乙机的LED1点亮, LED2灭,甲机的 K2按键控制乙机 LED1 灭,LED2点亮,甲机的 K3按键控制乙机的 LED1和 LED2全亮。(2) 乙机的 K2按键课控制

2、串口向甲机发送按下的次数,按下的次数通过串口显示在甲机P0口的数码管上。三、项目设计思路 使用甲乙两片 89C51双机通信。发送方的数据由串行口输出, 经过电平转换输出, 经过传输线将信号传送到接收端。接收方也进 行电平转换后,信号到达接收方串行口的接收端。接受方接收后, 在数码管上显示接收的信息。 本设计是硬件电路和软件编程相结合的设计方案,选择合适的 编程语言是一个重要的环节。 在单片机的应用系统程序设计时,常 用的是汇编语言和C语言。 C语言虽然执行效率没有汇编语言高, 但语言简洁,使用方便,灵活,运算方便,表达类型多样化,数据 结构类型丰富, 具有结构化的控制语句, 程序设计自由度大,

3、 有很 好的可重用性,可移植性等特点。所以我们采用 C语言编写了程序。四、具体成果形式和要求完成设计说明书,提交仿真电路和可执行代码。进度安排起止日期工作内容12.29-12.31 查资料,构建主题思想,绘制电路图1.1-1.2 代码实现1.3-1.4 代码调试和文档资料2 主要参考资料1 张毅刚,彭喜元,姜守达,乔立岩 . 新编 MCS-51单片机应用设计. 哈尔滨工业大学出版社 . 2009.08 2 李全利 . 单片机原理与接口技术 . 高等教育出版社 .2009.01 3 蔡明文,冯先成 . 单片机课程设计 . 华中科技出版社 .2007.03 4 范红刚,魏学海,任思 璟.51 单片

4、机自学笔记 . 北京航空航天大学出版社 .2010.01 指导教师意见(签字) :年月日系 (教研室)主任意见(签字) :年月日3 单片机原理与应用学年设计说明书学院名称:计算机与信息工程学院班级名称:学生姓名:学号:2012211369 题目:双机间的串口双向通信指导教师姓名:起止日期:2014.12.29 至 2015.1.4 4 一、 绪论随着电子技术的飞速发展,单片机也步如一个新的时代,越来越多的功能各异的单片机为我们的设计提供了许多新的方法与思路。对于一些场合,比如:复杂的后台运算及通信与高实时性前台控制系统、软件资源消耗大的系统、功能强大的低消耗系统、加密系统等等。如果合理使用多种

5、不同类型的单片机组合设计,可以得到极高灵活性与性能价格比,因此,多种异型单片机系统设计渐渐成为一种新的思路,单片机技术作为计算机技术的一个重要分支, 由于单片机体积小 , 系统运行可靠 ,数据采集方便灵活 , 成本低廉等优点 , 在通信中发挥着越来越重要的作用。但在一些相对复杂的单片机应用系统中, 仅仅一个单片机资源是不够的, 往往需要两个或多个单片机系统协同工作。这就对单片机通信提出了更高要求。单片机之间的通信可以分为两大类:并行通信和串行通信。串行通信传输线少,长距离传输时成本低,且可以利用数据采集方便灵活,成本低廉等优点,在通信中发挥着越来越重要的作用。所以本系统采用串行通信来实现单片机

6、之间可靠的,有效的数据交换。二、相关知识2.1 双机通信介绍两台机器的通信方式可分为单工通信、半双工通信、双工通信,他们的通信原理及通信方式为:单工通信:是指消息只能单方向传输的工作方式。单工通信信道是单向信道,发送端和接收端的身份是固定的,发送端只能发送信息,不能接收信息;接收端只能接收信息,不能发送信息, 数据信号仅从一端传送到另一端,即信息流是单方向的。通信双方采用单工通信属于点到点的通信。根据收发频率的异同,单工通信可分为同频通信和异频通信。半双工通信:这种通信方式可以实现双向的通信,但不能在两个方向上同时进行,必须轮流交替地进行。也就是说,通信信道的每一段都可以是发送端,也可以是接端

7、。但同一时刻里,信息只能有一个传输方向。如5 日常生活中的例子有步话机通信等。双工通信:双工通信是指在同一时刻信息可以进行双向传输,和打电话一样,说的同时也能听,边说边听。这种发射机和接收机分别在两个不同的频率上能同时进行工作的双工机也称为异频双工机。双工机的特点是使用方便,但线路设计较复杂,价格也较高。2.2 单片机 AT89C51介绍AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写 1000次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 M

8、CS-51指令系统及 80C51引脚结构,芯片内集成了通用8 位中央处理器和ISP Flash 存储单元, 功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C51具有如下特点: 40 个引脚, 8k Bytes Flash片内程序存储器, 256 bytes 的随机存取数据存储器( RAM ) ,32 个外部双向输入 / 输出(I/O )口, 5 个中断优先级 2 层中断嵌套中断, 2 个 16 位可编程定时计数器 ,2 个全双工串行通信口,看门狗( WDT )电路,片内时钟振荡器。另外, AT89C51 可降至 0Hz 静态逻辑操作,支持2 种软

9、件可选择节电模式。空闲模式下, CPU 停止工作,允许 RAM 、定时器 / 计数器、串口、中断继续工作。掉电保护方式下, RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89C51芯片 DIP 双列直插式封装引脚如图1.1 所示。图 1.1 AT89C51 引脚排列P0 口:P0口是一个 8 位漏极开路的双向I/O 口。作为输出口,每位能驱动6 8 个 TTL逻辑电平。对 P0端口写“ 1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时, P0口也被作为低 8 位地址 / 数据复用。在这种模式下, P0具有内部上拉电阻。P1 口:P1 口是一个具有

10、内部上拉电阻的8 位双向 I/O 口,P1 输出缓冲器能驱动 4 个 TTL 逻辑电平。对 P1 端口写“ 1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 作为输入使用时, 被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL ) 。引脚口第二功能如下:P1.0/T2 (定时器 / 计数器 T2的外部计数输入),时钟输出P1.1/T2EX(定时器 / 计数器 T2的捕捉/ 重载触发信号和方向控制)P1.5/MOSI(在系统编程用)P1.6/MISO(在系统编程用)P1.7/SCK(在系统编程用)P2 口:P2口是一个具有内部上拉电阻的8 位双向 I/O 口,P2 输出缓冲器能驱动

11、 4 个 TTL逻辑电平。对 P2 端口写“ 1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 作为输入使用时, 被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL ) 。在访问外部程序存储器或用16 位地址读取外部数据存储器(例如执行MOVX DPTR)时, P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送 1。在使用 8 位地址(如 MOVX RI)访问外部数据存储器时,P2口输出 P2锁存器的内容。P3 口:P3 口是一个具有内部上拉电阻的8 位双向 I/O 口,P2 输出缓冲器能驱动 4 个 TTL逻辑电平。对 P3 端口写“ 1”时,内部上拉电阻把端

12、口拉高,此时可以作为输入口使用。 作为输入使用时, 被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL ) 。 P3 口亦作为 AT89C51特殊功能(第二功能)使用。引脚口第二功能如下:P3.0/RXD(串行输入口 ) P3.1/TXD(串行输出口 ) P3.2/INTO( 外中断 0) P3.3/INT1( 外中断 1) P3.4/TO( 定时/ 计数器 0) P3.5/T1( 定时/ 计数器 1) P3.6/WR(外部数据存储器写选通 ) P3.7/RD(外部数据存储器读选通 ) 7 此外, P3口还接收一些用于FLASH 闪存编程和程序校验的控制信号。RST 复位输入。当振荡器工

13、作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE (地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。如有必要,可通过对特殊功能寄存器(SFR )区中的 8EH单元的 D0位置位,可禁止 ALE操作。该位置位后,只有一条MOVX 和 MOVC 指令才能将 ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN 程序储存允许(PSEN )

14、输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN 信号。EA/VPP 外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH ) ,EA端必须保持低电平(接地) 。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如 EA端为高电平(接 Vcc 端) ,CPU 则执行内部程序存储器的指令。2.3 串行通信简介2.3.1 串行通信的特点在远程通信和计算机科学中,串行通信是指在计算机总线或其他数据通道上,每次传输一个位元数据, 并

15、连续进行以上单次过程的通信方式。与之对应的是并行通信,它在串行端口上通过一次同时传输若干位元数据的方式进行通信。一位接一位地顺序传送。 这样一个字节的数据要分8 次由低位到高位按顺序一位位地传送。由此可见,串行通信的特点如下:1、节省传输线,这是显而易见的。尤其是在远程通信时,此特点尤为重要。这也是串行通信的主要优点;2、数据传送效率低。与并行通信比,这也这是显而易见的。 这也是串行通信的主要缺点。串行通信被用于长距离通信以及大多数计算机网络,在这些应用场合里, 电缆和同步化使并行通信实际应用面临困难。凭借着其改善的信号完整性和传播速度,串行通信总线正在变得越来越普遍,甚至在短程距离的应用中,

16、 其优越性已经开始超越并行总线不需要串行化元件等缺点。8 2.3.2串行通信技术标准a 数据传输率(1) 比特率和波特率:比特率是指每秒传输的二进制位数,用bps(bit/s)表示。波特率是指每秒传输的符号数,若每个符号所含的信息量为1 比特,则波特率等于比特率。在计算机中, 一个符号的含义为高低电平,它们分别代表逻辑“1”和逻辑“ 0” ,所以每个符号所含的信息量刚好为1 比特,因此在计算机通信中,常将比特率称为波特率,即:1 波特(B)=1比特(bit )=1位/ 秒(1bps)例如: 电传打字机最快传输率为每秒10个字符 / 秒, 每个字符包含 11个二进制位 ,则数据传输率为 :11 位/ 字符 10个字符 / 秒=110位/ 秒=110波特(Baud)计算机中常用的波特率是: 110、300、600、1200、2400、4800、9600、19200、28800、33600,目前最高可达 56Kbps.(2) 位时间 Td:位时间是指传送一个二进制位所需时间,用 Td 表示。 Td = 1/波特率 = 1/B(3) 发送时钟和接收时钟在串

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号