新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于AVR微控制器的多机系统

基于AVR微控制器的多机系统

作者:时间:2012-01-31来源:网络收藏

用户总是希望产品恰好满足自己的需求,在采集、测量等行业尤其如此。有的用户希望买到的仪器能够增加更多的功能;而需求单一的用户却不希望买到功能繁多而自己使用不上的设备。这就需要产品具有功能的可扩展性和可裁减性,同时该功能的引入或裁减不会影响到设备其他的功能,还要保证设备工作的可靠性。

就是为满足这一需求而设计的。本文所研究的是指多个功能独立的微控制器可以相互通信,由一片主控微控制器进行统一管理,并利用各种通信方式来协调各独立微控制器的工作。利用该设计的多功能测试仪器性能稳定,由于其具有可扩展性和可裁减性,可以为不同的用户提供不同的功能。

设计通用型多机系统平台在选择微控制器上要考虑众多因素,如功能性、稳定性、易用性和价格等。本文中的多机系统选择主要基于以下几方面因素:主控微控制器具有双串口,可以给从机和PC端各分配一个,128kb的Flash容量足够编程使用,PWM等功能可供扩展使用;从机系统使用的ATmega8是一款性价比优越的微控制器,可满足采集、测量等多种领域的需求,同时联合开发可以使用相同的开发工具,从而降低了开发成本。由ATmega8和组成的多机系统系统如图1所示。

总线的设计

总线设计力求达到硬件简单、使用方便、接口可带电插拔等要求。由于ATmega8及ATmega128都具有自己的串口,于是在总线设计上采用四线制:串口接收线、串口发送线、电源线和地线。

为了增加ATmega128的驱动能力,它与总线的接口用反向器74LS14通过两级反相来实现,电路如图2所示。
从机ATmega8总线接口部分,除了用反相器74LS14两级反相驱动数据线外,为了保证通信的可靠性,还在串口收发两条线上各加一个光耦6N135,电路如图3所示。耦合传输信号避免了直接的电气连接,实现了隔离作用,保证了通信传输的可靠性。

ATmega128与PC的通信电路如图4所示。利用ATmega128双串口的特性,利用其中一个串口与PC通信,电平转换芯片采用MAX232,同时也增加光耦器件6N135来提高系统抗干扰的能力。


图4 ATmega128与PC的接口

通信协议

根据系统的要求,通信协议应保证各部分通信的可靠性,为未来可扩展部分预留余量,而且通信协议要尽可能简单,通信数据量尽可能少,从而提高通信的速度。为满足以上要求,通信协议采用4字节为一个完整的数据帧,具体主机从机各自数据帧格式如表1所示。

对于ATmega128与ATmega8组成的主从机系统而言,ATmega128是主机,它可以同时对多达16个ATmega8从机进行控制。对于PC与ATmega128组成的主从机系统,PC则扮演主机的角色,它可以同时对多个ATmega128进行控制。如果PC要对某一ATmega128 下的ATmega8进行控制,它就必须先发命令给对应的ATmega128,再通过ATmega128对具体ATmega8的控制来实现。

系统性能测试

笔者以该多机通信系统为平台搭建了8项家用电器测试系统,测试项目包括耐压测试、泄漏电流测试、接地电阻测试、绝缘电阻测试、功率测试和低压启动测试。每片ATmega8实现两项测试功能,三片ATmega8通过该多机通信系统由一片ATmega128统一管理。由于该测试系统要实现 500~5000V耐压测试,以及2~20A大电流的泄漏电流测试,正好可以用来检验该多机系统在非常恶劣的电磁干扰环境下的稳定性。笔者利用一台PC作为主机,同时控制三套六项家用电器测试系统进行稳定性测试。整套系统经过72小时不间断工作测试运行良好,证明多机系统方案稳定、可靠。利用这一多机系统设计的6项家用电器测试系统推向市场后,用户的反馈也表明该系统稳定性很好。

结论

有着较高的性价比,在科研和工程等方面的应用越来越广泛。本文着重叙述了中ATmega128与ATmega8及PC 之间的串口通信的软硬件实现问题,这一方案已经应用在实际中,经测试该系统稳定可靠,抗干扰性能好,而且由于其较强的可扩展能力(每个ATmega128 可控制16个ATmega8),可以在原系统不做任何改变的情况下增加或减少功能,且不会影响到系统整体的性能。由于采用模块化设计方法,该系统灵活性好,可以适应不同的要求。本文所述的ATmega128和ATmega8构建的多机系统的开发过程对AVR其他型号的微控制器同样适用。



评论


相关推荐

技术专区

关闭