标题: 单片机串行通信里SUBF上的数据能直接发送吗?为什么? [打印本页]

作者: flaysim    时间: 2018-3-10 13:23
标题: 单片机串行通信里SUBF上的数据能直接发送吗?为什么?
新人求教。想了很久都想不通。
void usent() interrupt 4
{  
      uchar   recieved;
      recieved=SUBF;
      RI=0;
      SUBF=recieved;(这里把数据赋值给SUBF后单片机就能够自动发送完数据,然后让T1自动置1了吗?)
                            (看了I2C总线后再来看这个总觉得难以理解,是不是1对1不需要应答回复,可以直接发送接收吗?)
      while(!T1);
      T1=0;
}

作者: flaysim    时间: 2018-3-10 13:57
是不是因为SM2=0;所以数据可直接进入SUBF?
作者: 湮花短暂    时间: 2018-3-10 19:50
TI,发送中断标志位。在方式0时,当串行发送第8位数据结束时,或在其它方式,串行发送停止位的开始时,由内部硬件使TI置1,向CPU发中断申请。在中断服务程序中,必须用软件将其清0,取消此中断申请。也就是说你前面说的对着,然后不用把那个和总线往一起想。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1