基于单片机+CPLD的多路精确延时控制系统设计

发布者:BlissfulMoments最新更新时间:2012-04-12 来源: 国外电子元器件关键字:单片机  CPLD  精确延时控制 手机看文章 扫描二维码
随时随地手机看文章

1 引言

现代控制系统中控制对象可能是复杂、分散的,而且往往是并行、独立工作的,但整体上它们是相互关联的有机组合。因此,控制信号的时序逻辑则要求更加精确。 CPLD单片机为控制系统提供了技术支持,由CPLD和单片机组成的多机系统具有逻辑控制方便,时序精确,并行工作,人机接口友好等优点。因此,本文提出了一种基于CPLD与单片机控制的多路精确延时控制系统的设计方案。

2 设计指标与系统原理

2.1 设计指标

输出多路脉宽为10 ms正脉冲信号;

脉冲输出时间独立调节、显示;

时间调整范围与精度为微秒级的调整范围为l~199μs,调节精度为lμs;毫秒级的调整范围为1~199 ms,调整精度为1 ms;

提供计时基准信号和工作状态提示声音;

9 V电池供电。

2.2 系统设计原理

2.2.1 系统时钟

本系统设计由CPLD和多个单片机组成,CPLD对24 MHz高精度一体化晶体振荡器二分频得到多路同步时钟信号作为多个单片机的系统时钟,并由各个单片机外脉冲信号引脚XTAL2注入,二分频确保信号的占空比为50%,满足单片机时钟脉冲信号高低电平持续时间大于20 ns和最高脉冲频率为12 MHz的要求,同时也提高系统的可靠性。5l系列单片机采用定时控制方式,具有固定的机器周期,1个机器周期共有12个振荡脉冲周期,则机器周期是振荡脉冲的12分频。本系统采用12 MHz振荡脉冲频率,1个固定机器周期为1μs,因此能保证设计指标所要求的最高控制精度。

2.2.2 同步计时启动信号

本系统设计由外部按键提供启动信号,由于机械接触点的弹性及电压突跳等原因,按键存在抖动效应,为保证按键准确识别,本系统设计采用软件去抖动,再经单片机引脚输出无电压毛刺的稳定启动信号,再经CPLD变换后,可提供多路同步计时启动信号。

2.2.3 输出信号

本系统设计采用10 ms单脉冲信号作为各模块单元控制输出信号,其输出形式可根据需要通过软件调整,并保证系统输出信号的时序与逻辑关系。

2.2.4 系统时序

系统时序图如图1所示,在计时脉冲的驱动下,按键信号经去抖动变换、CPLD逻辑同步后形成计时启动信号(0一n),以计时基准脉冲的前沿为计时起点,经设定延时后,系统输出相应的输出信号,其延时时间可独立调整,信号输出形式可由软件编程设置。图l采用单一正脉冲作为输出信号。[page]

2.2.5 系统原理框图

电源稳压单元实现系统5 V电源的稳压与滤波。单片机采用外部系统时钟。主控单片机CPUO完成按键检测、计时基准信号输出和系统提示声音输出等功能。NO.1~N0.n单元完成时间调整与显示、μs/ms(微秒/毫秒)变换和信号输出等功能,CPLD完成时钟2分频、同步计时脉冲输出和计时启动信号同步输出功能。图2为多路精确延时控制系统原理框图。[page]

3 硬件电路设计

3.1 主控单元

每个系统都由独立的主控单元组成,如图3所示。主控单元由电压、CPUO 和CPLD同步控制模块等组成。电压模块完成由可充电电池电压到稳定的5 V系统电源变换与滤波。CPUO单元模块选用ATMEL公司51系列单片机AT89S52A。AT89S52是低功耗、高性能CMOS 8位微控制器,具有8 KB在系统可编程Flash存储器、256字节的随机存取数据存储器(RAM)、32个外部双向输入/输出(I/O)端口、5个中断优先级2层中断嵌套中断、2个16位可编程定时计数器、2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器,兼容标准MCS一5l指令系统。CPUO模块完成按键信号检测,工作状态提示音输出,计时基准信号输出等功能。CPLD同步控制模块采用ALTRA公司EPM7032SLC44为控制核心。 EPM7032SLC44是MAX7000 CPLD,是基于先进的多阵列矩阵(MAX)架构,采用先进的CMOS制造工艺,提供从32到512个宏单元的密度范围,速度达3.5 ns的引脚到引脚延迟。支持在系统可编程能力(ISP),可以在现场进行重配置。CPLD同步控制单元完成时钟分频与同步,按键信号同步等功能,ProKram插座是CPLD的编程接口。[page]

