最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

单片机课程设计-双机串行通信

来源:动视网 责编:小OO 时间:2025-09-23 19:25:34
文档

单片机课程设计-双机串行通信

单片机课程设计课题名称:单片机双机串口通信设计小组成员:姓名学号两个单片机之间串行接口通信设计一、实验要求……21、设计内容2、设计要求二、实验原理……2三、实验程序图……4四、实验电路图……6五、实验程序……7六、Proteus仿真结果……8七、实验器材……8八、总结……82010/12/24一、实验要求1、设计内容1)用全双共数据传送法实现两机互相通信。2)完成双机通信的设计制作及仿真。2、设计要求1)能本机显示按键的数值。2)能向对方机发送按键的数。3)能接收对方机发送的数并显示。4)发
推荐度:
导读单片机课程设计课题名称:单片机双机串口通信设计小组成员:姓名学号两个单片机之间串行接口通信设计一、实验要求……21、设计内容2、设计要求二、实验原理……2三、实验程序图……4四、实验电路图……6五、实验程序……7六、Proteus仿真结果……8七、实验器材……8八、总结……82010/12/24一、实验要求1、设计内容1)用全双共数据传送法实现两机互相通信。2)完成双机通信的设计制作及仿真。2、设计要求1)能本机显示按键的数值。2)能向对方机发送按键的数。3)能接收对方机发送的数并显示。4)发
单片机课程设计

课题名称:单片机双机串口通信设计

小组成员:  

           姓名          学号

两个单片机之间串行接口通信设计

一、实验要求……2

1、设计内容

2、设计要求

二、实验原理……2

三、实验程序图……4

四、实验电路图……6

五、实验程序……7

六、Proteus仿真结果……8

七、实验器材……8

八、总结……8                                        

                                         2010/12/24

                                           

                         一、实验要求

1、设计内容

   1)用全双共数据传送法实现两机互相通信。

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

2、设计要求

1)能本机显示按键的数值。

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

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

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

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

二、实验原理

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

图①ATC51

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

51单片机的串行接口是一个全双工的接口,它可以作为UART(通用异步接受和发送器)用,也可以作为同步移位寄存器用。51单片机串行接口的结构如下:

(1)数据缓冲器(SBUF)

接受或发送的数据都要先送到SBUF缓存。有两个,一个缓存,另一个接受,用同一直接地址99H,发送时用指令将数据送到SBUF即可启动发送;接收时用指令将SBUF中接收到的数据取出。

(2)串行控制寄存器(PCON)

SCON用于串行通信方式的选择,收发控制及状态指示,各位含义如下:

SM0SM1SM2RENTB8RB8TIRI
SM0,SM1:串行接口工作方式选择位,这两位组合成00,01,10,11对应于工作方式0、1、2、3。串行接口工作方式特点见下表

SM0SM1工作方式功能波特率
 0008位同步移位寄存器(用于I/O扩展)

fORC/12

01110位异步串行通信(UART)

可变(T1溢出率*2SMOD/32)

10211位异步串行通信(UART)

fORC/或fORC/32

11311位异步串行通信(UART)

可变(T1溢出率*2SMOD/32)

SM2:多机通信控制位。

REN:接收允许控制位。软件置1允许接收;软件置0禁止接收。

TB8:方式2或3时,TB8为要发送的第9位数据,根据需要由软件置1或清0。

RB9:在方式2或3时,RB8位接收到的第9位数据,实际为主机发送的第9位数据TB8,使从机根据这一位来判断主机发送的时呼叫地址还是要传送的数据。

TI:发送中断标志。发送完一帧数据后由硬件自动置位,并申请中断。必须要软件清零后才能继续发送。

RI:接收中断标志。接收完一帧数据后由硬件自动置位,并申请中断。必须要软件清零后才能继续接收。

(3)输入移位寄存器

接收的数据先串行进入输入移位寄存器,8位数据全移入后,再并行送入接收SBUF中。

(4)波特率发生器

波特率发生器用来控制串行通信的数据传输速率的,51系列单片机用定时器T1作为波特率发生器,T1设置在定时方式。波特率时用来表示串行通信数据传输快慢程度的物理量,定义为每秒钟传送的数据位数。

(5)电源控制寄存器PCON

其最高位为SMOD。

(6)波特率计算

当定时器T1工作在定时方式的时候,定时器T1溢出率=(T1计数率)/(产生溢出所需机器周期)。由于是定时方式,T1计数率= fORC/12。产生溢出所需机器周期数=模M-计数初值X。

