Questions tagged «usb»

USB是通用串行总线。如果您的问题与特定芯片有关,请在问题中提及它。

3
USB Type C如何处理反极性
新的USB C型连接器不再具有物理反极性保护。您可以以任意方式将其插入两端,也不再有A和B端,都一样。 那么,这种新的USB类型如何处理极性最终不会颠倒的呢?设备是否必须在硬件上达成共识并适当地路由连接? 还是在连接器中发生某种布线魔术,而设备无需处理任何事情,并且可以确保极性始终正确?

2
USB和RS232有什么区别?
谁能告诉我为什么人们使用USB或RS232。它们都是串行端口,对吗?而且我知道USB的速度要快得多(尤其是USB3.0),但是如果人们也愿意的话,我敢肯定他们可以成为RS232的后继产品。 那么,两者的优缺点是什么?
29 usb  serial  rs232 

11
我想学习如何制作自己的USB小工具
我一直在为其他人编写Linux字符设备驱动程序。我想找到一个新的爱好,而制作自己的USB gizmos的想法似乎真的很整洁。 我很高兴能够控制某些LED,伺服和步进电机。我真的很喜欢独自学习新事物,当事物最终起作用时,我会很兴奋。我没有做过认真的MC编程,但是知道我的方法。 谁能推荐一些对一个完整的菜鸟有用的工具包?理想情况下,它们是: Linux友好 能够进行国际运输(我目前居住在亚洲) 提供面包板套件 如果您有时间和爱好,那么非常感谢您链接到其他人的站点上包含原理图和零件清单的项目的链接。我想从例子中学习,但是要有很好的例子,这就是为什么我在这里问。 我最终的目标是创建自己的数据收集器-从降雨到平均分贝再到光照水平的一切。抱歉,如果以前有人问过,我确实进行了搜索(并搜索了标签)。



2
PCB上的无连接器USB
我想制作一个可以直接插入计算机USB端口的电路板,而不是使用单独的“ USB-A”公连接器。我已经看到该系统用于很小的USB存储钥匙,例如这个。我如何布置带有这种“连接器”的PCB? 我正在使用Eagle。有人有图书馆吗?有人可以建议另一种方法吗?
27 pcb  usb  connector  eagle 


8
USB充电和“智能”充电端口(例如Anker的PowerIQ)如何工作?
具有对EE的业余爱好的软件工程师。 最近,我注意到USB电池组生产商声称其端口“很聪明”并“识别设备”以“为设备提供最大电流”。粗略地看这件事似乎意味着这不是完全的营销语言,实际上正在发生一些更复杂的事情。 我不了解锂离子电池的微妙化学性质或充电控制器的性质,我猜想对电池尽快充电,会消耗尽可能多的电流,仅将其限制为电池规格。事实并非如此,因为据记载,在某些情况下,设备肯定会将其充电量限制在1A以内。为什么是这样? 如果如此控制电流消耗,那么这些智能端口又将如何运作以使设备吸收更多电流?他们在Anker电池的产品页面上声称其端口可以识别设备并“说出其独特的充电语言”(这种措辞让我感到恶心)。也许我不应该对这样的措辞如此苛刻-USB数据线实际上是用来协商某种充电方式的吗? 谢谢!

