当前位置:首页 > 单片机 > 单片机
[导读] 前端机由带RS -422接口的8031单片机系统组成,分别放在控制现场附近。通信控制器是插在IBM - PC/XT扩展槽上的带8031单片机的接口板,为主机和前端机间的通信提供一个智能化通道。用户只须通过主机向控

前端机由带RS -422接口的8031单片机系统组成,分别放在控制现场附近。通信控制器是插在IBM - PC/XT扩展槽上的带8031单片机的接口板,为主机和前端机间的通信提供一个智能化通道。用户只须通过主机向控制器发一条简单的命令而无须知道通信的细节,就可以使前端机执行相应的动作。控制器每次发送或接收的数据是可变的,但不超过255字节。每次通信都要进行差错检测和差错处理,以保证数据传输的准确性。主机IBM - PC/XT是命令的发起者和系统运行的控制者。


1.前端机
图1- 27是前端机的结构框图。它是一个带RS - 422串行接口的51系列单片机系统。其输入/输出和A/D转换的通道数是根据实际应用控制系统(如汽车自动检测线)的需要而配置的,与通信无关。图1- 28给出了串行接口原理图。每个前端机和通信控制器的接口均用MC3486和MC3487作差分驱动和接收。串行总线由一对双绞线DATA+和DATA-组成。双绞线的末端有提升电阻,使线路在空闲时处于逻辑1状态。当发送逻辑o(TxD=O)时,线路处于0状态。这种差分驱动和接收总线在电气特性上符合RS - 422标准,比起RS - 232,这样的单端驱动总线具有抗干扰能力强,数据传输率高,距离远等优点。

2.通信控制器


控制器的结构框图如图1- 29所示,8031通过串行接口和并行接口分别和各前端机以及主机交换数据。并行接口的原理图见图1- 30,控制器和IBM - PC/XT间的数据交换是以查询的方式实现的。8255A工作于A口方式2(双向总线I/O),控制器向IBM - PC/XT输出数据时,首先WR信号有效将数据写到A口,这使得PC7( OBFA)一O(初始状态OBFA =1);IBM - PC/XT通过读8212Ⅲ的状态得知OBFA=O后,再读8212 I即可将A口数据读入;与此同时,8212 I的INT信号使OBFA恢复到初始状态。IBM - PC/XT向控制器送数据时,用输出命令将数据写入8212Ⅱ;同时8212Ⅱ的INT信号有效,使PC4( STBA)产生一个选通信号;该信号将PC5(IBFA)置为有效(即IBFA =1,初始状态IBFA=0),8031读8255A的C口状态得知IBFA =1.再读A口即可将数据读入控制器。并行口地址采用部分译码,8212 I和8212Ⅱ的地址是02EOH;8212Ⅲ的地址是02EIH。

通信协议


