电气工程

电子和电气工程专业人士,学生和爱好者的问答

5
晶体管基础
一段时间以来一直困扰着我。当我看一个涉及比RLC组件更复杂的电路(也许还有运放)时,除非我已经看过它的配置,否则我很难弄清楚它在做什么。 相比之下,我非常有信心,无论我给的RLC电路多么复杂,我最终都能弄清楚。 现在,当我分析RLC电路时,我的工具基本上是 V= 我[RV=IRV = IR 一世= CdvdŤI=CdvdtI = C \frac{dv}{dt} V= L d一世dŤV=LdidtV = L\frac{di}{dt} 这些组件的并联和串联组合(我想这与基尔霍夫定律并没有真正分开,但是...) 基尔霍夫定律 所以我要问的是,我缺少用于分析更复杂电路的工具吗?我主要想知道如何分析涉及BJT和FET的电路。晶体管的工作方式似乎太多了,很难使它们保持直通状态。有人知道一个介绍所有内容的好网站吗? 谢谢 编辑我还想提一提,实际上,温度变化时会有。我暂时不关心这一点,我同意stevenvh所需要的仿真,但是我希望能够充分了解这些概念,以设计电路,然后再进行仿真等调整。V≠ 我[RV≠IRV \neq IR

3
如何制作干净的放大麦克风模数转换?
在过去的几天里,我已经问了几个与此项目有关的问题,但我似乎无法将所有内容放在一起。 我将驻极体麦克风连接到运算放大器,然后将输出提供给arduino微控制器。微控制器上的ADC将0到5 vV的范围转换为10位数字(0到1023)。 我尝试了3种不同的放大器芯片: LM386-我得到的反馈是,此芯片不适用于此目的,因为它没有运算放大器,并且无法按预期正常工作。 LM358-工程 UA741-比LM358更好地工作,放大 我完全按照该原理图进行操作(除了我为了获得良好的增益而弄乱了电阻值):R5使用50k欧姆,R2使用10欧姆。 问题在于后两个芯片的输出不是“干净的”。即使我在麦克风中没有发出噪音,Arduino上的AnalogRead()始终读取非零值。当我发出噪音时,读数反应正常,但“零”值不为零。有时,“零”值甚至会一直闪烁,从而导致读数不时脱落。希望这是有道理的。 你能帮我解决这个问题吗? 同样重要的是,额外的信息:最终,我正在尝试制作类似这样的东西。

5
什么是µMAX IC封装?
在从Maxim订购免费样品时,我经常看到组件封装为µMAX。 什么是µMAX?谷歌搜索时,我得到的只是一些Maxim组件。如果我看Google图片,会得到各种各样的SMD和DIP封装图片,彼此之间没有相似之处。 在任何地方都有完整的组件包列表(跨提供商)吗?

2
开关电源是否具有电隔离功能?
我已经仔细阅读了Wikipedia的文章,但没有得到一件重要的事情- 这样的供应中是否存在电流隔离? 该文章中的图如下所示: 我在这里看到的是,变压器仅在一条路径上,并且有一条“输出->斩波控制器”路径绕过了变压器。通常,变压器是执行电流分离的单元。 这是否意味着开关电源在输入和输出之间没有电隔离?电源中有无限制的电流流过吗?

2
防止高端BJT饱和
我正在使用BJT构建高速的(在BC847级晶体管上为10-20ns)数字“缓冲” /“反相器”。方案附后。 虽然我可以通过添加肖特基二极管来防止低端BJT饱和,但它不适用于高端。除了降低基极电阻的电阻,还有其他提示吗?
12 bjt  saturation 

2
MicroSd卡上如何容纳这么多存储单元?
我只是想知道,当我看到新的MicroSd存储卡时,32GB到底能容纳多少空间? 简单的数学: 大约是(我估计,大部分都是控制器),它包含32GB的单元。所以5∗10 − 512cm212cm2\frac{1}{2}cm^2空间可容纳一个单元。由于原子在面积约10-12米2时,为什么存储单元比原子小?5∗10−52(5+30)=1.45∗10−15m25∗10−52(5+30)=1.45∗10−15m2\frac{5*10^{-5}}{2^{(5+30)}} = 1.45*10^{-15} m^210−12m210−12m210^{-12} m^2 这是一张microSD卡的图像:
12 microsd 

4
如何为简单的LED电路计算电阻值?
我有一个简单的电路: LED的最大额定电流为30mA。 如何计算电阻器的电阻值?通过使用欧姆定律,我发现它是。但是,使用称为Yenka的软件以及反复试验,我得到的最小电阻为36Ω。但是,如果使用35Ω电阻,则LED会破裂。软件是否错误,或者(更有可能)我做错了什么?3V/0.03A=100Ω3V/0.03A=100Ω3V/0.03A = 100 \Omega
12 led  resistance 

7
走线分离式电源平面
互联网上的大多数资源都讨论了在分离的电源板上路由信号以及如何正确执行此操作。此处的主要解决方案是创建短返回电流路径。 我想知道在分离的电源平面(而非接地平面)上路由信号是否会对信号完整性产生明显影响,是否应该采取措施。 我的情况: 4层PCB: 顶层:信号 内部平面:分开的地面(模拟/数字) 内部平面:分开的电源平面(在这种情况下,需要使用3.3V数字和3.3V模拟) 底层:信号 我正在从数字部分到模拟部分的最底层路由一些时钟信号。信号将穿过数字部分和模拟部分之间的电源平面(间隙为0.5mm宽)。我将在接地层(数字和模拟之间的桥)上提供可靠的电流返回路径,因此返回电流不成问题。 时钟信号刚好高于12MHz,走线宽为0.2mm,最大长度为13.4cm。走线用串联电阻端接。

4
什么时候无铅问题?
购买零件时,通常会在零件的旁边找到无铅或RoHS兼容版本。在什么情况下完全选择无铅或RoHS(或其他任何无铅名称)零件有什么关系?是什么促使我选择便宜的无铅零件上的无铅零件? 顺便说一句,对所有这些无铅业务的含义的解释对我来说很有趣。

7
6个LED与单个电阻并联以简化焊接
我正在尝试并行连接6个RGB LED,所有这些LED都由一个光源控制(嗯,三个光源,每种颜色一个)。LED随附有电阻器,以限制5v电源时的270 Ohm电流。 问题是6个LED x 3色= 18个电阻,这很多,这意味着我需要更大的电路板和更多的焊接。 因此,我可以用一个电阻保护所有六个LED彼此并联地连接LED吗?(总共3个电阻,每种颜色一个)。如何计算该电阻的值? 更多细节: LED由ULN2803A驱动以提供一点电流,该电流又由Netduino控制,该Netduino在三个通道上提供PWM信号。 这些是有问题的RGB LED。如果我正确理解了数据手册,他们想要20mA的电流,以及2、3、3伏的正向电压(分别用于R,G和B?)。所提供的电阻均为270欧姆,因此通道可能无法完全平衡。 为了获得更多的荣誉,我在驱动器芯片中只使用了3个晶体管,总共有8个。我可以将PWM从netduino连接到第二个三重晶体管,然后将LED分成两组,每组三个吗?值得付出努力吗? PS:我没有手头的制图工具,但如果可以帮助阐明我的问题,我可以提供一个图表(用油漆绘制)。(另请参阅此meta问题)

1
ARM在彩色LCD上高效显示简单文本/图形
当设计一种基于ARM的设备,该设备应在彩色LCD上显示简单的图形时,如何最好地进行设计以允许快速更新,最好不要与特定的ARM或LCD供应商绑定?我当前的项目使用的是黑白显示屏,该显示屏可以通过PIC上的SPI端口实现闪电般的驱动(在1/60秒内重新绘制复杂的显示屏)。似乎普通的彩色LCD显示器具有SPI端口,但是即使以纯色填充160x120的LCD也要花费30ms,而在320x240的最佳情况下要花费120ms(10MHz的移位时钟)。 如果可以腾出控制器引脚,并行模式可能会更好,但是我不知道任何独立于家庭的方式来连接并行接口,而无需为每个像素分配三个独立的存储指令(一个用于设置数据,一个将时钟输出设置为高电平,另一个将其时钟设置为低电平)。某些ARM芯片具有内存总线接口,但那些芯片通常想要执行多路复用地址和数据之类的操作,或者将大量引脚用于输出无关的地址位(LCD仅需要一个地址位)。 看看ILITEK的ILI9320或Renesas的HD66789,一种似乎很有趣的方法是使用CPLD将SPI转换为并行数据,并包括一种可每位输出像素的模式。查看瑞萨数据表,通过使所有并行端口数据位都跟踪串行数据引脚,并使用除像素以外的所有内容的串行模式,可能需要最少的硬件(无需CPLD)来按位写入像素写入,并使用比较/掩码功能,以便全零像素将是透明的,而全零像素将设置GRAM中的选定位,或者全零像素将是透明的,全零像素将清除选定的位。IKITEK数据表的“功能”部分表明它具有类似的功能,但寄存器映射不具有此功能。 假设代码将主要显示纯色文本和图形,则理想的方法似乎是使用CPLD将ARM的SPI端口连接到显示器的并行端口,并允许CPLD加载前景色/背景色。如果人们有一种写“透明”像素的方法,那就特别好。给定一种字体为两种颜色的位图,只需将字体数据直接加载到SPI端口即可。这样可以使字体数据以每两个ARM时钟一个像素的速率显示。另一方面,足以处理这样的显示控制任务的CPLD将花费约2美元。 如果目标是主要显示纯色文本或简单(例如16色或64色)图形,那么将ARM与彩色LCD相连的最佳方法是什么? 编辑 我已经完成了许多LCD显示器项目,包括许多类型的LCD,包括字符模式LCD,使用我自己的驱动方法基于定制的3:1多路复用段,具有内置控制器的黑白图形LCD以及黑白显示器。我设计了自己的基于CPLD的控制器以与微控制器的通用DMA(甚至提供四级灰度)接口的白色LCD。我以制作蓬乱的显示感到自豪。其中一个图形控制器有点像一条狗,即使写入恒定数据也需要大约1/10秒才能进行全屏刷新,但是我的大多数显示器甚至可以在1/50秒内渲染出相当复杂的图像。 我从事的许多项目都是电池供电的,因此电流消耗是一个问题。我基于DMA的显示控制器工作得很好,但是它是用于线路供电项目的。我相信从图形LCD获得合理电流的唯一方法是使用结合了显示缓冲区和列驱动器的控制器。每帧在芯片之间发送大量的显示内容会浪费很多能量,即使在每像素一位显示上也是如此。在每像素16位的彩色显示器上,情况会更糟。 我只是开始查看彩色LCD数据表。尽管我在基于通用设计的控制器上找到的所有数据表都被标记为“初步”,但许多显示器似乎都使用了与ILITEK ILI9320类似的控制器。有些人喜欢ILITEK,有人声称它具有屏蔽和透明功能,但没有列出它们的任何寄存器。我不知道真正的芯片是否具有这样的功能,但是“初步”数据表中却忽略了这些功能,或者它们是否省略了这些功能却忘记了提及它们。如果实际上所有这些芯片都具有透明度功能,那么为它们设计似乎是合理的;如果不是,则不会。 我希望对于大多数项目而言,典型的屏幕将由任意放置的文本以及适量的任意大小的纯色字体组成。字体很可能会存储为每像素数据。使用Cortex-M3,如果我想用并行数据编写显示,则代码的“内部循环”中要写入两个像素可能会导致如下结果: rol r0,r0,#2; 在C中获得一位,在N中获得另一位 itcs strhcs r1,[r3,#DATA_OFS]; 写数据 strhcc r2,[r3,#DATA_OFS]; 写数据 strb r4,[r3,#CLOCK_SET_OFS]; 将时钟设为高 strb r4,[r3,#CLOCK_CLR_OFS]; 将时钟设为低 Itmi strhmi r1,[r3,#DATA_OFS]; 写数据 strhpl r2,[r3,#DATA_OFS]; 写数据 strb r4,[r3,#CLOCK_SET_OFS]; 将时钟设为高 strb r4,[r3,#CLOCK_CLR_OFS]; 将时钟设为低 并非世界上最快的东西。消除对设置/清除时钟指令的写入将有所帮助。我的猜测是,没有消除所有时钟写操作的与体系结构无关的好方法,但是可能有一种非常普遍的方法可以消除一个时钟写操作(例如,许多芯片可能具有可以使输出脉冲的计数器/ PWM)简要响应单个内存存储操作)。 使用SPI端口并添加硬件以每位时钟1个像素将大大加快显示访问速度。如果使用不带遮罩和透明性的显示器,则CPLD将必须包括一个地址计数器,并且对于每个像素,时钟一个像素数据字或一个用于下一个像素位置的set-address命令(为此需要一个计数器) )。相比之下,如果显示器具有遮罩和透明性,我所要做的就是让CPLD支持一种模式,在该模式中,当它以16位时钟输出之后,每增加一位将用一个时钟将数据字输出到显示器。 LSB跟踪SDI引脚(可能甚至不需要使用CPLD,仅使用一些普通逻辑芯片即可)。我将透明色设置为我要写的颜色,但LSB翻转了。 我不想提出依赖于遮罩和透明度的精美设计,然后发现仅有的具有此类功能的显示器的交货时间为30周。另一方面,如果这样的显示器易于被许多供应商使用并保持广泛使用,我不想让对可用性的偏执驱使我使用劣质的设计。
12 arm  lcd 

6
在RTOS中替换队列
为了进行任务间通信或在RTOS的两个任务之间共享数据,我们使用队列。但是队列的问题是它们的速度很慢。...他们先将数据复制到Buffer中,然后再进行Mutex处理,然后再进行数据传输。如果必须传输大数据,这会很烦人。另一个问题是,如果多个任务访问同一队列。然后图片变成这样:-首先等待访问Queue,然后对内部Mutex处理队列,然后进行数据传输。 这增加了系统的开销。什么是队列的有效替代品? (我想这个问题是我们使用的RTOS的独立性。大多数RTOS仅以这种方式处理队列)
12 rtos 

8
Arduino有装配体吗?
自从我涉足微处理业务以来,由于可用资源众多,我决定选择Atmel AVR。而且Arduino似乎也有很多,更不用说他们的入门套件似乎更“像我一样” 问题是我想先在Assembly中学习它,然后去C / C ++或带Arduino的用途,但是我听说Arduino不接受AVR组装?这是真的?他们有什么办法吗? 谢谢 编辑:我会去与ATMEL STK500,但是..第一次看它看起来很复杂吗?有什么原因使我不能仅仅获得8位AVR并将其放在试验板上并以这种方式进行试验?(我想我必须弄清楚如何将它们作为接口...) edit2:这就是我的想法 http://www.adafruit.com/index.php?main_page=product_info&cPath=17&products_id=193
12 arduino  avr  assembly 

3
如何给平滑电容器放电?
我有一个简单的12V 10 A电源,仅带一个变压器和一个整流器。经过一些研究和仿真之后,我并联了3个10 mF电容器来平滑输出。 我的问题是关闭电源后,电容器会保持充电一段时间。在关闭电源5分钟后,即使将输出短路,我也会得到小火花。现在,我只有一个LED连接到电容器,并且在断电后需要十多分钟才能完全关闭,并且当电容器关闭时,电容器仍然没有完全放电。 解决该问题的最明显方法是在手动关闭电源后在输出上放置一个电阻器和一个开关,然后将电阻器连接到电容器,但是我希望能获得一些更智能,更安全的东西。 另一点是,我要使用电源的原始外壳,因为添加了电容器后,该外壳的可用空间很小,因此仅放置一个11 W陶瓷电阻器可能会出现问题,因为它周围的可用空间很小。安全冷却。


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.