双CPU在多I/O口系统中的应用
发布时间:2008/5/27 0:00:00 访问次数:374
下面结合一个实际应用系统介绍双cpu的应用。
2 系统组成
本系统要求8路开关量输入,8路模拟信号采集,8路继电器控制输出,8位数码显示,8路按键输入。其中开关量输入、模拟信号采集、继电器控制输出配置在主板上,数码显示和按键输入在面板上。
基于上述设计要求,考虑用一只97c51设计主板,完成8路开关量、8路模拟信号采集以及8路继电器控制;可用另外一只97c51控制面板上的8位数码显示和8路按键采集;两只97c51通过标准串口连接交换信息,这样主板和面板上只需6根线连接即可。其硬件组成框图分别如图1、图2所示。
图1 主板硬件原理框图
图2 面板硬件原理框图
3 主板设计
3.1 主板硬件设计
见图1,8路开关量直接通过p1口输入到cpu,通过p2口的输出经光耦隔离后驱动8路继电器,8路模拟量利用美国德州公司的11通道串行a/d芯片tlc542采集后串行送入p0口。当需要显示数据时,按一定协议将数据通过串口传输到面板上cpu控制显示。
为了保证系统可靠,采用max690做为看门狗监控两只cpu的运行。一个看门狗监控两只cpu,其中任意一只cpu死机时均自动复位,实现方法是:由面板上cpu的com端发出一路连续的周期小于1s的方波信号到主板上cpu的com端,主板上cpu接收到这一方波信号后,严格将其按相近频率,在主程序中唯一地方发出清除看门狗计时器的信号。
3.2 主板控制软件
主板控制软件流程如图3所示。
图3 主板软件流程图
4 面板设计
4.1 面板硬件设计
见图2,cpu p1口直接采样8路按键状态,并送到主板cpu。同时用串口接收主板上cpu送来的显示数据内容,经转换后,以p0口做段驱动,p2口做位驱动直接显示出来。
为保证系统可靠,该cpu的p3.2脚发出一周期小于1s的标准方波信号供主板上cpu采集,再驱动清除看门狗,以实现 一只看门狗同时监控两只cpu的目的。
4.2 面板cpu的软件流程
面板cpu的流程如图4所示。
图4 面板cpu软件流程图
4.3 显示方式的改变
当显示数据的方式需要改变时,主板上的程序将不变,而只需改变面板上cpu的程序即可,这样可极其灵活地适合于各种应用场合。
5 结论
综上所述,以较简单的硬件电路,较少的连线,独立的程序实现了双cpu系统,达到了所提出的要求,提高了系统的可靠性及工作效率。
因为cpu的智能化及丰富的片内资源,其灵活性和兼容性远远胜过逻辑电路组合设计模式,又因cpu的价格现在已很低廉,所以,双cpu系统在一定的应用环境中是非常适合的。
信息来源:ic72
下面结合一个实际应用系统介绍双cpu的应用。
2 系统组成
本系统要求8路开关量输入,8路模拟信号采集,8路继电器控制输出,8位数码显示,8路按键输入。其中开关量输入、模拟信号采集、继电器控制输出配置在主板上,数码显示和按键输入在面板上。
基于上述设计要求,考虑用一只97c51设计主板,完成8路开关量、8路模拟信号采集以及8路继电器控制;可用另外一只97c51控制面板上的8位数码显示和8路按键采集;两只97c51通过标准串口连接交换信息,这样主板和面板上只需6根线连接即可。其硬件组成框图分别如图1、图2所示。
图1 主板硬件原理框图
图2 面板硬件原理框图
3 主板设计
3.1 主板硬件设计
见图1,8路开关量直接通过p1口输入到cpu,通过p2口的输出经光耦隔离后驱动8路继电器,8路模拟量利用美国德州公司的11通道串行a/d芯片tlc542采集后串行送入p0口。当需要显示数据时,按一定协议将数据通过串口传输到面板上cpu控制显示。
为了保证系统可靠,采用max690做为看门狗监控两只cpu的运行。一个看门狗监控两只cpu,其中任意一只cpu死机时均自动复位,实现方法是:由面板上cpu的com端发出一路连续的周期小于1s的方波信号到主板上cpu的com端,主板上cpu接收到这一方波信号后,严格将其按相近频率,在主程序中唯一地方发出清除看门狗计时器的信号。
3.2 主板控制软件
主板控制软件流程如图3所示。
图3 主板软件流程图
4 面板设计
4.1 面板硬件设计
见图2,cpu p1口直接采样8路按键状态,并送到主板cpu。同时用串口接收主板上cpu送来的显示数据内容,经转换后,以p0口做段驱动,p2口做位驱动直接显示出来。
为保证系统可靠,该cpu的p3.2脚发出一周期小于1s的标准方波信号供主板上cpu采集,再驱动清除看门狗,以实现 一只看门狗同时监控两只cpu的目的。
4.2 面板cpu的软件流程
面板cpu的流程如图4所示。
图4 面板cpu软件流程图
4.3 显示方式的改变
当显示数据的方式需要改变时,主板上的程序将不变,而只需改变面板上cpu的程序即可,这样可极其灵活地适合于各种应用场合。
5 结论
综上所述,以较简单的硬件电路,较少的连线,独立的程序实现了双cpu系统,达到了所提出的要求,提高了系统的可靠性及工作效率。
因为cpu的智能化及丰富的片内资源,其灵活性和兼容性远远胜过逻辑电路组合设计模式,又因cpu的价格现在已很低廉,所以,双cpu系统在一定的应用环境中是非常适合的。
信息来源:ic72