• 单片机AT89C5l的电动机软启动器
  • 单片机AT89C5l的电动机软启动器

    单片机AT89C5l的电动机软启动器
     
      文章分析了MCS-51系列单片机利用串行口进行多机通信的基本原理,对利用单片机多机通信方式实现交通灯控制系统的网络化控制进行了研究,设计了硬件电路图及主、从机程序,并在Proteus软件上进行了仿真运行。
     
      由于微机技术的飞速发展和控制系统的复杂化,多机通信的应用越来越广泛,特别在一些对工业过程的控制中,多机通信已经成为通信控制领域的主流通信方式。
      本文针对目前单片机书籍很少介绍多机通信的实现技术的情况,在交通灯控制系统的基础上设计了一个交通灯控制网络系统,以此为实例给出了单片机多机通信的解决方案。
      单片机多机通信的基本原理
      计算机之间的通信除了点对点通信外,还有一机对多机或多机之间的通信,构成计算机网络,其中主从式多机通信是比较常用的一种方式。在主从式多机通信系统中,只有一台主机,但可以有多台从机。主机发送的信息可以传送到各个从机或指定从机,从机发送的信息只能为主机所接收,各从机之间不能直接通信。主机通常由PC机担任,也可用单片机担当,从机通常为单片机。
      上述过程进一步归结如下:
      (1)主机的SM2=0,所有从机的SM2=1,都处于监听状态,以便接收主机发来的地址。
      (2)主机给从机发送一帧地址信息时,其中的8位是地址,第9位为1表示是地址帧。
      (3)所有从机在SM2=1、RB8=1且RI=0时,接收到主机发来的从机地址帧后,进行中断处理,进入相应的中断服务程序,并和本机地址进行比较以确认是否为被寻址从机。
      (4)被寻址的从机通过指令清除SM2,使SM2=0进入接收数据状态,可以接收主机随后发送的数据,并向主机发回接收到的从机地址作为响应信号,供主机核对,实现主机与被寻址从机的双机通信;未被寻址从机保持SM2=1,并退出中断服务程序。
      (5)完成主机和被寻址从机之间的数据通信,被寻址从机在通信完成后重新使SM2=1,并退出中断服务程序,恢复到监听状态,等待下次通信
      主机主要负责呼叫从机,发送控制命令以及从机响应帧的接收,数据的显示等功能。为了保证主、从机之间握手的成功,主机采用查询方式发送和接收数据,串行口的工作方式设置为方式2,SMOD=0。
      从机循环运行交通灯控制程序,交通灯控制程序利用定时器/计数器0实现定时,为了能正常和主机通信,从机的串行口也工作于方式2,SMOD=0,以保持和主机相同的波特率。由于主机呼叫从机时发送的地址帧与命令帧没有重复,为了使程序简单,本文针对从机接收到主机发来的数据后不通过第九位数据来判断是地址帧还是命令帧。对接收到的数据如果与本机地址相等则表明是地址帧,立即向主机发送自己的地址作为响应信号;如果是命令则按命令执行相关操作(所有路口红机亮或恢复交通灯信号);如果既不与本机地址相等也不是两个命令之一,则认为该数据不是发送给本机的,该机继续监听,从机U2串行口接收和发送数据中断服务程序清单如下:
     
      单片机利用串行口进行多机通信是一个比较复杂的过程,因此大多数单片机书籍没有对这方面的内容进行介绍,或者没有提供实例,本文对MCS-51单片机的多机通信进行一定的探讨。

    更多型号芯片解密可致电北京致芯科技24小时服务热线:13466687255 010-57436217

    点击这里给我发消息 点击这里给我发消息

      Copyright © 2004-2017 致芯科技 版权所有