精华内容
下载资源
问答
  • 电子政务-低压电源上电时序控制电路.zip
  • 行业资料-电子功用-上下电时序控制电路
  • 电子政务-一种输出上电时序控制电路.zip
  • 行业资料-电子功用-应用于高速公路的电动升降柱装置.pdf.zip
  • STM32F103和TPS65251的多电源时序控制电路.pdf
  • 在火工品中,时序控制电路的应用极为广泛,其中开关的效率是影响其可靠性的重要因素。本文针对双极性三极管、场效应管和双极性晶体管分别作为时序控制开关,对比分析3种开关的电容式点火控制电路对电容瞬态放电性能...
  • 行业制造-电动装置-一种读取时序控制电路.zip
  • 行业分类-电子-一种多电压时序控制电路.zip
  • 行业资料-电子功用-实现恒速送丝的时序控制电路结构.pdf.zip
  • 行业资料-电子功用-实现恒速送丝的时序控制电路及方法.pdf.zip
  • 行业分类-电器装置-用于计算机主板+3.3V以及+5V的时序控制电路.zip
  • 六自由度电磁敏感定位系统作为一种新型的跟踪定位装置,可...该跟踪系统由正弦信号发射电路、敏感信号接收电路组成的硬件和从敏感接收数据中求解目标参数的算法程序两部分组成,定位计算精度受制于上述两部分的误差。
  •  人们常常想当然地为印刷电路板上的电路上电,殊不知这可能造成破坏以及有损或无损闩锁状况。这些问题可能并不突出,直到量产开始,器件和设计的容差接受检验时才被发现,但为时已晚,项目和产品的时间及交货将会受...
  • 行业分类-电子电器-读出电路结构及其工作时序控制方法.zip
  • 行业资料-电子功用-具有时序控制功能的掉检测电路.zip
  • 行业资料-电子功用-产生时序的供电控制电路和电源电路.pdf
  • 行业分类-电子电器-读出电路结构及其工作时序控制方法[1].zip
  • 行业资料-电子功用-提升引弧时序的控制方法及控制电路.zip
  • 基于FPGA的OV5640上电时序控制

    千次阅读 2020-02-09 11:49:22
    在实际中我们要想OV5460实际工作起来,必须对OV5640进行上电时序控制,控制的时序如下: 我们主要控制的时间是t2、t3、t4,因为一般情况下上面的时序图我们只能使用FPGA控制PWDN、RESETB、XVCLK、SCCB,另外的两个...

    OV5640上电时序图

    在实际中我们要想OV5640实际工作起来,必须对OV5640进行上电时序控制,控制的时序如下:
    在这里插入图片描述
    我们主要控制的时间是t2、t3、t4,因为一般情况下上面的时序图我们只能使用FPGA控制PWDN、RESETB、XVCLK、SCCB,另外的两个信号是与硬件电路相连,无法直接控制。
    上面时间具体的时间值如下:
    在这里插入图片描述

    OV5640上电代码

    这里因为上面的时序图过于简单,我们直接给出代码,代码如下:

    `timescale 1ns / 1ps
    // *********************************************************************************
    // Project Name : OSXXXX
    // Author       : zhangningning
    // Email        : nnzhang1996@foxmail.com
    // Website      : 
    // Module Name  : ov5640_pwdn.v
    // Create Time  : 2020-02-09 10:56:00
    // Editor       : sublime text3, tab size (4)
    // CopyRight(c) : All Rights Reserved
    //
    // *********************************************************************************
    // Modification History:
    // Date             By              Version                 Change Description
    // -----------------------------------------------------------------------
    // XXXX       zhangningning          1.0                        Original
    //  
    // *********************************************************************************
    
    module ov5640_pwdn(
        //System Interfaces
        input                   sclk            ,
        input                   rst_n           ,
        //Ov5640 Interfaces
        output  reg             ov5640_rst_n    ,
        output  reg             ov5640_pwdn     ,
        //Others
        output  reg             pwdn_done 
    );
     
    //========================================================================================\
    //**************Define Parameter and  Internal Signals**********************************
    //========================================================================================/
    localparam  DELAY_6MS   =   30_0000         ;
    localparam  DELAY_2MS   =   10_0000         ;
    localparam  DELAY_21MS  =   105_0000        ;    
    
    reg                 [18:0]  cnt_6ms         ;
    reg                 [16:0]  cnt_2ms         ;
    reg                 [20:0]  cnt_30ms        ;
     
    //========================================================================================\
    //**************     Main      Code        **********************************
    //========================================================================================/
    always @(posedge sclk or negedge rst_n)
        if(rst_n == 1'b0)
            cnt_6ms         <=      19'd0;
        else if(ov5640_pwdn == 1'b1)
            cnt_6ms         <=      cnt_6ms + 1'b1;
        else
            cnt_6ms         <=      19'd0;
    
    always @(posedge sclk or negedge rst_n)
        if(rst_n == 1'b0)
            ov5640_pwdn     <=      1'b1;
        else if(cnt_6ms >= DELAY_6MS)
            ov5640_pwdn     <=      1'b0;
        else
            ov5640_pwdn     <=      ov5640_pwdn;
    
    always @(posedge sclk or negedge rst_n)
        if(rst_n == 1'b0)
            cnt_2ms         <=      17'd0;
        else if(ov5640_pwdn == 1'b0)
            cnt_2ms         <=      cnt_2ms + 1'b1;
        else
            cnt_2ms         <=      17'd0;
    
    always @(posedge sclk or negedge rst_n)
        if(rst_n == 1'b0)
            ov5640_rst_n    <=      1'b0;
        else if(cnt_2ms >= DELAY_2MS)
            ov5640_rst_n    <=      1'b1; 
        else
            ov5640_rst_n    <=      ov5640_rst_n;
    
    always @(posedge sclk or negedge rst_n)
        if(rst_n == 1'b0)
            cnt_30ms        <=      21'd0; 
        else if(ov5640_rst_n == 1'b1)
            cnt_30ms        <=      cnt_30ms + 1'b1;
        else 
            cnt_30ms        <=      21'd0;
    
    always @(posedge sclk or negedge rst_n)
        if(rst_n == 1'b0)
            pwdn_done       <=      1'b0;   
        else if(cnt_30ms >= DELAY_21MS)
            pwdn_done       <=      1'b1;
        else
            pwdn_done       <=      pwdn_done;
    
    endmodule
    
    

    OV5640上电代码的测试代码

    为了方便学习上面的两个时序,我们这里给出测试代码:

    `timescale 1ns / 1ps
    `define     CLOCK   20
    // *********************************************************************************
    // Project Name : OSXXXX
    // Author       : zhangningning
    // Email        : nnzhang1996@foxmail.com
    // Website      : 
    // Module Name  : ov5640_pwdn_tb.v
    // Create Time  : 2020-02-09 11:19:45
    // Editor       : sublime text3, tab size (4)
    // CopyRight(c) : All Rights Reserved
    //
    // *********************************************************************************
    // Modification History:
    // Date             By              Version                 Change Description
    // -----------------------------------------------------------------------
    // XXXX       zhangningning          1.0                        Original
    //  
    // *********************************************************************************
    
    module ov5640_pwdn_tb;
    reg                    sclk            ;
    reg                    rst_n           ;
    wire                   ov5640_rst_n    ;
    wire                   ov5640_pwdn     ;
    
    initial begin
        sclk            =           1'b0;
        rst_n           <=          1'b0;
        #(100*`CLOCK);
        rst_n           <=          1'b1;
    end
    always  #(`CLOCK/2) sclk    =   ~sclk;
    
    ov5640_pwdn ov5640_pwdn_inst(
        //System Interfaces
        .sclk                   (sclk                   ),
        .rst_n                  (rst_n                  ),
        //Ov5640 Interfaces
        .ov5640_rst_n           (ov5640_rst_n           ),
        .ov5640_pwdn            (ov5640_pwdn            ),
        //Others
        .pwdn_done              (pwdn_done              )
    );
    endmodule
    
    

    整个OV5640的驱动代码到这里我们已经写完,代码包括SCCB协议配置摄像头、OV5640上电时序控制、DVP协议转换成数据流。而这些知识在我们前面的文章中已经写完,同学们可以查看之前的博客。

    总结

    创作不易,认为文章有帮助的同学们可以关注点赞支持。(工程也都在群中)对文章有什么看法或者需要更近一步交流的同学,可以加入下面的群:
    在这里插入图片描述

    展开全文
  • 电源时序控制是微控制器、...无论如何,正确的上电和关断时序控制可以防止闩锁引发的即时损坏和ESD 造成的长期损害。此外,电源时序控制可以错开上电过程中的浪涌电流,这种技术对于采用限流电源供电的应用十分有用。
  • BD8611EFV是应用于便携式DVD,兼具集中保护和电源启动时序控制的智能型,内置式6通道系统电源管理芯片,满足了依靠电池供电的便携式DVD为主等便携式设备对整机稳定性,可靠性的更高需求。其内置了电源启动时序控制...
  • #资源达人分享计划#
  • 文章介绍了LM3881 在供电时序控制方面的应用。根据LM3881 芯片特性及时序控制要求,设计了单芯片应用及多芯片级联应用的硬件电路,分析了电路的工作原理
  • 有各种各样的电源管理IC可以执行时序控制、跟踪、上电和关断监控等功能。  时序控制和跟踪器件可以监控和控制多个电源轨,其功能可能包括设置开启时间和电压上升速率、欠压和过压故障检测、余量微调(在标称电压值...
  • TMS320F28335上电时序

    2015-09-08 13:50:58
    本文档基于DSP 28335,详细描述了28335的上电时序以及与2812进行了对比。
  • 下面介绍各种PWM开关整流器中应用同步整流管时的控制时序。用USR和UV1分别代表同步整流管SR和主开关管V1的控制信号逻辑电平,并忽略控制信号之间的死区。用“-”表示“非”逻辑。  欢迎转载,信息来自维库电子市场...
  • FPGA上电时序加载过程详解

    千次阅读 2021-02-24 23:39:48
    目前,大多数FPGA芯片是基于 SRAM 的结构的, 而 SRAM 单元中的数据掉就会丢失,因此系统上电后,必须要由配置电路将正确的配置数据加载到 SRAM 中,此后 FPGA 才能够正常的运行。 常见的配置芯片有EPCS 芯片 ...

    目录

    1.前言

    2.FPGA配置方式

    3.FPGA配置过程

    4.FPGA配置模式选择

    5.主动串行配置

    6.JTAG配置

    7.被动串行配置


    1.前言

    目前,大多数FPGA芯片是基于 SRAM 的结构的, 而 SRAM 单元中的数据掉电就会丢失,因此系统上电后,必须要由配置电路将正确的配置数据加载到 SRAM 中,此后 FPGA 才能够正常的运行。

    常见的配置芯片有EPCS 芯片 (EPCS4、EPCS8、EPCS16、EPCS64、EPCS128),还有通用的串行 SPI FLASH 芯片如 M25P40、 M25P16、 W25Q16 等。

    配置(configuration)是对FPGA的内容进行编程的过程。每次上电后都需要进行配置是基于SRAM工艺FPGA的一个特点,也可以说是一个缺点。FPGA配置过程如下:

     

    2.FPGA配置方式

    根据FPGA在配置电路中的角色,可以将配置方式分为三类:

    1.FPGA主动串行(AS)方式 

    2. JTAG方式  

    3. FPGA被动(Passive)方式

    3.FPGA配置过程

    FPGA的配置包括3各阶段:复位、配置和初始化。

    FPGA正常上电后,当其nCONFIG管脚被拉低时,器件处于复位状态,这时所有的配置RAM内容被清空,并且所有I/O处于高阻态,FPGA的状态管脚nSTATUS和CONFIG_DONE管脚也将输出为低。当FPGA的nCONFIG管脚上出现一个从低到高的跳变以后,配置就开始了,同时芯片还会去采样配置模式(MSEL)管脚的信号状态,决定接受何种配置模式。

    随之,芯片将释放漏极开路(open-drain)输出的nSTATUS管脚,使其由片外的上拉电阻拉高,这样,就表示FPGA可以接收配置数据了。在配置之前和配置过程中,FPGA的用户I/O均处于高阻态。

    在接收配置数据的过程中,配置数据由DATA管脚送入,而配置时钟信号由DCLK管脚送入,配置数据在DCLK的上升沿被锁存到FPGA中,当配置数据被全部载入到FPGA中以后,FPGA上的CONF_DONE信号就会被释放,而漏极开路输出的CONF_DONE信号同样将由外部的上拉电阻拉高。因此,CONF_DONE管脚的从低到高的跳变意味着配置的完成,初始化过程的开始,而并不是芯片开始正常工作。

    INIT_DONE是初始化完成的指示信号,它是FPGA中可选的信号,需要通过Quartus II工具中的设置决定是否使用该管脚。在初始化过程中,内部逻辑、内部寄存器和I/O寄存器将被初始化,I/O驱动器将被使能。

    当初始化完成以后,器件上漏极开始输出的INIT_DONE管脚被释放,同时被外部的上拉电阻拉高。这时,FPGA完全进入用户模式,所有的内部逻辑以及I/O都按照用户的设计运行,这时,那些FPGA配置过程中的I/O弱上拉将不复存在。不过,还有一些器件在用户模式下I/O也有可编程的弱上拉电阻。在完成配置以后,DCLK信号和DATA管脚不应该被浮空(floating),而应该被拉成固定电平,高或低都可以。 

    4.FPGA配置模式选择

    用户可以通过设置FPGA上的MSEL0、MESL1两个引脚的状态来选择配置方式。各种方式的MSEL0、MESL1设置如下表所列:

    说明:

    在上表中,如果只采用一种配置方式,则可以直接将MSEL0、MESL1连接到VCC(注意要与FPGA的IO口的供电VCCIO相同)或GND;

    如果需要多种配置方式,那么MSEL要用控制器(单片机、CPLD等)来控制以进行切换;

    MSEL管脚在配置开始前必须处于一个固定的状态,因此不能将MSEL管脚悬空。

    5.主动串行配置

    主动串行配置方式(AS)是将配置数据事先存储在串行配置器件EPCS中,然后在系统上电时Cyclone IV FPGA通过串行接口读取配置数据(如果是压缩数据,还会进行解压缩处理)对内部的SRAM单元进行配置。

    因为上述配置过程中FPGA控制配置接口,因此通常称为主动配置方式。在配置期间,Cyclone IV用过串行接口来读配置数据,来对里面的SRAM编程。串行配置器件的四个接口包括,串行时钟输入DCLK,串行数据输出DATA,低有效的片选信号NCE,串行数据输入ASDI。

    主动串行配置电路图:

    因为FPGA上的nSTATUS、CONFIG_DONE管脚都是开漏结构,所以都要接上拉电阻。FPGA的片选脚nCE必须接地。

    6.JTAG配置

    通过JTAG接口,利用Quartus II软件可以直接对FPGA进行单独的硬件重新配置。Quartus II软件在编译时会自动生成用于JTAG配置的.sof文件。

    如果同时使用AS方式和JTAG方式来配置FPGA,JTAG配置方式拥有最高的优先级,此时AS方式将停止,而执行JTAG方式配置。

    利用Quartus II软件和USB Blaster等下载电缆可下载配置数据到FPGA。Quartus II软件可以验证JTAG配置是否成功。JTAG配置通过下载电缆使用SOF、Jam或者JBC文件直接对FPGA进行配置,这种配置方式只能用于调试阶段,因为,掉电后FPGA中的配置数据将丢失。

    7.被动串行配置

    被动串行PS配置方式是Altera Cyclone IV系列FPGA配置方式中比较常用的方式。但是,在工程应用中若采用这种配置方式,FPGA需要连接一个智能主机(比如复杂可编程逻辑器件CPLD/微控制单元MCU等)以给其提供配置时钟和配置数据。

    在该配置方式下,智能主机在保证与存储配置数据的闪存通信无误的情况下,只需向FPGA提供一个DCLK信号和一个DATA0信号即可实现对FPGA的配置。另外,该DCLK信号还可以实现多种频率以满足用户对配置时间的需求,这是该配置方式的一大亮点。

    本文介绍了以Altera型的FPGA芯片为例介绍了FPGA的上电过程,并描述了三种常见的配置模式,用户可以根据不同的需求来采用对应的配置模式,每种配置模式下对应的配置数据类型也是不相同的。

    展开全文
  • 硬件上电时序

    千次阅读 2019-04-13 20:28:37
    上电时序关注点 是 毫米级还是微秒级 5M hz 是 0.2 * 10^-6 s, 0.2 微秒, 200 纳秒 50M hz 是 0.02 * 10^-6 s, 0.02 微秒, 20 纳秒 500M hz 是 0.002 * 10^-6 s, 0.002 微秒, 2 纳秒 如果你的...

    上电时序关注点


      1. 是 毫米级还是微秒级

    5M hz 	是 	0.2 	* 10^-6 s, 	0.2   微秒, 200  纳秒
    50M hz 	是 	0.02 	* 10^-6 s, 	0.02  微秒,	20 	 纳秒
    500M hz 是 	0.002 	* 10^-6 s, 	0.002 微秒,	2    纳秒
    
    如果你的时序是毫秒级的,但是混入了微秒级的时序,说明其他模块控了你的引脚
    
    

      1. 测试多次验证波形是否稳定

    确定只有你的驱动可以控该引脚(GPIO或者功能脚)
    确定你的驱动可以完美的控该引脚(GPIO或者功能脚)
    在你认为静默的条件下量波形
    

      1. 确定驱动不会并发执行 引脚控制代码块

    工作队列可以并行?
    
    展开全文
  • 现今,电子系统往往具有许多不同的电源轨。在采用模拟电路和微处理器、DSP、ASIC、FPGA的系统中,尤其如此。为实现可靠、可重复的操作...既定的电源系统设计可能包括电源时序控制、电源跟踪、电源电压/电流监控和控制。
  • 数电基础:时序逻辑电路

    万次阅读 多人点赞 2019-08-19 08:52:21
    虽然每个数字电路系统可能包含有组合电路,但是在实际应用中绝大多数的系统还包括存储元件,我们将这样的系统描述为时序电路时序电路是由最基本的逻辑门电路加上反馈逻辑回路(输出到输入)或器件组合而成的...

     


            虽然每个数字电路系统可能包含有组合电路,但是在实际应用中绝大多数的系统还包括存储元件,我们将这样的系统描述为时序电路。

            时序电路是由最基本的逻辑门电路加上反馈逻辑回路(输出到输入)或器件组合而成的电路,与组合电路最本质的区别在于时序电路具有记忆功能。

    1. 简介

               时序逻辑电路是数字逻辑电路的重要组成部分,时序逻辑电路又称时序电路,主要由   存储电路       组合逻辑电路   两部分组成。它和我们熟悉的其他电路不同,其在任何一个时刻的输出状态由当时的输入信号和电路原来的状态共同决定,而它的状态主要是由存储电路来记忆和表示的。同时时序逻辑电路在结构以及功能上的特殊性,相较其他种类的数字逻辑电路而言,往往具有难度大、电路复杂并且应用范围广的特点  。

    在数字电路通常分为组合逻辑电路时序逻辑电路两大类,组合逻辑电路的特点是输入的变化直接反映了输出的变化,其输出的状态仅取决于输入的当前的状态,与输入、输出的原始状态无关,而时序电路是一种输出不仅与当前的输入有关,而且与其输出状态的原始状态有关,其相当于在组合逻辑的输入端加上了一个反馈输入,在其电路中有一个存储电路,其可以将输出的状态保持住,我们可以用下图的框图来描述时序电路的构成。

    从上面的图上可以看出,其输出是输入及输出前一个时刻的状态的函数,这时就无法用组合逻辑电路的函数表达式的方法来表示其输出函数表达式了,在这里引入了现态(Present state)和次态(Next State)的概念,当现态表示现在的状态(通常用Qn来表示),而次态表示输入发生变化后其输出的状态 (通常用Qn+1表示),那么输入变化后的输出状态表示为

    Qn+1=f(X,Qn),其中:X为输入变量。

    组合电路和存储元件互联后组成了时序电路。存储元件是能够存储二进制信息的电路。存储元件在某一时刻存储的二进制信息定义为该时刻存储元件的状态。时序电路通过其输入端从周围接受二进制信息。时序电路的输入以及存储元件的当前状态共同决定了时序电路输出的二进制数据,同时它们也确定了存储元件的下一个状态。时序电路的输出不仅仅是输入的函数,而且也是存储元件的当前状态的函数。存储元件的下一个状态也是输入以及当前状态的函数。因此,时序电路可以由输入、内部状态和输出构成的时间序列完全确定。

    逻辑设计领域主要有两种类型的时序电路,它们分类的标准取决于我们观察到的输入信息的时机和内部状态改变的时机。同步时序电路   (synchronous sequential circuit)的行为可以根据其在离散的时间点上的信号信息来定义。而 [2]  异步时序电路asynchronous sequential circuit)的行为则取决于任意时刻的输入信号以及输入信号在连续的时间内变化的顺序。

    时序电路的特点是:输出不仅取决于当时的输入值,而且还与电路过去的状态有关。它类似于含储能元件的电感或电容的电路,如触发器锁存器计数器移位寄存器存储器等电路都是时序电路的典型器件,时序逻辑电路的状态是由存储电路来记忆和表示的。 

    时序逻辑电路的特点:任意时刻的输出不仅取决于该时刻的输入,而且还和电路原来的状态有关,所以时序电路具有记忆功能。

    1.1、分类 

     

    1.2 时序逻辑功能描述方法

     

    原文链接:https://blog.csdn.net/leemboy/article/details/82780617

    1.2.1 逻辑方程组

    1)  驱动方程(激励方程)

        触发器的控制端J、K、D、T与其他参量的函数关系
            J,K,D,T=f(Qn,X)
        很简单时可默认不写

     2)  状态方程

       将触发器特征方程改造而成的触发器的次态输出Qn+1与现态输出Qn的关系。
            Qn+1=f(Qn,J,K,D,T)

     3) 输出方程

        电路最终输出与触发器输出Qn的关系。
            Y=f(Qn,X)
        三种方程中,驱动方程、状态方程最重要,输出方程往往可以不要,因为电路简单时,触发器的输出Qn一般就是电路的最终输出。

    1.2.2状态转换表

    1.2.3 状态图 

     1.2.4 时序图

     


    时序逻辑电路的分析方法


    1)  分析电路的组成
    2)  根据电路写出三个方程
    3)  列出状态转换真值表和状态表
    4)  画出状态转换图
    5)  描述电路逻辑功能

    几个概念

     

    三种逻辑器件

    时序逻辑电路应用很广泛,根据所要求的逻辑功能不同进行划分,它的种类也比较繁多。在具体的授课环节中,主要选取了应用较广、具有典型时序逻辑电路特征的三种逻辑器件进行比较详细地介绍 [1]  。

    1.计数器

    一般来说,计数器主要由触发器组成,用以统计输入计数脉冲CP的个数。计数器的输出通常为现态的函数。计数器累计输入脉冲的最大数目称为计数器的“模”,用M表示。如M=6计数器,又称六进制计数器。所以,计数器的“模”实际上为电路的有效状态数 。

    同步七进制加法计数器的逻辑图计数器的种类很多,特点各异。主要分类如下:按计数进制可分为:二进制计数器、十进制计数器、任意进制计数器。按计数增减可分为:加法计数器、减法计数器、加/减计数器,又称可逆计数器。按计数器中触发器翻转是否同步可分为:异步计数器和同步计数器  。

    2.寄存器

    寄存器是存放数码、运算结果或指令的电路,移位寄存器不但可存放数码,而且在移位脉冲作用下,寄存器中的数码可根据需要向左或向右移位。寄存器和移位寄存器是数字系统和计算机中常用的基本逻辑部件,应用很广。一个触发器可存储一位二进制代码, n个触发器可存储n位二进制代码。因此,触发器是寄存器和移位寄存器的重要组成部分。对寄存器中的触发器只要求它们具有置0或者置1功能即可,无论是用同步结构的触发器,还是用主从结构或者边沿触发的触发器,都可以组成寄存器   。

    3.顺序脉冲发生器

    顺序脉冲是指在每个循环周期内,在时间上按一定先后顺序排列的脉冲信号。产生顺序脉冲信号的电路称为顺序脉冲发生器。在数字系统中,常用以控制某些设备按照事先规定的顺序进行运算或操作 。

    特点

    时序逻辑电路其任一时刻的输出不仅取决于该时刻的输入,而且还与过去各时刻的输入有关。常见的时序逻辑电路有触发器计数器寄存器等。由于时序逻辑电路具有存储或记忆的功能,检修起来就比较复杂。

    带有时序逻辑电路的数字电路主要故障分析:

    1. 时钟:时钟是整个系统的同步信号,当时钟出现故障时会带来整体的功能故障。时钟脉冲丢失会导致系统数据总线、地址总线或控制总线没有动作。时钟脉冲的速率振幅宽度、形状及相位发生变化均可能引发故障。

    2. 复位:含有微处理器(MPU)的设备,即使是最小系统,一般都具有复位功能。复位脉冲在系统上电时加载到MPU上,或在特定情况下使程序回到最初状态(例如,看门狗Watchdog程序)。当复位脉冲不能发生、信号过窄、信号幅度不对、转换中有干扰或转换太慢时,程序就可能在错误的地址启动,导致程序混乱。

    3. 总线:总线传递指令系列和控制事件,一般有地址总线、数据总线和控制总线。当总线即使只有一位发生错误时,也会严重影响系统功能,出现错误寻址、错误数据或错误操作等。总线错误可能发生在总线驱动器中,也可能发生在接收数据位的其它元件中。

    4. 中断:带微处理器(MPU)的系统一般都能够响应中断信号或设备请求,产生控制逻辑,以暂时中断程序执行,转到特殊程序,为中断设备服务,然后自动回到主程序。中断错误主要是中断线路粘附(此时系统操作非常缓慢)或受到干扰(系统错误响应中断请求)。

    5. 信号衰减和畸变:长的并行总线和控制线可能会发生交互串扰和传输线故障,表现为相邻的信号线出现尖峰脉冲(交互串扰),或驱动线上形成减幅振荡(相当于逻辑电平的多次转换),从而可能加入错误数据或控制信号。发生信号衰减的可能原因比较多,常见的有高湿度环境、长的传输线、高速率转换等。而大的电子干扰源会产生电磁干扰(EMI),导致信号畸变,引起电路的功能紊乱。

    检修方法

    在检修时序逻辑电路之前应尽可能熟悉系统的结构原理电路,然后是分析故障的表征特性,尽可能地缩小故障产生的范围。较高档的医疗设备一般带有自诊断程序,可充分利用它查找故障,将故障定位到较小范围。

    检查电源

    时序逻辑电路较常采用±5V、±15V、±12V电源。当电源对地短路或电源稳定性差都可能导致系统故障,表现为系统无反应、系统程序紊乱等。一般来说,电源对地短路是因为电容(去耦电容)短路产生的,找到故障电容最好的办法是采用电流跟踪仪跟踪短路电流,没有电流跟踪仪的就只好将电路分单元查找替换。

    检查时钟

    时钟电路一般由石英晶体电路组成(也有采用RC振荡电路的)。根据经验,石英晶体较易损坏。可用示波器测试时钟信号的频率、振幅、相位,或简单地用逻辑探针检测时钟脉冲的有无。对各个单元电路的时钟均应检测,以防断线、松脱、干扰等引起时钟脉冲的不正确。

    检查总线

    用逻辑探针检查总线上是否有脉冲活动。若总线上没有脉冲活动,可继续检查总线驱动器输入端有无脉冲信号、驱动器是否在允许状态、驱动器是否响应激励等,来确定故障是否是由于总线驱动器引起的,然后轮流检查每一个总线接收者。另外,可以关掉电源,用多用表检查总线各线的对地电阻,如果所有线的阻值一样,那么总线估计正常;如果一条或多条线的阻值与其余的不同,那么该线值得怀疑;如果有两根线的阻值相同,而又高于或低于其它的线,那么这两条线可能相互短路了。

    检查关键的脉冲信号

    用逻辑探针、示波器或逻辑分析仪观察复位、使能、选通、读写、中断、读内存等控制信号,可以较好地判断集成电路(IC)是否正常工作。当复位信号有效时,IC输出应被清零或置位,程序应回到初始状态运行;当使能信号有效而时钟脉冲正常时,IC数据线上应有脉冲活动;当逻辑探针连到读内存线上,而指示灯没有闪烁显示(即读内存线上没有脉冲活动),说明微处理器可能在程序的某处卡住了,因为每一条指令读地址处存储器时,读内存线上通常是应有脉冲信号的;对于中断信号,可用逻辑探针来观察是否发生中断线路粘附,也可通过外加直流电压或低电平来控制(允许或禁止)被测试的中断。

    检查接口

    接口卡、印刷板与插座插接时可能松脱或偏离中心导致接触不良而引发故障,实际上很多故障的确是由此产生的,对此可用无水酒精擦拭清洁接口后再重新插接固定。另外数字系统还常常通过外部通信线路(RS232、MODEM、IEEE-488等)与其它系统连接,而连接线通常很长,还可能暴露于电子干扰源下,例如继电器、电机、变压器、大型X线机、阴雨天闪电等,连接口接触不良和电子干扰源的电磁干扰(EMI)均可能会产生错误的数据传送,甚至损坏相关的元件。对电磁干扰最好找出干扰源后排除它,其次可改善工作环境(如湿度和温度等),加强屏蔽,或改用屏蔽性能好的连接线。

    时序逻辑电路的检修有许多方法技巧,必须通过长期实际工作摸索总结经验,才能更好地诊断、发现、排除故障,提高时序逻辑电路的维修技术水平。

    设计步骤

    下面提到的时序电路的设计步骤与组合电路类似,但还需要一些额外的步骤。

    1.规格说明书:如果没有,先写出电路的规格说明书。

    2.系统描述:从问题的陈述中得出状态图或状态表。

    3.状态赋值:如果通过步骤1中只能得到状态图,则在从状态图中得到状态表。并为状态表中的每个状态赋二进制代码

    4.得到触发器的输入方程:选择一种或多种类型的触发器,通过已经编码的状态表中的下一状态得到触发器的状态方程。

    5.得到输出方程:通过状态表中的输出信号栏得到输出方程。

    6.优化:优化触发器的输入方程和输出方程。

    7.工艺映射:画出电路由触发器、与门或门和反向器所组成的逻辑图。将这个逻辑图转换为由有效的触发器和门工艺组成的新的逻辑图。

    8.验证:验证最终设计的正确性。

    为了方便起见,我们一般都省略步骤7即工艺映射,而在示意图中仅使用触发器、与门、或门和反向器。

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,679
精华内容 7,071
关键字:

上电时序控制电路