4
USB屏蔽。接地还是不接地?
我得到了一个正在工作的设备来进行一些测试。基本上,一个集成电路已经过时了,因此我需要测试一个替换零件。重做ESD检查后,设备出现故障。 我检查了设备的历史,之前通过ESD时遇到了问题。测试设备有一条记录,说明该设备完全是金属的(不锈钢外壳),只需要通过4kV的接触放电即可(我在英国)。显然,它几次失败,直到在USB屏蔽层和地面之间添加了一个电容器/电阻器,并且引入了一个小的金属接线片,以增加PCB地面与金属外壳之间的接触。然后,这显然允许它通过。 继续前进5年,我正在重做测试。每次我以+ 4kV进行接触放电测试时,该设备都会丢失其内存(这是一个数据记录设备),并且需要恢复出厂设置并重新开始记录才能再次工作。我使用以前的IC重新检查了一些旧的,发现这也失败了。看来这是一个间歇性问题(某些设备在10个测试中通过了3个,其他设备在10个测试中都没有通过,等等),所以在我看来,之前通过ESD测试很可能是a幸。 我尝试了很多事情,我将额外的电容器与将USB屏蔽层接地的电流并联(不同的值,高/低),将电阻器更改为不同的值(较高/较低的电阻),并尝试了铁氧体磁珠。并联,用铁氧体磁珠代替电阻/电容器,正如我在某些地方所建议的那样,但还是失败了。我要让它通过的唯一方法是直接将USB屏蔽层接地。 在网上看,我似乎找不到任何地方明确说明您是否应该将USB屏蔽接地。这个讨论这里有不同的看法,这这里也有它的讨论。该链接提到屏蔽层仅应在主机上接地,而没有设备应将屏蔽层接地。... 该文档说屏蔽层应连接到机箱。然而,在图12中,似乎表明USB屏蔽层应连接到GND平面。 对此似乎有很多不同的看法,所以我不确定下一步该怎么做。屏蔽层接地可以使其通过ESD,但这是否应该做?还是应该继续寻找更好的解决方案?如果是这样,什么是好的解决方案。 更多信息: PCB非常不规则,并且空间狭窄,使得USB连接器附近的接地层很小。 我不允许对此进行任何机械设计的更改。我只是想找到一种易于实施的解决方案,不需要重新设计PCB或产品,因此提出的建议毫无意义。 这是一个工作设备,因此不允许显示原理图,因此请不要提出。USB输入电路基于以下设计: 共模扼流圈,铁氧体和TVS二极管保护已经在设计中。 我不是原始设计工程师。他们不再为公司工作,所以我找不到他们做出设计选择的理由 设备是USB 2.0 单元在-4kV处通过测试,仅在+ 4kV处通过失败 更多信息 注释中所需的更多信息将在此处添加。 安迪(aka):我可以向您展示很多: 我能显示的实际PCB就是: 您会看到接地平面在USB插座旁边停了下来。大孔是USB屏蔽的凸耳与PCB机械连接的地方。R1然后将屏蔽层连接到GND,而电容器C3在另一连接上也进行同样的操作。屏蔽层通过100k res / 100nF电容接地。PCB上装有一个金属卡舌,该卡舌位于金属机箱上。根据旧的ESD报告,这是必需的,否则设备将发生故障。据我所知,除了该示例电路之外,这些都是唯一可以防止ESD的东西。 针对评论中的问题: 在USB屏蔽层上进行接触放电ESD测试时会发生故障(其他所有方面都很好,只是USB屏蔽层发生了故障) 在设备正在记录时进行测试。它没有通过USB连接到任何设备。 我尝试了0R链接到GND而不是电阻器/电容器解决方案,但这仍然失败。当我直接从USB屏蔽线到机箱(连接到PCB GND)添加电线链接时,此问题已解决。我相信这是因为PCB设计。USB侧附近的接地层很小(约12mm x 15mm)。但是底盘很大。这是我无法改变的。 机箱到PCB的GND选项卡的位置在子PCB上,该选项卡的走线距离为30th。(是的,我知道这听起来很奇怪,但是空间限制太荒谬了,这不是我的设计!)
25 usb  esd 

8
为什么USB连接器只适合一种方式?
为什么USB插头只能以一种方式插入USB端口? 请原谅我的无知,但插头有几种类型,它们是“全向的”,不必以某种方式定向即可插入相应的插头(根据形状)。对于USB,当您尝试将其盲插时,如果碰巧将其倒置,可能会有些烦人。 我猜想这与引脚排列有关,但是为什么当插入某些东西或使用功能对称的引脚排列时,USB标准为什么不只是协商“引脚1”呢?
24 usb  connector 

