Questions tagged «digital-logic»

与处理连续信号的模拟电子设备不同,数字电子设备处理离散信号。数字逻辑用于对电信号进行算术运算,并构成构建CPU的基础。

4
SR触发器:NOR或NAND?
我最近开始研究人字拖鞋,但目前仍处于停滞状态: 在一些视频教程中,人们这样解释SR触发器: 因此,他们使用“与非”门,生成了如下的转换表: | t | t+1 | S | R | Q | 0 | 0 | INVALID | 0 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | ? 但是,其他一些人则使用NOR门来解释SR触发器: (来源:startingelectronics.com) 其中有一个不同的过渡表。 都正确吗?为什么两者都存在?

2
“显性”和“隐性”到底是什么?
我正在读取LIN总线上的数据表,但显然,CAN使用相同的术语。 “隐性”和“显性”代表什么,例如http://hw-server.com/products/rs_optika/prevodniky_optika.html? 这些术语与“低”和“高”或0和1有何关系?

1
这些微控制器引脚输入/输出模式是什么意思?
我买了一个stm32f103ret6。当我看到参考手册时,我看到它有几种I / O模式。 输入:浮动,上拉,下拉 输出:模拟,漏极开路,推挽 我已经使用具有三态和上拉功能的AVR MCU。因此,我可以理解上拉和下拉,但是我不能理解浮动,模拟,漏极开路,推挽模式。这些模式是什么意思,什么时候使用?


3
可以将输出拉到地面的IC,也许不是门?
我的板上有四个继电器。它具有标准的Vcc,Gnd和In1-In4引脚。我想用Arduino或ESP32来控制它。但是,我注意到,当控制器上的输出引脚被拉至高电平时,当它被拉至低电平时,继电器将接合。 当板复位时,这是一个问题,因为所有继电器开关都将接合,直到这不是我想要的。经过一番挖掘,我做到了: 这可以按需工作,继电器上始终有5V电压,并且继电器一直处于断开状态。当我将信号输出到Q1的基座时,它将把输出拉到地,继电器将接合。 现在我有四个这样的继电器,不久以后我还会有更多的。所以,我想用IC解决这个问题。特别是,我一直在查看IC7404,它是一堆NOT门,但是,我不确定这能否解决我的问题。 那么,当输入端出现信号时,是否有IC可以将输出拉至地?7404是否可以工作,但我什么都没看到?:) 编辑:这是我正在使用的继电器模块。我找不到任何有用的数据表。


2
如何将真值表映射到三元逻辑函数?
请客气。我有一个来自不同工程领域的棘手且重要的问题,其答案在电气工程领域可能是众所周知的。我在StackOverflow上问了类似的问题 假设我有一个包含5个输入和1个输出的真值表。我使用了Espresso算法(例如Logic Friday)来最小化表格并编写一些有效的VHDL。一切正常。 我不想将真值表最小化并映射到与非门,而是想映射到任意三元逻辑函数。我对多值逻辑不感兴趣,但是对具有3个输入变量的逻辑函数不感兴趣。这些功能共有256种,而3-in NAND只是其中之一。这256个功能中的全部功能可能并不是全部有趣:一些功能减少到了2个输入变量同级。 问题:如何将真值表(例如,具有7个输入)映射到这些3合功能中的任何一个。做类似事情的工具会很棒,但是关于如何简化为任意三元函数的方法最好。 背景技术:现代CPU可以对512位寄存器(例如,指令vpternlog)执行任意三元逻辑运算,但是由于复杂性,编译器将其留给了程序员,程序员对如何对其进行优化一无所知。

