DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1028|回复: 0
打印 上一主题 下一主题

[待整理] 双CPU在多I/O口系统中的应用

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-11 01:48:07 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
1 引言
  常规的单片机应用系统设计,往往都用一个CPU,再扩展一系列外围辅助电路以达到相应设计目标。这种方法,尤其在输入输出接口较多的系统中,必须进行繁琐的译码、逻辑变换,使得系统硬件复杂,调试困难。而用双CPU设计,可大大减少硬件电路,软件资源分配及设计均相对独立,易于修改程序而适合很多应用系统。
  下面结合一个实际应用系统介绍双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系统在一定的应用环境中是非常适合的。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-2-1 15:53 , 耗时 0.108320 秒, 22 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表