双CPU(单片机)控制系统
- 格式:doc
- 大小:87.50 KB
- 文档页数:10
单片机技术一单片机概述随着大规模集成电路的出现及其发展,将计算机的CPU 、RAM 、ROM 、定时/数器和多种I/O接口集成在一片芯片上,形成芯片级的计算机,因此单片机早期的含义称为单片微型计算机,直译为单片机。
单片微型计算机简称单片机,它因将其主要组成部分集成在一个芯片上而得名,就是把中央处理器CPU(Central processing unit)、随机存储器RAM(Random access memory)、只读存储器ROM(Read only memory)、中断系统、定时器/计数器以及I\O(Input/output)接口电路等主要微型机部件集成在一个芯片上。
虽然单片机只是一个芯片,但从组成和功能上看,它已具有了计算机系统的属性。
1、单片机主要应用与控制领域,用以实现各种测试和控制功能,为了强调起控制属性,也可以把单片机称为微控制器MCU(Micro controller unit)。
在国际上,“微控制器”的叫法似乎更通用一些,而在我国则比较习惯与“单片机”这一名称。
单片机在应用时,通常是处于控制系统的核心地位并融入其中,即以嵌入的方式进行使用,为了强调其“嵌入”的特点,也常常将单片机称为嵌入式微控制器EMCU(Embedded micro controller unit)。
单片机根据控制应用的需要分为通用单片机和专用单片机。
其中通用单片机是一种基本芯片,内部资源丰富、性能全面、适用性较强,用户可根据自己的需要,以其为控制核心,配以不同的外围电路设计成不同的单片机应用系统;专用单片机是针对性特别强,具有结构的最简化、资源利用的最优化、可靠性和成本的最佳化的特点。
2、单片机与单片机系统单片机通常是指芯片本身,它是有芯片制造商生产的,在它上面集成的是一些作为基本组成部分的运算器电路、控制器电路、存储器、中断系统、定时器/计数器以及输入/输出口电路等。
但一个单片机芯片并不能把计算机的全部电路都集成到其中,例如组成谐振电路和复位电路的石英晶体、电阻、电容等,这些元件在单片机系统中只能以散件的形式出现。
1.2单片机的构成及特点单片机是指在一块芯片上集成了中央处理器CPU、随机存储器RAM、程序存储器ROM或EEPROM、定时/计数器、中断控制器及串行口,并行I/O接口等部件,构成一个完整的微型计算机系统。
1、单片机的特点从结构上看,单片机不但与通用微型计算机一样,是一个有效的数据处理机,而且是一个功能强大的过程控制机。
从某种意义上讲,一块单片机就具有一台微型计算机的功能,只要加上所需的输入/输出设备,就可以构成一个完整的系统,从而满足各应用领域的需要。
单片机结构中包含有通用计算机的功能部分,而且具有较强的数据处理功能。
b5E2RGbCAP通用计算机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。
CPU的主频达到数百兆赫兹<MHz),字长普遍达到32位。
单片机主要面向控制,因为控制中的数据类型和数据处理相对简单,所以单片机的数据处理功能比通用计算机相对弱一些,计算速度和精度也要相对低一些。
p1EanqFDPw通用计算机中存储器组织结构主要是针对增大存储容量和加快CPU对数据的存取速度。
单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机总线上,CPU对存储器的读/写直接用物理地址来寻址存储单元,存储器的寻址空间一般为64KB。
DXDiTa9E3d通用计算机中的I/O接口主要考虑标准外设<如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。
用户通过标准总线连接外设,达到即插即用。
而单片机应用系统的外设都是非标准的,且千差万别,种类繁多。
单片机的I/O接口实际上是向用户提供的与外设连接的物理界面。
RTCrpUDGiT单片机的特点(1> 单片机的存储器ROM和RAM是严格区分的。
ROM称为程序存储器,只存放程序、固定常数及数据表格。
RAM则为数据存储器,用作工作区及存放用户数据。
这样的结构主要是考虑到单片机用于控制系统中,有较大的程序存储器空间,把开发成功的程序固化在ROM中,而把少量的随机数据存放在RAM中。
课程设计课题:单片机培养箱温控系统设计本课程设计要求:温度控制系统基于单片机,实现对温度的实时监控,实现控制的智能化。
设计了培养箱温度控制系统,配备温度传感器,采用DS18B20数字温度传感器,无需数模/数转换,可直接与单片机进行数字传输,采用PID控制技术,可保持温度在要求的恒定范围内,配备键盘输入设定温度;配备数码管L ED显示温度。
技术参数及设计任务:1、使用单片机AT89C2051控制温度,使培养箱保持最高温度110 ℃ 。
2、培养箱温度可预设,干燥过程恒温控制,控温误差小于± 2℃.3、预设时显示设定温度,恒温时显示实时温度。
采用PID控制算法,显示精确到0.1℃ 。
4、当温度超过预设温度±5℃时,会发出声音报警。
和冷却过程没有线性要求。
6、温度检测部分采用DS18B20数字温度传感器,无需数模/数转换,可直接与单片机进行数传7 、人机对话部分由键盘、显示器、报警三部分组成,实现温度显示和报警。
本课程设计系统概述一、系统原理选用AT89C2051单片机作为中央处理器,通过温度传感器DS18B20采集培养箱的温度,并将采集的信号传送给单片机。
驱动培养箱的加热或冷却。
2、系统整体结构总体设计应综合考虑系统的总体目标,进行初步的硬件选型,然后确定系统的草案,同时考虑软硬件实现的可行性。
经过反复推敲,总体方案确定以爱特梅尔公司推出的51系列单片机为温度智能控制系统核心,选用低功耗、低成本的存储器、数显等元器件。
总体规划如下:图1 系统总体框图2、硬件单元设计一、单片机最小系统电路Atmel公司的AT2051作为89C单片机,完全可以满足本系统所需的采集、控制和数据处理的需要。
单片机的选择在整个系统设计中非常重要。
该单片机具有与MCS-51系列单片机兼容性高、功耗低、可在接近零频率下工作等诸多优点。
广泛应用于各种计算机系统、工业控制、消费类产品中。
AT 89C2051 是 AT89 系列微控制器中的精简产品。
双核MCU运行机制是一种基于两个核心处理器(通常是一个高性能的主核和一个低功耗的协核)的运行机制。
这种机制旨在提高MCU 的处理能力和效率,同时降低功耗和成本。
在双核MCU中,主核通常负责执行复杂的计算和控制任务,而协核则负责处理一些简单的任务,如中断响应、数据传输等。
协核可以在主核空闲时运行,从而充分利用系统资源,提高整体性能。
此外,协核还可以在主核进入低功耗模式时接管一些任务,从而保持系统的正常运行。
双核MCU的运行机制还包括任务调度和中断管理等方面。
任务调度器负责将任务分配给不同的核心处理器,以确保任务能够高效地完成。
中断管理器则负责处理系统中的中断请求,确保系统能够及时响应外部事件。
总之,双核MCU运行机制通过合理利用两个核心处理器的优势,提高了系统的处理能力和效率,同时降低了功耗和成本,适用于需要高性能和低功耗的嵌入式系统应用。
一.单片机概述单片机是单片微型计算机SCMC(Single Chip MicroComputer)的译名简称,在国内常简称为“单片微机”或“单片机”。
单片机就是把组成微型机算计的各功能部件:包括中央处理器CPU、随机存储器RAM、只读存储器ROM/EPROM、中断系统、定时器/计数器、并行及串行口输入输出I/O接口电路等等部件集成在一块半导体芯片上,所构成的一个完整的微型机算机。
即是一个不带外围设备的单芯片微型计算机的电路系统。
随着大规模集成电路的发展,单片机内还可包含A/D、D/A转换器、高速输入/输出部件、DMA通道、浮点运算等特殊功能部件。
由于单片机的结构和指令功能都是按工业控制要求设计的,特别适合于工业控制及与控制有关的数据处理场合,国外称其为微控制器(Mirocontroller)。
除了工业控制领域,单片微机在家用电器、电子玩具、通信、高级音响、图形处理、语言设备、机器人、计算机等各个领域迅速发展。
目前单片微机的世界年产量已达100亿片,而在中国大陆地区单片微机的年应用量已达6亿片左右,截止2001年4月,由中国大陆地区自行设计和生产的单片微机也已达到2000万片。
综观二十多年的发展过程,单片微机正朝多功能、多选择、高速度、低功耗、低价格、扩大存储容量和加强I/O功能及结构兼容方向发展。
单片机是典性的嵌入式系统,单片机系统的体系结构和指令系统结构,是按照嵌入式控制应用而设计的。
作为嵌入式应用时,即嵌入到对象环境、结构、体系中作为其中的一个智能化控制单元,如洗衣机、电视机、VCD、DVD等家用电器,打印机、复印机、通讯设备、智能仪表、现场控制单元等。
构成各种嵌入式的应用电路,统称为单片机应用系统。
二.DJ-598KC实验系统相关知识1.认识DJ-598KC+单片机开发系统的结构2.系统主要特点(1)系统自动识别CPU:40芯扁平电缆RS232PC机仿真DJ-598K1单片机开发系电源598KC是集51、96、8088三大系列CPU于一体的三合一实验系统,内置51/96单片机仿真器和8088实验系统。
摘要:针对重要系统可靠性要求,特设计了一种双CPU控制系统。
在该系统中,两个CPU彼此独立运行,可以自动或手动实现双机的主辅切换,只有主CPU能正常读写外部RAM数据和控制输出。
关键词双CPU 切换监控控制
单片微机具有小巧灵活、易扩展成为功能强大的控制系统。
目前,一些监控终端以及许多独立的控制系统(如:发电机的微机励磁装置)多以单片微机为核心构成。
但由于诸如工作环境恶劣、电磁干扰等原因,即使使用按工业测控环境要求设计的单片微机也难以保证控制系统能长期可靠的运行,从而导致控制系统瘫痪。
这样,如何提高控制系统的可靠性,保证测控系统能正确稳定的运行就尤为重要。
显然,采用双CPU冗余设计是非常有效的一种解决办法。
由于单片微机的功能强大,价格低廉,为设计双机冗余系统提供了很好的条件。
为此,我们设计了一种由两片单片微机组成的双机容错系统,以比较简单和与传统的多CPU系统完全不同思路的设计方法实现了双机的互为备
用及相互切换。
在该双机冗余系统设计中,其关键问题是双机系统的重构策略和双机系统的仲裁逻辑切换。
1 传统的多CPU系统设计方法
传统的多CPU系统的常用设计方法有三种:
①利用双口RAM实现CPU之间的通信。
双口RAM是一种高速的并行传输芯片,具有两套I/O口和竞争裁决电路,可以同时联接两个CPU,这样通过双口RAM可以实现多CPU之间通信。
②利用共享存的方法实现CPU之间的通信。
这种方法与上一种方法类似,所不同的是,上一种方法是利用双口RAM的竞争裁决电路实现对RAM的访问,而这种方法是利用不同的时序实现存共享的。
③利用总线方法实现CPU之间的通信。
通过接口芯片或CPU本身具备的SPI、I2C以及SMBus等接口实现CPU之间的通信。
2 该双CPU系统的结构和工作原理
该双CPU控制系统与传统的多CPU系统的设计方法完全不同,它由两片Atmel公司生产的AT89C51 CPU构成,双机互为备用,彼此独立并行运行,硬逻辑切换。
其双CPU控制系统原理框图如图1所示。
这是一种非表决式的双机冗余系统,一个CPU 作为另一CPU的热备份,双机在任务上同步运行。
所有输入信号通过输入接口同时送给两个CPU,但CPU 运算、处理后的输出量受到仲裁切换电路的控制,只有主CPU允许读写外部数据存贮器及输出至外部设备,当主CPU发生故障时,系统的自我检测切换逻辑将发出信号,自动切断其输出通道,并通过CPU的工作指示系统报警。
此时,系统或自动或人工切换到另一个备用的CPU,并同时打开其输出通道,备用机变为主机运行状态,控制系统这时降级为单机运行。
人们可以将原主机拔离系统以
便进行维修。
从图中可知,两个CPU的地址、数据及控制总线都通过一组三态门(三态门1、2)输出与外部数据存贮器相接,两个CPU 的某些输出控制I/O口都通过另一组三态门(三态门3、4)输出与外部输出控制设备相接,两组三态门的控制端都同时受仲裁切换电路控制,而仲裁切换电路的两路输出互为反逻辑,即只有一路输出能使所控制的对应三态门(如三态门1、3)正常输出,另一路输出使所控制的对应三态门(如三态门2、4)处于高阻状态,从而不影响主CPU正常读写数据和向控制I/O口输出数据。
图1 双CPU控制系统原理框图
表1 双机仲裁切换逻辑真值表ST1 ST2S CTL1 CTL2CPU1 CPU2
1 1
1
0 0 1
1 0
主辅
辅主
0 0 ´ 1 1 两CPU均工作不正常
1 0 ´0 1
CPU2工作不正常时,CPU1
为主机
0 1 ´ 1 0
CPU1工作不正常时,CPU2
为主机
3 双机仲裁切换逻辑电路
在该双CPU控制系统中,两者互为热备份,同时运行,一台为主机,另一台为备份机。
在双CPU都正常运行的情况下,系统默认CPU1为主机, CPU2为备份机。
当主机出现故障时,要求系统能自动切换到备份机,使备份机提升成为主机,从而代替原主机从故障发生处连续运行并发出报警信号。
同时要求能通过手动开关人为选定主机运行。
设判别两个CPU是否正常工作的信号分别为ST1、ST2,工作正常时它们的状态为1,工作不正常时状态为0。
仲裁切换电路输出为0的控制端控制工作正常的CPU的相应三态门组使能,仲裁切换电路输出为1的控制端控制另一CPU的相应三态门组禁止输出。
自动或手动选择主机的控制开关为S,当两个CPU都工作正常时,可通过S开关自动选择或指定主机(当S开关状态为1时为自动默认CPU1为主机,当S 开关状态为0时则强制CPU2为主机);当两个CPU中任意一个工作不正常时,则此时与S开关的状态无关,仲裁切换电路的输出能确保只有与工作正常的CPU相连的三态门组的使能端为0,从而控制该正常CPU正常读写数据和输出控制;当两个CPU都不正常时,仲裁切换电路的两个输出都为1,两个CPU都不能正常读写数据和输出控制。
这样当两个CPU中任何一个或全正常时就能保证只有一个CPU能正常读写数据和输出控制,当两个CPU都不正常时,则理所当然系统不能正常工作。
按要求可得真值表如表1所示。
由真值表可得仲裁切换电路的两路控制三态门的控制信号逻辑CTL1、CTL2分别为:
,
构成的仲裁切换电路如图2所示。
4 CPU状态监控电路
监控电路采用了具有电源监控电路和看门狗功能的微处理芯片
MAX813L,该芯片它具有4个功能:
①看门狗计时器功能。
当看门狗输入信号在1.6s无变化时,产生看门狗输出;
②电压监控功能。
当掉电或电源监测电压低于1.25V时,产生掉电输出;
③上电复位功能。
当上电时自动产生脉宽200ms的复位信号;
④人工复位功能。
当人工复位端输入低电平时,产生复位信号输出。
MAX813L采用DIP-8封装,如图3所示,引脚功能说明如下:
① MR:手工复位输入端,可接人工复位按钮,该端输入低电平保持140ms以上,可产生复位(RST)信号;
② Vcc:+5v电源;
③ GND:电源地;
④ PFI:电源检测输入端;
⑤ PFO:电源检测输出端,电源正常时,保持高电平;
⑥ WDI:看门狗输入端。
俗称“喂狗”信号,必须在1.6s使该端输入反向信号;
⑦ RST:复位输出端。
高电平有效,可输出200ms的正脉冲,当电源Vcc低于4.65v时,RST保持高电平;
⑧ WDO:看门狗输出端。
正常工作时输出高电平,当WDI信号在
1.6s不能及时送入并反向时,该端输出低电平信号。
因AT89C51无看门狗功能,为了监测系统状态,在本系统中主要利用的是MAX813L的看门狗计时器功能。
其中看门狗输入端WDI由CPU的P3.4提供,CPU在规定的时间定时改变P3.4的状态,由看门狗输出端WDO 提供当前CPU的状态信号至仲裁切换电路的ST i(i =1或2)端,从而由仲裁切换电路自动或手动确定主机。
图4为用MAX813L为CPU1接的看门狗电路,当CPU1工作正常时能正常提供P3.4信号则WDO端ST1输出高电平,D1亮D2灭;当CPU1工作不正常时不能正常提供P3.4信号则WDO端ST1输出低电平,D2亮D1灭。
5 系统硬件电路
图5为利用本文介绍的双CPU的切换及控制系统组成的一种硬件电路。
从图中可知,系统每个CPU都可以通过RS232串行口与上位机通信,两片CPU彼此独立运行,通过双机仲裁切换逻辑电路共享外部16KB RAM和控制8路I/O口输出。
利用这种方法还可以通过增加三
态门组成更大容量(最大64KB)的外部RAM和更多的输出控制I/O 口或扩展I/O口。
图5 一种双CPU的切换及控制系统的硬件电路
6 结束语
该双CPU控制系统构思独特,两个CPU彼此独立运行,但读写的都是同一块外部RAM的数据,只是只有主CPU能实际读写数据,故不存在存数据交换和共享问题,同时也只有主CPU能输出控制外部设备,可广泛应用于要求高可靠性控制的场合,作者将该项技术应用到自行研制的电脑样板切割机上取得了较满意的结果。