双机串行通讯设计实验报告.docxVIP

  • 0
  • 0
  • 约1.3千字
  • 约 4页
  • 2026-01-14 发布于山东
  • 举报

洛阳理工学院实验报告

系别

计算机系

班级

B140502

学号

B

姓名

韩亚辉

课程名称

单片机原理及组成

实验日期

2016/5/28

实验名称

双机串行通讯设计

成绩

实验目的:1.用全双共数据传送法实现两机互相通信.

2.完成双机通信的设计制作及仿真.

实验条件:计算机,KeiluVision4,ISIS7Professional,实验箱

一.实验要求:

1能本机显示按键的数值.

2能向对方机发送按键的数.

3能接收对方机发送的数并显示.

4发送数及按键用中断实现.

5用串行口的全双工方式通信.

二、实验原理:

1单片机串行接口通信功能

计算机与外界的信息交换称为通信,常用的通信方式有两种:并行通信和串行通信.51单片机用4个接口与外界进行数据输入与数据输出就是并行通信,并行通信的特点是传输信号的速度快,但所用的信号线较多,成本高,传输的距离较近.串行通信的特点是只用两条信号线一条信号线,再加一条地线作为信号回路即可完成通信,成本低,传输的距离较远.

1数据缓冲器SBUF

2串行控制寄存器PCON

3输入移位寄存器

4波特率发生器

5电源控制寄存器PCON

6波特率计算

三.实验电路图:

四.实验程序代码:

include

defineucharunsignedchar

defineuintunsignedint

defineduanP1

definedisP2

voidmain

{

ucharkey_in=0xff;//I/O口作输入时,检测外设状态,允许输出高电平

TMOD=0x20; //设置为定时器1方式2

TH1=0xfd; //装初值,波特率设为9600

TL1=0Xfd;

EA=1; //开总中断

ET1=1; //允许定时器1中断

TR1=1; //开启定时器1中断

SCON=0x50; //串口控制寄存器设置,方式1、开串口接收.SM0=0;SM1=1;REN=1;

ES=1; //开串口中断

while1

{

ifkey_in=duan

{

key_in=duan;

SBUF=key_in; //发送数据

whileTI; //等待数据发送,由TI判断发送是否结束

TI=0;

}

}

}

voidchuankouinterrupt4 //串口中断函数

{

dis=SBUF; //接收数据

RI=0; //RI由软件清零;

}

实验总结:

通过本次课程设计,不仅使理论知识得到了实践,有效巩固了知识;同时对于单片机的强大功能、应用领域以及系列知识得到了大概的系统认识,也初步了解了一个完整的系统开发的过程,对于创造思维的培养和开发能力的锻炼,本次设计,为此提供了一个很好的平台.同学之间的相互讨论学习,互相提高,老师知识的帮助,经验的传授,也使自己受益匪浅.

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档