1.点对点通信
硬件连接
2.多机通信
硬件连接
单片机构成的多机系统,常采用总线型主从式结构。所谓主从式,即在数个单片机中,有一个是主机,其余的是从机。从机要服从主机的调动、支配。串行口方式2、方式3适合于这种主从式通信结构。当然采用不同的通信标准时,还需进行相应的电平转换,有时还要对信号进行光电隔离。在实际的多机应用系统中,常采用RS-485串行标准总线进行数据传输。
通信协议
1.所有从机的SM2位置1,处于接收地址帧的状态。
2.主机发送一地址帧,其中8位是地址,第9位为地址/数据区分标志,该位置1表示该帧为地址帧。
3.所有从机收到地址帧后,都将接收的地址和本机的地址比较。对于地址相符的从机,使自己的SM2位置0(以接收主机随后发来的数据帧),并把本站地址发回主机作为应答。对于地址不符的从机,仍保持SM2=1(对主机随后发来的数据不予理睬)。
4.从机发送数据结束后,要发送一帧校验和,并置第9位(TB8)为1,作为从机数据传送结束的标志。
5.主机接收数据时,先判断数据接收标志(RB8),若RB8=1,表示数据传送结束,并比较此帧校验和,若正确则回送正确信号00H,此信号命令该从机复位(即重新等待地址帧);若校验和出错,则发送0FFH,命令该从机重发数据。若接收帧的RB8=0,则存储数据到缓冲区。并准备接收下帧数据。
6.主机收到从机应答地址后,确认地址是否相符,如果不符,发复位信号(数据帧中TB8=1);如果地址相符,则清零TB8,开始发送数据。
7.从机收到复位命令后,回到监听地址状态(SM2=1),否则开始接收数据和命令。
应用程序
1.主机发送的地址联络信号为:00H、01H、02H、……(即从机设备地址),地址FFH是命令各从机复位,及回复SM2=1。
2.主机命令编码为:01H,主机命令从机接收数据;02H,主机命令从机发送数据。其他都按02H对待。
RRDY=1,表示从机准备好接收。
TRDY=1,表示从机准备好发送。
ERR=1,表示从机接收的命令是非法的。