1.帧格式
帧是一次发送或接收的数据。本系统有从控制器发送到前端机的命令帧和前端机发送到控制器的命令响应帧。它们的格式如下:

  命令帧:前端机地址,前端机地址,数据长度,数据长度,命令字段,数据,……,数据,校验字1,校验字2。
  
  响应帧:状态字段,数据,……,数据,校验字1,校验字2。
  
  其中前端机地址(或称站地址)是前端机的唯一标识符;命令字段是要求前端机执行的操作;状态字段指示命令的执行情况;数据长度用一字节(B)表示,因此帧的长度不能大于255 B。
  
  2.差错检测
  
  对命令帧,前端机地址和数据长度各自重复发送两字节。前端机根据两字节是否一致,判断地址和数据长度字节在传输过程中是否出错。命令字和所有数据字节用CRC - 16多项式检错法检错。前端机通过计算得出两字节的校验字,并与命令帧最后两字节校验字相比较,判断数据传输是否有错。命令响应帧也采用同样的CRC - 16多项式检验法检错。实践证明,这种检错法既可以有效地检查出传输差错,又可以保证较低的数据冗余度。由于单片机缺少CRC检错的硬件,所以采用软件算法,所得的两字节校验字作为帧的最后两字节发送。
  
  3.差错处理
  
  可能有两种差错:帧受到损伤;或者完全丢失。系统规定,控制器每发送一帧,前端机仅当数据被正确接收时,才会发送一个响应帧。如果一个受损帧到达前端机,就会被丢弃,过一段时间后.控制器会因为超时而把原帧重发一次,直到该帧最终完好无损地到达为止。帧在从控制器到前端机的过程中丢失,也会因为收不到响应帧而超时,使原帧重发。
  
  一种特殊情况是:
  
  ①控制器发一帧报文到前端机,该报文被前端机正确地接收并回送一响应帧。
  
  ②该响应帧在从前端机到控制器的过程中完全丢失或受损。
  
  ③控制器最终超时,由于没有收到正确的响应帧,它就会不正确地假定:发出的报文已经丢失或受损,并把该帧重发一次。

  ④该重复帧也完好无损地到达前端机,于是前端机收到重复的两帧。如果该帧要求前端机产生一个动作,则它会动作两次,这显然是不允许的。
  
  为了避免这种情况的发生,命令字段的最高位设成序列编号。控制器每发一帧都加一个序列编号。新帧的序列编号总和前一帧的序列编号不同,重复帧的序列编号和前一帧的序列编号相同。前端机利用该编号判断是新帧,还是要丢弃的重复帧。当一个重复帧到达时,前端机拒绝接受,但重发上一次的响应帧。
  
  本系统超时时间的长短是动态的。它与帧长度成正比,和传输速度成反比。这种方法比超时时间固定的方法具有更高的通信效率。
  
  4.远程存取控制
  
  远程存取控制( RAC)是一组高层命令,IBM - PC/XT可以根据这组高层命令的格式,在内存中组织一段报文送到控制器。控制器根据报文向前端机发送一个命令帧,然后根据响应帧将命令的执行情况报告IBM - PC/XT。

  软件设计
  
  1.通信控制器程序
  
  通信控制器的程序流程图如图1- 31所示。其中初始化包括:①设定不高于100 kb的波特率;②设定超时计算用的To中断为最高级中断;③设定SP堆栈寄存器的值为30H;④初始化8255A使A口工作于方式2。从IBM接收一帧报文,将前端机不能通信的信息报告IBM.将前端机序列编号出错信息报告IBM及向IBM发响应报文,均是以查询方式与IBM - PC/XT交换数据的程序模块;发送子程序和接收响应帧子程序为满足通信协议的通信程序模块。限于篇幅,不再详述。程序的长度约2.4 KB。


  2.前端机通信子程序
  
  该程序是长为1.1 KB的串行口中断子程序,包括接收命令、执行命令、发响应帧三个满足通信协议的程序模块。限于篇幅,其详细的程序流程图在此从略。命令送到前端机后何时开始执行命令,取决于主程序对串行口中断级别的设定和主程序当时正在执行什么操作。若把串行口中断设为高级中断而其他中断设为低级中断,则收到命令后立即执行命令。通信子程序占用的资源包括串行中断口、2 KB RAM中开始的300个存储单元、128个内存字节中地址从30H~3FH的存储单元和定时器Tl。

  3.IBM - PC/XT远程存取控制命令的组织和调用
  
  IBM - PC/XT要前端机执行一条如表1- 14所列的命令只须向控制器发一段报文。报文的格式是:命令长度,前端机地址,命令值(见表1-14),数据,……,数据。例如复位1号前端机的报文是02H,OIH,OOH;读2号前端机外存8000H单元值的报文是04H,02H,18H,80H,OOH。
  
  发送完报文后,根据IBM - PC/XT接收控制器发来的响应报文(包括状态字段、命令执行结果),即可得知命令的执行情况。
  
  本系统已应用于汽车性能自动检测等集散式控制系统中。理论和实践都证明,在1 km范围内数据传输率可达100 kb/s,而且可靠性很好。应用于一般工业控制系统,其性能价格比是较高的;但由于缺乏总线裁决和碰撞检测等软件与硬件,前端机不能主动向主机或其他前端机发起通信。增加这些软硬件,便可构成实时性更强的分布式控制系统。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

8位单片机在嵌入式设计领域已经成为半个多世纪以来的主流选择。尽管嵌入式系统市场日益复杂,8位单片机依然不断发展,积极应对新的挑战和系统需求。如今,Microchip推出的8位PIC®和AVR®单片机系列,配备了先进的独立...

关键字: 单片机 嵌入式 CPU

首个采用高分辨率太阳观测数据训练的太阳物理学人工智能 (AI) 基础模型,旨在深入探索太阳动态表面,对可能干扰地球和太空技术的太阳天气做出有效规划。 该模型已发布在 Hugging Face 开源平台,旨在加快...

关键字: IBM NASA 开源 模型

在工业自动化、能源管理等实时性要求严苛的场景中,Modbus通信系统的响应延迟直接关系到设备控制的精度与系统稳定性。从智能电表的功率调节到机器人关节的同步控制,微秒级的响应偏差都可能引发连锁故障。本文从硬件架构、软件设计...

关键字: Modbus 通信系统

在嵌入式系统开发中,程序烧录是连接软件设计与硬件实现的关键环节。当前主流的单片机烧录技术已形成ICP(在电路编程)、ISP(在系统编程)、IAP(在应用编程)三大技术体系,分别对应开发调试、量产烧录、远程升级等不同场景。...

关键字: 单片机 ISP ICP IAP 嵌入式系统开发

在嵌入式系统开发中,看门狗(Watchdog Timer, WDT)是保障系统可靠性的核心组件,其初始化时机的选择直接影响系统抗干扰能力和稳定性。本文从硬件架构、软件流程、安全规范三个维度,系统分析看门狗初始化的最佳实践...

关键字: 单片机 看门狗 嵌入式系统

本文中,小编将对单片机予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 单片机 开发板 Keil

多数受访粉丝认为,AI驱动的功能会对他们观看体育赛事的方式产生重大影响 超过半数的受访者希望通过AI技术获得对过去、现在和未来体育赛事的评论和分析 移动体育应用...

关键字: IBM AI 应用程序 移动

随着单片机系统越来越广泛地应用于消费类电子、医疗、工业自动化、智能化仪器仪表、航空航天等各领域,单片机系统面临着电磁干扰(EMI)日益严重的威胁。电磁兼容性(EMC)包含系统的发射和敏感度两方面的问题。

关键字: 单片机 电磁兼容

- ‘Match Chat' AI助手可在所有254场单打比赛期间及结束后实时回答问题 - 升级版IBM SlamTracker将提供实时获胜概率预测,而‘Key Poin...

关键字: IBM AI PEN AN

以下内容中,小编将对单片机的相关内容进行着重介绍和阐述,希望本文能帮您增进对单片机的了解,和小编一起来看看吧。

关键字: 单片机 复位电路
关闭