3.2 输出控制单元

每个系统由n(本系统设计中n=9)个输出控制单元组成,这n个单元输出控制独立并行工作,如图4所示。N0.1~N0.n以ATMEL公司5l系列单片机AT89C2051为核心。AT89C205l是低功耗、高性能CMOS 8位单片机,具有15个双向输入/输出(I/O)端口、片内含2 K字节的可反复擦写的只读Flash程序存储器和128字节的随机存取数据存储器(RAM);采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS一5l指令系统。输出控制单元(NO.1~NO.n)并行工作,完成延时时间设置、μs/ms变换设置、控制信号输出和延时显示等功能,延时时间显示通过单片机串口实现,由3片串/并变换器件74LSl64驱动3个共阳数码管。

4 系统软件设计

本系统软件设计包括CPUO单元、NO.1~NO.n输出单元及CPLD单元程序设计。由于对时间要求严格,采用汇编语言编写,信号输出由中断程序完成,由于中断响应过程、现场保护以及中断后必要的设置条件检测需要时间,所以软件必须通过容余指令(比如NOP)的延时,可保证counter0输出和控制信号延时起点在同一时刻。[page]

CPU0单元程序流程如图5所示。CPU0主程序完成系统初始化、按键检测、去抖动信号输出和工作状态提示音输出等工作,中断服务程序计时基准信号 counterO输出。输出控制单元NO.1一NO.n程序流程如图6所示,各单元主程序完成μs/ms设置检测,延时设置读取,延时时间显示,中断程序完成控制信号输出功能。CPLD程序采用VHDL语言编写,采用QHalftusⅡ软件编译仿真。

5 结语

该系统设计可应用于电容组(9只)放电控制系统,在放电电子开关控制端、负载端测量以及微秒级延时范围内,延时误差小于O.1μs,毫秒级延时范围内,延时误差小于50μs。实际测试显示,系统实现了设计要求的调整精度。基于单片机+CPLD的多路精确延时控制系统充分利用单片机和CPLD的各自特点,实现主要设计指标。实际应用证明,该系统能够完全满足时序逻辑要求中严格控制系统的控制需求。

关键字:单片机  CPLD  精确延时控制 引用地址:基于单片机+CPLD的多路精确延时控制系统设计

上一篇:基于MC9S12DG128单片机的智能车控制系统设计
下一篇:80C152单片机上HDLC通信规程中的应用

推荐阅读最新更新时间:2024-03-16 12:57

基于89C51单片机的环境噪声测量仪
引 言      环境噪声监测,是人类提高生活质量,加强环境保护的一个重要环节,在各大城市的繁华街区和居民区,已有大型环境噪声显示器竖立街头。但目前国内的便携式噪声测试仪,多为价格昂贵的进口专用设备,除卫生、计量等环保专业部门拥有外,无法作为民用品推广普及。本文介绍一种以89C51单片机为核心,采用V/F转换技术构成的低成本、便携式数字显示环境噪声测量仪。该仪器工作稳定、性能良好,经校验定标后能满足一般民用需要,可广泛应用于工矿企业、机关、学校等需要对环境噪声进行测量和控制的场合。 2 声压级的测量机理   人耳的听阈一般是20μPa,痛阈一般是200 Pa,其间相差107倍,这样宽广的声压范围很不易测量,而且人
[单片机]
基于89C51<font color='red'>单片机</font>的环境噪声测量仪
单片机控制斯泰普步进电机驱动器工作原理
步进电机在控制系统中具有广泛的应用。它可以把脉冲信号转换成角位移,并且可用作电磁制动轮、电磁差分器、或角位移发生器等。 有时从一些旧设备上拆下的步进电机(这种电机一般没有损坏)要改作它用,一般需自己设计驱动器。本文介绍的就是为从一日本产旧式打印机上拆下的步进电机而设计的驱动器。本文先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。   1. 步进电机的工作原理 该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。   开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁
[单片机]
单片机微处理器AT89C51在时隙变换和控制中的应用
    摘要: MT8980是Mitel公司生产的PCM时分复用时间变换器,文中分析了它的原理及时序关系,给出了AT89C51与MT8980的接口电路及控制软件程序,最后对其典型应用进行了说明。     关键词: 时分复用 PCM 时隙交换 MT8980 AT89C51 1 引言 近年来,数字通信无论在理论上和技术上都有突飞猛进的发展,各种宽带传输技术,综合业务数字网(ISDN)等全数字的通信方式必将逐步取代模拟通信方式。现在,全球通信数据信号无一例外地采用着PCM码,为了最大限度地利用信道,降低传输成本,常在传输前对基带PCM信号进行多路调制,以形成时分复用PCM信号。我国采用的是32路的PCM标准,此
