全球旧事资料 分类
于多个AT89C51进行串行通信考虑到多个AT89C51共用一个RS232转换后的电平在单片机向PC机传送数据时不受其它的AT89C51单片机的影响就在AT89C51的RXD端串入一个二极管2软件设计串行通信软件设计应根据系统对稳定性实时性的要求以及被传输数据的流量情况来设计通信协议通信协议要解决好通用信可靠性和实时性三方面的问题但是稳定快速地实现数据传输还需要微机单片机软件以及通信协议等各个环节的相互配合才行1串行通信协议设计为了保证微机和单片机在通信时不相互冲突一般让微机作为上位机处于主动地位每次通讯先由微机上位机向单片机下位机发送命令和控制数据单片机接收到微机传送的数据后根据上位机传送命令的含义执行相应的操作并传输上位机所需的数据然后等待下一次上位机发送的指令为了提高通信可靠性和抗干扰能力上下位机在建立通信联系时先利用握手信号软握手进行通信测试若下位机自检出错则在应答上位机命令时上传错误代码若通信间隔时间超过限定时间则此次通信数据作废若连续多次通信数据出错则报告系统通信数据出错为了提高通信可靠性和抗干扰能力上下位机在建立通信联系时先利用握手信号软握手进行通信测试若下位机自检出错则在应答上位机命令时上传错误代码若通信间隔时间超过限定时间则此次通信数据作废若连续多次通信数据出错则报告系统通信数据出错微机用查询方法发送和接收单片机采用中断方法接收和发送数据2单片机通信程序设计设计单片机的通讯程序时必须充分发挥单片机的效率由于单片机多应用于实时性较强的控制场合所以应将及时响应和控制对象的动作放在优先考虑的位置尽量减少通讯等辅助性操作所占用的CPU时间而且应该尽量减少通讯占用的时间基于以上考虑在设计单片机通讯程序时将其分成2个部分中断接收发送部分和通讯处理部分因为单片机和微机通讯时要求收到命令后立即回应故将接收发送放在一个过程中通讯处理程序被放在普通程序的主循环中只要接收标志为
好听全球资料 返回顶部