6
串行协议定界/同步技术
由于异步串行通信甚至在当今的电子设备中也很普遍,我相信我们许多人会不时遇到这样的问题。考虑与串行线(RS-232或类似产品)连接并且需要连续交换信息的电子设备D和计算机。即每个发送一个命令帧,并每个发送一个状态报告/遥测帧答复(报告可以作为对请求的响应发送,也可以独立发送-在这里并不重要)。通信帧可以包含任何任意二进制数据。假设通信帧是固定长度的分组。PCPCX msDY ms 问题: 由于协议是连续的,因此接收方可能会失去同步,或者只是在进行中的发送帧中间“加入”,因此它只是不知道帧起始位置(SOF)在哪里。根据数据相对于SOF的位置,数据具有不同的含义,接收到的数据可能会永久损坏。 所需的解决方案 可靠的定界/同步方案可在恢复时间短的情况下检测SOF(即重新同步所需的时间不超过1帧)。 我了解(并使用了一些)的现有技术: 1)标头/校验和 -SOF作为预定义的字节值。帧末的校验和。 优点:简单。 缺点:不可靠。恢复时间未知。 2)字节填充: 优点:可靠,快速恢复,可与任何硬件一起使用 缺点:不适用于固定大小的基于帧的通信 3)第9位标记 -在每个字节之前附加一个位,而SOF标记为1和数据字节标记为0: 优点:可靠,快速恢复 缺点:需要硬件支持。大多数PC硬件和软件未直接支持。 4)第8位标记 -上面的一种模拟,同时使用第8位而不是第9位,每个数据字仅保留7位。 优点:可靠,快速的恢复,可与任何硬件一起使用。 缺点:需要从/到常规8位表示到/从7位表示的编码/解码方案。有点浪费。 5)基于超时 -假定SOF为某个已定义的空闲时间之后的第一个字节。 优点:无数据开销,简单。 缺点:不太可靠。在较差的计时系统(如Windows PC)上无法很好地工作。潜在的吞吐量开销。 问题: 还有哪些其他可能的技术/解决方案可以解决该问题?您能否指出上面列出的缺点,可以轻松解决这些缺点,从而消除它们?您(或您将)如何设计系统协议?
24 serial  communication  protocol  brushless-dc-motor  hall-effect  hdd  scr  flipflop  state-machines  pic  c  uart  gps  arduino  gsm  microcontroller  can  resonance  memory  microprocessor  verilog  modelsim  transistors  relay  voltage-regulator  switch-mode-power-supply  resistance  bluetooth  emc  fcc  microcontroller  atmel  flash  microcontroller  pic  c  stm32  interrupts  freertos  oscilloscope  arduino  esp8266  pcb-assembly  microcontroller  uart  level  arduino  transistors  amplifier  audio  transistors  diodes  spice  ltspice  schmitt-trigger  voltage  digital-logic  microprocessor  clock-speed  overclocking  filter  passive-networks  arduino  mosfet  control  12v  switching  temperature  light  luminous-flux  photometry  circuit-analysis  integrated-circuit  memory  pwm  simulation  behavioral-source  usb  serial  rs232  converter  diy  energia  diodes  7segmentdisplay  keypad  pcb-design  schematics  fuses  fuse-holders  radio  transmitter  power-supply  voltage  multimeter  tools  control  servo  avr  adc  uc3  identification  wire  port  not-gate  dc-motor  microcontroller  c  spi  voltage-regulator  microcontroller  sensor  c  i2c  conversion  microcontroller  low-battery  arduino  resistors  voltage-divider  lipo  pic  microchip  gpio  remappable-pins  peripheral-pin-select  soldering  flux  cleaning  sampling  filter  noise  computers  interference  power-supply  switch-mode-power-supply  efficiency  lm78xx 

2
如何使Fairchild FSA9280 / FSA9480 / FSA880 BOOT引脚触发?(三星Galaxy S)
这有点远,但我希望有人可以访问标题中列出的芯片之一的完整数据表,并且可以告诉我,ID_CON上的VBUS_IN和电阻器的哪种组合将使其触发BOOT引脚在芯片上。不幸的是,飞兆半导体不会发布这些芯片的完整数据表(我已问过),并且网上只有一个缩写版本(PDF链接)。 长话短说:某些三星手机使用FSA9480芯片,通过USB端口ID引脚上的感应电阻来检测各种配件。通过从手机的Android内核来源获得的信息,我们已经取得了很大的进步。现在,我们试图强制手机的CPU进入启动恢复模式,这将使其从串行端口加载外部启动加载程序,并且看起来FSA9480的BOOT引脚可能会执行此操作,但是我们无法确定该如何做触发它。 到目前为止,我已经尝试了已知列表中的所有电阻器,而没有将电源连接到USB端口,并且所有电阻器值在USB端口通电时再次产生了串行输出。 更新:我们正在研究一种理论,即服务手册中的示意图显示了从FSA9480 BOOT引脚到信号BOOT_MODE的信号,在任何理智的世界中,该信号都将成为应用处理器芯片的OM5引脚。但是,我们没有完整的原理图来证明这一点,也没有FSA9480的内部细节来显示如何触发该引脚。您会认为这是名称上带有BOOT_ON的电阻器(例如RID_FM_BOOT_ON_UART),但显然不是。也许是这样,但是BOOT_MODE信号没有到达正确的位置。无论哪种方式,FSAx80数据表都会对其进行确认。 我对应用程序处理器(Samsung S5PC110)内部ROM中的启动和引导加载程序下载代码进行了反向工程,得出的结论是,如果成功,我们应该在串行端口上看到引导加载程序下载协议的第一个字节。取而代之的是,我们得到的是从NAND加载的主引导加载程序的输出,表示正常引导。