(2)MAX232芯片

图②MAX232引脚图

MAX232 芯片其内部有一个电源电压变换器,可以将输入+5V的电压变换成RS-232C输出电平所需的±12V电压。所以采用这种芯片来实现接口电路特别方便,只需单一的+5V电源即可。 MAX232芯片的引脚结构如下图所示。其中管脚1~6(C1+、V+、C1-、C2+、C2-、V-)用于电源电压转换,只要在外部接入相应的电解电容即可;管脚7~10和管脚11~14构成两组TTL信号电平与RS-232信号电平的转换电路,对应管脚可直接与单片机串行口的TTL电平引脚相连。

三、实验框图

     (1)发送端流程图

(2)接收端流程图

说明:两个单片机不分主从机,任何一个单片机均可作为发送端或接收端,这里为了便于理解而设置主从机一说。

四、实验电路图    

LOGICSTATE 逻辑状态 用鼠标点击,可改变该方框连接位置的逻辑状态

五、实验程序

#include

#define uchar unsigned char

#define uint unsigned int

#define duan P1

#define dis  P2

void main()

{

 口作输入时,检测外设状态,允许输出高电平

  设置为定时器1方式2 

   装初值,波特率设为9600 

    开总中断 

    允许定时器1中断 

    开启定时器1中断 

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

    开串口中断 

      

     if(key_in != duan)

     {

      key_in=duan;

    发送数据 

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

      TI=0;

      

}

void chuankou() interrupt 4 串口中断函数 

{

   接收数据 

   由软件清零;

}

八、实验器材

2个ATC51

MAX232芯片

2个LCD

串口连接线

七、总结

本次设计采用两片ATC51单片机实现信息的串行通信,设计过程中,从双机通信背景的了解,到C51单片机具体功能的了解,到串行通信的原理的熟悉,到掌握具体串行通信在双机之间的实现;从硬件电路设计到程序编写;从硬件调试到软件模拟实现等。发送方的数据由串行口TXD断输出,经过传输线将信号传送到接收端。接收方接收电平信号,对于接口电路,短距离传送,减少抗干扰作用,如果短离远双机串口中可以连接电平转换器常用芯片RS232,在此不再叙述。设计中,收获不少东西,也遇到了不少的问题。

首先,在完成单片机课程学习任务后,对内容的掌握不够,缺乏灵活运用的能力,对于知识的扩展也存在一定的问题,因此,面对设计课题,无法系统地进行设计思路的拟定。

其次,理解不能更好的联系实践,在巩固和学习硬件知识的同时,用软件控制协调硬件实现现实功能,通过硬件完成软件的功能等方面的融会贯通,取得了一定的效果。    

再次,硬件设计过程中,串行通信方式的选择,波特率的计算,在查询方式与中断方式进行串行通信。对于芯片的选择,软件编写时,对于某些指令的功能,功能模块的连接,芯片地址选择等都遇到了很大的障碍,在老师与同学帮助和自己查阅资料得到了解决,与此同时,了解了不少的问题。并掌握了KEIL的使用和程序调试,以及PROTUES单片机模拟仿真软件的使用,大大提高了学习效率。

通过本次课程设计,不仅使理论知识得到了实践,有效巩固了知识。同时对于单片机发展历史、强大功能、应用领域以及系列知识得到了大概的系统认识,同时也初步了解了一个完整的系统开发的过程,对于创造思维的培养和开发能力的锻炼,本次设计,为此提供了一个很好的平台。同学之间的相互讨论学习,互相提高,老师知识的帮助,经验的传授,也是本次设计的一道美丽的风景线,真正起到了抛砖引玉的目的。在此,感谢老师给我们这样好的学习机会。

文档

单片机课程设计-双机串行通信

单片机课程设计课题名称:单片机双机串口通信设计小组成员:姓名学号两个单片机之间串行接口通信设计一、实验要求……21、设计内容2、设计要求二、实验原理……2三、实验程序图……4四、实验电路图……6五、实验程序……7六、Proteus仿真结果……8七、实验器材……8八、总结……82010/12/24一、实验要求1、设计内容1)用全双共数据传送法实现两机互相通信。2)完成双机通信的设计制作及仿真。2、设计要求1)能本机显示按键的数值。2)能向对方机发送按键的数。3)能接收对方机发送的数并显示。4)发
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top