4
缓冲数字微控制器信号以连接到光耦合器
我经常在一些项目中工作,在这些项目中,我使用光耦合器将数字+ 5VDC控制信号(例如,来自微控制器的信号)与电路的其余部分隔离开。但是,由于这些功能通过点亮设备内部的LED来工作,因此微控制器引脚上可能会负载数十毫安的电流。我正在寻找有关用附加级缓冲该控制信号的最佳实践的建议,以使微控制器有效地看到高阻抗,从而减少其需要提供的电流? 只是天真地离开了我的脑海,我想到了一些可行的方法: 1)只需将运算放大器用作单位增益缓冲放大器。 2)使用专用的比较器芯片将输入信号与例如+ 2.5VDC进行比较。 3)使用MOSFET作为信号放大器。 但是,在阅读后,我遇到了很多以前从未使用过的芯片,但听起来它们可能是为这种事情而设计的。例如: 差分线路驱动器(MC3487) 差分线路接收器(DC90C032) 线路收发器(SN65MLVD040) 缓冲门和驱动器(SN74LS07,SN74ABT126) 我真的没有任何这些经验,对可用的东西数量有点不知所措!因此,任何人都可以帮助我了解这些设备之间的区别,以及哪种/哪种情况下不适合。有没有达到我所描述的最佳/标准方法? 编辑: 由于我最多可以切换到x30左右的输出,因此我完全不需要担心微控制器的加载,因此不会考虑直接连接到DIO引脚。因此,我认为我会选择逻辑缓冲器IC。我将尝试对每个输入使用SN74LVC1G125 “ 具有三态输出的单总线缓冲门 ”,并查看其工作原理。

3
该CD4013应用程序应该如何工作?
我正在尝试对我拥有的合成器(来自Roland的80年代早期的合成器RS-09)中的问题进行故障排除。我刚刚开始学习逻辑,并对发生的事情感到困惑。在该合成器中,4013用作分频器,用于根据用户是否已通过开关选择了一个称为“ Octave down”的功能,对来自主振荡器的触发信号进行分频或不分频。4013的输出Q然后传递到“最高八度音程发生器”,该发生器使用它生成12个色度音阶,然后从中产生所有其他音阶。目前,它仅在“八度向下”模式下工作;如果未选择“向下八度音调”,则所有按键都会产生噪音。这是原理图这部分的特写。标有“ 10”的垂直线连接到交换机, 设置4013,以使“高”电压为0V,“低”电压为-10V(向下箭头为-10V电源)。当选择了“ Octave down”并且应该对4013进行分频时,开关将施加-10V,该电压通过15kohm电阻向SET(引脚8)发送比-10V稍小的电压;如果未选择“ Octave down”,则该路径将连接0V。在八度下降模式下,-10V也能够通过二极管D206到达RESET(引脚10)(从二极管压降减去0.6-0.7V),并且复位并保持在低电平状态,触发器处于时钟模式,响应来自主振荡器的触发信号。这似乎工作得很好。将Q /照原样连接到D时,触发器也进行“二进制除法”,并且Q以触发频率的1/2输出方波。 我的问题是,当不选择“八度向下”时,我不知道会发生什么。我不知道它可能如何工作,也没有。这就是我的理解,但一定有问题: SET处的〜0V使其保持高电平,但无法通过D206进入RESET,而使复位保持打开状态,以便从振荡器接收其“指令”(直接模式)。触发振荡器开始在+5至-10V之间振荡,但二极管将其钳位在0V以切断正向部分,然后将其发送至RESET [编辑:这不是实际发生的情况-请参见下面的示波器图像]。但是,当Set保持高电平时,Q的唯一可能结果是当振荡器处于低点时发送高电平至-10V复位,当Q为高电平且Q /为0时,以及这两者的“禁止状态”当振荡器处于高点时,置位和复位为高电平,导致Q和Q /都为高电平。因此,Q只是发出恒定的“高电压”(在这种情况下为0V),并带有一点噪声。那就是我所期望的以及我所看到的。我的仪表和示波器测量结果证实了这是事实。 这应该如何工作?在我对它应该如何工作的解释以及电路的实际工作方式上,都有明显的错误,但是我已经看了很多遍了,但仍然无法弄清楚。 非常感激您的帮忙! 编辑:我要添加这些示波器的快照,以显示在不起作用的设置(更高的八度)中不同的输入和输出。我离开了中心为0V的垂直位置以显示其相对位置。我的电压为0.5V / div。我很惊讶地看到Reset处的波形有多大的负值,幅值有多小。这与我之前观察到的情况有些不同,而且显然是“不正确的”。 主振荡器的输出(到达时钟的位置)也不是一个美观的触发波形,我的理解是4013需要一个良好的触发,但是它似乎在时钟模式下工作,所以也许这不是问题。