2
USB C端口如何为笔记本电脑充电?
我听说过诸如新型Chromebook之类的笔记本电脑,它们是通过连接到USB-C端口的壁式充电器充电的。我很高兴这将使笔记本电脑充电器标准化,但我对此尚不清楚。 现有的USB端口可提供5伏特电源,但笔记本电脑充电器可提供20伏特电源。是否有某种更高电压的线路,或者USB-C供电的笔记本电脑以更低的电压运行? 我所看到的所有这些信息都提供了一个相当模糊的想法,即提供更多的功率,提供高达100瓦而不是10瓦的功率。即便如此,我的笔记本电脑也不是功能最强大的机器,并且充电器的输出功率仍然接近100瓦,我可以想象,为功率超过100瓦的笔记本电脑提供更多的充电器。通用USB-C充电器可以为所有这些机器供电吗?
23 power  usb  charging  laptop 

2
适应USB电流消耗限制的解决方案?
简介:我正在建立一个USB供电的锂离子充电电路,当然想在可能的情况下汲取最大充电电流-但同时也要确保在电流汲取时不违反USB规范。虽然我已经能够分别满足USB条件中的一/二,但我在思考一种智能方式满足所有条件时遇到了一些麻烦。这是发生了什么... 与我的特定情况相关的四个USB规范规则(三个关于最大电流消耗,一个关于浪涌电流限制)如下:(注意:我在此图中显示了不同的时间段:) 好消息是... 我碰巧使用的是FTDI USB-UART IC,即FT232R(数据表),它负责枚举并具有指示枚举状态和挂起状态的输出,这对于设置何时绘制多少电流水平非常有用。 同样有用的是,我使用的是锂离子充电器IC,MCP73871(数据手册),它具有ChargeEnable引脚,以及Prog2引脚和Prog1引脚,它们可以设置充电电流限制。 这些对以上两个IC有用的引脚的功能在下面我的(粗略)尝试布局中进行了总结。尚未完成,如某些连接处的问号所示: 我的布局 电流消耗规格 最后,这是这两种IC的电流消耗规范。当然,这些电流消耗也必须计入USB电源的0.5 / 100/500 mA电流消耗限制中: 问题:似乎有一种解决方案可以调整我的布局,以便一次满足所有四个规则/条件,但我没有看到它;有任何想法吗? 如您在前面的布局中所见,我为软启动问题设置了一个未连接的电路(MOSFET上的RC组合)。而且我在PROG1引脚上有极限设置电阻,它可以用作分压器的一部分,以部分解决500mA vs 100mA vs 0.5mA问题(部分基于本应用笔记中 FTDI的策略)。但这是我所能达到的。

3
通过D-SUB连接器通过USB 3.0连接
我需要将USB电缆穿过真空室壁,为此我们仅提供D-SUB直通法兰。因此,我将USB电缆切成两半,然后将D-SUB连接器焊接到每一半。对于USB 2.0连接,此方法没有任何问题,但在使USB 3.0连接正常工作时遇到了麻烦。 具体地说,插入电缆时,计算机每隔几秒钟就会重复发出连接/断开声音。唯一的解决方法是将连接器缓慢推入,直到设备被识别为止,这实际上是在强制USB 2.0连接。 我认为这是由于屏蔽不足导致无法获得USB 3.0链接吗? 各个连接似乎很好,每个连接的电阻都小于3Ω,并且没有短路。下图显示了如何通过连接器布设电缆: 如图所示,屏蔽层连接到连接器的外壳,以将两侧的屏蔽层连接在一起。我试图将被破坏的屏蔽层的数量保持在较低水平,将任一侧的3cm处都移开了。 导致此故障的最可能原因是什么,以及在将来可能的情况下如何避免该故障?
21 usb  soldering  cables 

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.