串口通信的设计课程报告

串口通信的设计课程报告

ID:35208513

大小:745.85 KB

页数:11页

时间:2019-03-21

串口通信的设计课程报告_第1页
串口通信的设计课程报告_第2页
串口通信的设计课程报告_第3页
串口通信的设计课程报告_第4页
串口通信的设计课程报告_第5页
资源描述:

《串口通信的设计课程报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、串口通信的设计课程报告设计人:刘绍春电力电子实验室2014年4月目录一、课程设计内容二、原理分析三、硬件系统设计3.1主要芯片介绍3.2硬件设计框图四、软件系统设计4.1、软件流程图4.2、程序的设计五、系统硬件调试六、结论与心得摘要随着计算机技术尤其是单片机技术的发展,人们已越来越多地采用单片机对控制系统中如温度、流量和压力等参数进行检测和控制。计算机具有强大的监控和管理功能,而单片机则具有快速灵活的控制特点。计算机与单片机、单片机与单片机之间的通信具有非常重要的现实意义。本次设计在了解一定通信有关知识的基础上利用单片机串口进行多个单片机通信。一、课程设计内容单片机

2、在工业控制、尖端武器、通信设备、信息处理、家用电器等各种测控领域的应用非常广泛。单片机之所以能在通信设备的测控领域中广泛应用的一个重要的基础就是它具有数据通信的能力。而串行数据通信又是数据通信中最基本的也是最重要的一种。本次设计旨在实现计算机与单片机之间、单片机与单片机的数据通信。二、原理分析通信有并行和串行两种。并行通信时数据的各个位同时传送,可以字或字节为单位并行进行。串行通信是指使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。串行通信又分为同步串行通信和异步串行通信。所谓异步串行通信是指具有不规则数据段传送特性的串行数据传输。在单片机

3、与计算机、单片机与单片机之间通常采用异步串行通信。本次设计用51的可编程全双工串行口进行数据的发送与接收,它是有串行数据缓冲器SBUF(一个发送缓冲寄存器,一个接收缓冲寄存器)和发送控制器、接收控制器、输入位移寄存器及若干控制门电路组成。串口方式有4种工作方式,方式0-方式3。通常我们在做单片机与单片机通信、单片机与计算机通信、计算机与计算机串口通信时基本都选择方式1。所以本次设计就运用串口方式1进行串口通信。三、硬件系统设计3.1主要芯片介绍本次设计主要运用AT89C52和MAX232芯片。89C52为主要工作芯片,MAX232为数据下载传输芯片。3.2硬件设计框图

4、(1)单片机与计算机PC89C52MAX232RXDTXD(2)单片机与单片机89C5289C52数码管RXDTXD四、软件的设计本次课程主要使用串口方式1编程与实现4.1、软件流程图(一)单片机与PC机通信本次目的在于实现单片机与计算机的串口通信,具体为从计算机上给单片机发送指令,单片机接收到数据指令后返回给计算机,数据通过串口通信助手显示出来。串口初始化等待控制命令数据编码发送函数数据返回返回信息否是否(二)单片机与单片机本次设计单片机与单片机的通信主要是字符的传送,两块单片机分别为发送机和接收机。发送机发送数据,接收机将接收到的数据通过数码管显示出来以示通信成功

5、。流程图中的T表示发送机,R表示接收机R串口初始化中断是否产生接收数据发送给数码管数码管显示是T串口初始化数据编码是否发送数据否是否4.2、程序的设计(一)、单片机与计算机#include#defienucharunsignedintucharnum;voidsend(uchartxd);main(){TMOD=0x20;//定时器1工作于8位自动重载模式,用于产生波特率TH1=0xfd;//波特率9600TL1=0xfd;SCON=0x50;//设定串行口工作方式1PCON&=0xef;//波特率不倍增TR1=1;//启动定时器1IE=0x0;//

6、禁止任何中断while(1){if(RI)//是否有数据到来{RI=0;num=SBUF;//暂存接收到的数据send(num);//回传接收到的数据}}}voidsend(uchartxd)//传送一个字符{SBUF=txd;while(!TI);//等特数据传送TI=0;//清除数据传送标志}(二)、计算机与计算机1、发送程序#include"reg52.h"#defineuintunsignedint#defineucharunsignedcharvoiddelay(uintx)//i=xms即延时约xms毫秒{uinti,j;for(i=x;i>0;i--)f

7、or(j=110;j>0;j--);}voidsend(ucharnum){SBUF=num;while(!TI)TI=0;}voidmain(){TMOD=0x20;//设置T1定时器工作方式1TH1=0xfd;//设置波特率9600TL1=0xfd;TR1=1;//启动定时器1SM0=0;//设置串口工作方式1SM1=1;EA=1;//开总中断ES=1;while(1){send(1);delay(1000);send(2);delay(1000);send(3);delay(1000);}}2、接受程序#include"reg52.h"#def

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。