9
了解移位寄存器的时序
(我正在学习数字电路设计。如果这是一个天真的问题,请原谅。) 在Wikipedia上,我找到了有关SIPO移位寄存器的下图: 据我了解,该移位寄存器由DFF(D触发器)组成。DFF在时钟周期的上升沿触发。因此,对于Clock信号的每个上升沿,来自的数据Data In将通过DFF的一级传播。 我的问题是,由于ClockDFF由所有DFF共享,因此当上升沿到来时,所有4个DFF必须处于触发/透明状态。那么,如何确保数据通过only 1DFF阶段而不是2个或更多阶段传播呢? 比方说: Td 是1个DFF阶段将数据从D加载到Q的内部延迟。 Tr是时钟上升沿的持续时间。见下图。 我认为将传播限制在1个阶段,它必须是: Td < Tr < Td*2 我对么? 但是在上面的链接中,它说: 在这种配置中,每个触发器都是边沿触发的。初始触发器以给定的时钟频率工作。每个随后的触发器 将其前任的频率减半,从而使其占空比加倍 。结果,上升沿/下降沿触发每个后续触发器所需的时间是原来的两倍。这会在时域内错开串行输入,从而导致并行输出。 这使我对一些事情感到困惑。 什么halves the frequency意思 DFF如何用频率来表征? DFF是否仅在时钟的上升沿工作,并且通常不在乎时钟处于什么频率? 频率如何与占空比相关?频率与周期相关,而占空比仅表示信号或系统处于活动状态的一个周期的百分比。我认为频率和占空比之间没有关系。 加1 正如Neil_UK在下面的答复中所说,以上Wiki引用是完全错误的。而且他已经修复了Wiki页面。 正如EM Fields在下面的回复中所说, ...直到时钟的下一个上升沿都不会发生任何事情,因为完成工作的时钟沿已经死了... 严格来说,没有理想的垂直上升沿。Tr如上图所示,应该有一些。我想限制信号通过DFF级的传播,上升沿必须持续足够长的时间,以使信号通过一级传播,而必须足够短的时间,以使信号不传播至下一级。 我只是认为这种控制过于棘手/微妙,无法实现。但是,如果这是真的,它是如何实现的?(我只是悬赏这个问题。)


5
触发器的比赛条件是什么?
我已经阅读了两本教科书,并咨询了老师,但似乎没有什么可以澄清我的疑问。 我教过的两个种族的版本是- 当SR触发器的S和R输入为逻辑1时,输出将变得不稳定,这被称为竞争条件。 当SR触发器的S和R输入为逻辑1,然后将输入更改为任何其他条件时,输出将变得不可预测,这称为竞争条件。 哪一个是对的?或者,他们俩都错了,如果真是错,种族到底是什么?

1
使用RTL逻辑时,2N3904基极电阻值的理想电阻是多少?
我有大量2N3904晶体管,并希望将它们用于我的RTL逻辑项目。根据我在网上可以找到的内容以及所拥有的部分,我已经获得了逻辑门,可以很好地与以下值配合使用: 模拟此电路 –使用CircuitLab创建的原理图 尽管这可以正常工作,但我有点担心我在2N3904的数据表上所读的内容。它指出基极-发射极饱和电压具有以下规格: Ic = 10mA Ib = 1.0mA Ic = 50mA Ib = 5.0mA 我很难理解这到底意味着什么。如果使用欧姆定律计算基本输入的电流,则得出I = 5/10000 = 0.0005。我是5mA吗?我用5K电阻代替了R2,它的开关相同,为0.001或10mA。 就像我说的那样,它目前正在起作用。我只想确保购买适合该工作的电阻器。我知道目标是使晶体管完全饱和,但是我不知道这是怎么做到的。 谢谢,

1
西蒙说没有微控制器
我想创建一个经典的游戏《 Simon Says》,它只使用逻辑电路,LED和IC,没有像Arduino这样的微控制器。 我想为此电路使用4个LED和4个触觉开关。 我这样做是为了给自己做一个教育性练习,不是在学习电子学,而是在学习计算机科学。 我知道我将需要几个组件,包括十进制计数器和555计时器。 但是我的问题是,我如何能够决定随机显示哪些LED?我知道我可以使用十进制计数器/触发器将序列存储在内存中。

3
FPGA逻辑门数
我找到了自己喜欢的FPGA板。它使用Xilinx Spartan 6 LX45。当我查看Spartan 6系列的数据表时,它只说有43661个逻辑单元。这等于多少门?还是其他,我如何从逻辑单元的数量中找出总门数?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.