[应用]
基础学单片机要多久?单片机学了以后可以干嘛?
很多小伙伴看到网路上流传的单片机很难啊,又要硬件又要编程,就望而却步。 其实说白了,这都是人性对未知事物的一种恐惧心理。 害怕付出了时间精力,最后一无所获。 有个词叫 事在人为 ,如果你要做一件事学一门技术,没想好之前就不要开始。 既然开始了,就要有学不会做不成就吃S的决心,这样基本什么事都难不倒你。 1.零基础自学要多久? 我11年前,也是零基础自学啊,学了1个月就入门了。 过程呢,也很简单粗暴,一块51开发板,一台电脑,把自己关在房间里一天。 坚持半个月-1个月,学不会你打我! 2.单片机学会能干嘛? 单片机的应用非常多,小到生活起居,大到飞机火箭都有。 比如离我们最近的丰巢快递柜、共享单车、共享充电宝、充电桩、无人机
[单片机]
STC单片机AD和EEPROM的驱动C程序设计与编写
stc单片机具有在应用编程,调试起来比较方便;带有10位AD;内部eeprom;可在1T/机器周期下工作,速度是传统51单片机的12倍;下面是我写的AD和EEPROM的驱动C代码: /*---------------------------------------------------------------- *File Name: stc_AD.c - *Description: A/D 转换程序 *Project: - *MCU type: STC12C5410AD -
[单片机]
基于RC测量系统的设计方案
  1.引言   在电子仪器、仪表的制造及使用行业,有大量的印刷电路板需要调试、测量与维修,需要对电阻电容的数值进行测试。   本文介绍了一种基于AT89C51单片机和555定时器的数显式电阻和电容测量系统设计方案,然后制作出电路实物,实现系统的功能。系统利用555定时器和待测电阻(或电容)组成多谐振荡器,通过单片机定时器测量555输出信号的周期,根据周期和待测电阻(或电容)的数学关系再计算出电阻(或电容)值,再通过1602液晶显示器将其显示出来。经仿真结果表明该测量系统具有结构简单,方便实用等优点。   2.设计方案与原理   2.1 设计总方案   整个测量系统由单片机最小系统,按键,电阻、电容和555组成的多谐振荡
[单片机]
基于RC测量系统的设计方案
8031单片机各种算术操作指令简介
一、加法(对C、AC、OV等影响) ADD A,Rn---(@Ri,direct,#data) ADDC ------------------------------------------ 二、减法 SUBB A,------------------------------------ 三、加1(不影响标志位) INC A(Rn、@Ri,direct,DPTR) 对端口Pi的“读--修改---写” 指令 :INC、DEC、ANL、ORL、XOR、DJNZ 四、减1------- DEC A(Rn、@Ri,direct) 五、十进制加法调整 DA A 六、乘法 MUL AB 当积大于255时 O
[单片机]
采用C8051F060单片机和现场总线CAN实现网络测控系统的设计
1 绪论 随着网络技术的不断发展,Internet把世界上分散的计算机系统、通信系统实现了互连,形成了共用数据网络,成功的实现了网络资源共享。而CAN总线技术使得控制系统向着分散化、网络化、智能化的方向发展,使控制技术与计算机以及网络技术更为紧密的结合在一起。随着CAN总线控制网络的进一步发展,控制网络与因特信息网络的结合,方便了对设备的远程监控、诊断和维护。 2 系统模型概述 本设计采用在CAN总线控制网络和因特网之间加入一个转换接口。这种方式是通过硬件来实现的,即在底层网络与中间监控层之间加入中继器、网桥、路由器等专门的硬件设备,使控制网络作为信息网络的扩展与之紧密集成。硬件设备可以是一台专门的计算机,依靠其中运行的软件完
[单片机]
采用C8051F060<font color='red'>单片机</font>和现场总线CAN实现网络测控系统的设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved