试题详情
简答题试述单片机串行口多机通信的过程。

  • 如图所示,为一个多机分布式系统,其中一个8031系统为主机,n个8031应用系统为从机。不考虑口的驱动时,主机的RXD端与所有从机的TXD端相连,TXD端与所有从机的RXD端相连。根据C51多机通信原理,通信过程如下:
    ①首先对各从机进行编址。
    ②串行口工作在方式2或方式3下,使所有从机的SM2(SCON.5)位置1,处于只接收地址帧的状态。
    ③主机发送一桢地址信息,其中包含8位地址,主机置位第9位TB8,发送要寻址的从机地址。TB8=1,以表示发送的是地址;TB8=0,以表示发送的是数据。
    ④所有从机均接收主机发送的地址,进入中断进行比较。
    从机接收到地址帧后,各自将接收到的地址与其本身地址相比较。检查到的第9位RB8=1,表示地址帧,将数据装入SBUF,置位RI,发出接收中断请求;RB8=0,表示数据帧,同时当SM2=1时,接收数据丢弃。SM2=0表示直通方式,无论RB8是0还是1,都将接收到的数据送SBUF,并发出中断请求。对于所有从机,由于SM2=1,RB8=1,各自发出中断请求。判断主机发送地址是否与本机相符,若相符,则将从机的SM2清0(编程直通方式),准备接收其后传来的数据。
    ⑤确认寻址从机,自身SM2清0,向主机返回地址供主机核对。未被寻址的其它从机仍维持SM2=1不变。
    ⑥核对无误,主机向被寻址的从机发送命令,通知从机进行一对一数据通信。
    主机发送数据或控制信息(第9位为0)。对于已被寻址的从机,因SM=0,故可以接收主机发送过来的信息。而对于其它从机,因SM2维持为1,对主机发来的数据帧将不予理睬,直至发来新的地址帧。
    当主机改为与别的从机联系时,可再发出地址帧寻址其从机。而先前被寻址过的从机在分析出主机是对其它从机寻址时,恢复其SM2=1,对随后主机发来的数据帧不加理睬。
  • 关注下方微信公众号,在线模考后查看

热门试题